[Skiboot] [PATCH Skiboot v1.2 0/3] Support for Self Save API in OPAL

Pratik Rajesh Sampat psampat at linux.ibm.com
Thu Oct 10 23:09:57 AEDT 2019


Currently the stop-api supports a mechanism called as self-restore
which allows us to restore the values of certain SPRs on wakeup from a
deep-stop state to a desired value. To use this, the Kernel makes an
OPAL call passing the PIR of the CPU, the SPR number and the value to
which the SPR should be restored when that CPU wakes up from a deep
stop state.

Recently, a new feature, named self-save has been enabled in the
stop-api, which is an alternative mechanism to do the same, except
that self-save will save the current content of the SPR before
entering a deep stop state and also restore the content back on
waking up from a deep stop state.

This patch series aims to add support for the Self saving of registers
and advertises the support for self save and restore along with the list
of SPRs it supports to the device tree.

Patch1:
Commit adds support calling into the self save firmware API.

Patch2:
Commit adds wrappers for the Self Save API for which an OPAL call can be
made.

Patch3:
Commit adds device tree attributes to advertise self save and self
restore functionality along with the register set as a bitmask currently
supported in the firmware


Pratik Rajesh Sampat (2):
  Self save API integration
  Advertise the self-save and self-restore attributes in the device tree

Prem Shanker Jha (1):
  Self Save: Fixed bugs pertaining to SPR self save.

 hw/slw.c                                 | 160 +++++++++++++++++++++++
 include/opal-api.h                       |   3 +-
 include/p9_stop_api.H                    |  16 +++
 include/skiboot.h                        |   4 +
 libpore/p9_cpu_reg_restore_instruction.H |   1 +
 libpore/p9_stop_api.C                    |  74 +++++++----
 libpore/p9_stop_api.H                    |   2 -
 libpore/p9_stop_data_struct.H            |   4 +-
 libpore/p9_stop_util.H                   |   7 +-
 9 files changed, 239 insertions(+), 32 deletions(-)

-- 
2.21.0



More information about the Skiboot mailing list