diff options
author | Stewart Smith <stewart@linux.ibm.com> | 2019-05-31 16:13:25 +1000 |
---|---|---|
committer | Stewart Smith <stewart@linux.ibm.com> | 2019-06-03 10:20:00 +1000 |
commit | 9a3314d7bfdbf1e42112eb79d6c6b59e3089dd91 (patch) | |
tree | ecc51ecd3eb15543d2017f91c97d01fcb655ec25 | |
parent | e9bced00496e87d83527d29a2da370585c9f3af1 (diff) | |
download | skiboot-9a3314d7bfdbf1e42112eb79d6c6b59e3089dd91.zip skiboot-9a3314d7bfdbf1e42112eb79d6c6b59e3089dd91.tar.gz skiboot-9a3314d7bfdbf1e42112eb79d6c6b59e3089dd91.tar.bz2 |
doc: Add skeleton OPAL_PCI_RESET docs
Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
-rw-r--r-- | doc/opal-api/opal-pci-reset-49.rst | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/doc/opal-api/opal-pci-reset-49.rst b/doc/opal-api/opal-pci-reset-49.rst new file mode 100644 index 0000000..85acc0b --- /dev/null +++ b/doc/opal-api/opal-pci-reset-49.rst @@ -0,0 +1,42 @@ +.. _OPAL_PCI_RESET: + +OPAL_PCI_RESET +============== + +.. code-block:: c + + #define OPAL_PCI_RESET 49 + + enum OpalPciResetScope { + OPAL_RESET_PHB_COMPLETE = 1, + OPAL_RESET_PCI_LINK = 2, + OPAL_RESET_PHB_ERROR = 3, + OPAL_RESET_PCI_HOT = 4, + OPAL_RESET_PCI_FUNDAMENTAL = 5, + OPAL_RESET_PCI_IODA_TABLE = 6 + }; + + enum OpalPciResetState { + OPAL_DEASSERT_RESET = 0, + OPAL_ASSERT_RESET = 1 + }; + + int64_t opal_pci_reset(uint64_t id, uint8_t reset_scope, uint8_t assert_state); + +Kick off the requested PCI reset operation. This starts a state machine off to +perform the requested operation. This call will return how many milliseconds to +wait before calling back into :ref:`OPAL_PCI_POLL`. An OS can +call :ref:`OPAL_PCI_POLL` earlier, but it is unlikely any progress will have +been made. + + +Returns +------- + +:ref:`OPAL_PARAMETER` + Invalid ``id``, ``reset_scope``, or ``assert_state``. +:ref:`OPAL_UNSUPPORTED` + Operation is unsupported on ``id``. +value > 0 + How many ms to wait for the state machine to crank. + Call :ref:`OPAL_PCI_POLL` to crank the state machine further. |