aboutsummaryrefslogtreecommitdiff
path: root/doc/opal-api
diff options
context:
space:
mode:
authorRussell Currey <ruscur@russell.cc>2016-03-21 12:00:00 +1100
committerStewart Smith <stewart@linux.vnet.ibm.com>2016-03-31 16:41:17 +1100
commit9c2d82394fd2303847cac4a665dee62556ca528a (patch)
tree17a4ffa65df36cf94f71fe6c7c123b154d25dfd2 /doc/opal-api
parentce305fe301c5d1e15150f6a9c82cc7183536c68e (diff)
downloadskiboot-9c2d82394fd2303847cac4a665dee62556ca528a.zip
skiboot-9c2d82394fd2303847cac4a665dee62556ca528a.tar.gz
skiboot-9c2d82394fd2303847cac4a665dee62556ca528a.tar.bz2
xscom: Return OPAL_WRONG_STATE on XSCOM ops if CPU is asleep
xscom_read and xscom_write return OPAL_SUCCESS if they worked, and OPAL_HARDWARE if they didn't. This doesn't provide information about why the operation failed, such as if the CPU happens to be asleep. This is specifically useful in error scanning, so if every CPU is being scanned for errors, sleeping CPUs likely aren't the cause of failures. So, return OPAL_WRONG_STATE in xscom_read and xscom_write if the CPU is sleeping. Signed-off-by: Russell Currey <ruscur@russell.cc> Reviewed-by: Alistair Popple <alistair@popple.id.au> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'doc/opal-api')
-rw-r--r--doc/opal-api/opal-xscom-read-write-65-66.txt5
1 files changed, 5 insertions, 0 deletions
diff --git a/doc/opal-api/opal-xscom-read-write-65-66.txt b/doc/opal-api/opal-xscom-read-write-65-66.txt
index 92916df..4ed0134 100644
--- a/doc/opal-api/opal-xscom-read-write-65-66.txt
+++ b/doc/opal-api/opal-xscom-read-write-65-66.txt
@@ -10,3 +10,8 @@ each takes three parameters:
int xscom_read(uint32_t partid, uint64_t pcb_addr, uint64_t *val)
int xscom_write(uint32_t partid, uint64_t pcb_addr, uint64_t val)
+
+Returns:
+ OPAL_SUCCESS
+ OPAL_HARDWARE if operation failed
+ OPAL_WRONG_STATE if CPU is asleep