diff options
author | Nishanth Menon <nm@ti.com> | 2016-10-18 18:08:37 -0500 |
---|---|---|
committer | Tero Kristo <t-kristo@ti.com> | 2016-10-27 12:09:12 +0300 |
commit | 912cffb4ed8612dc99ee0251cc0c9785855162cd (patch) | |
tree | c5f53aad89c724f524285fbed59a835087237876 /drivers/firmware/ti_sci.h | |
parent | 9f72322050e4762adde66619f048b7317ad12d77 (diff) | |
download | op-kernel-dev-912cffb4ed8612dc99ee0251cc0c9785855162cd.zip op-kernel-dev-912cffb4ed8612dc99ee0251cc0c9785855162cd.tar.gz |
firmware: ti_sci: Add support for reboot core service
Since system controller now has control over SoC power management, it
needs to be explicitly requested to reboot the SoC. Add support for
it.
In some systems however, SoC needs to toggle a GPIO or send event to an
external entity (like a PMIC) for a system reboot to take place. To
facilitate that, we allow for a DT property to determine if the reboot
handler will be registered and further, the service is also made
available to other drivers (such as PMIC driver) to sequence the
additional operation and trigger the SoC reboot as the last step.
Tested-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Diffstat (limited to 'drivers/firmware/ti_sci.h')
-rw-r--r-- | drivers/firmware/ti_sci.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/firmware/ti_sci.h b/drivers/firmware/ti_sci.h index f69907c..9b611e9 100644 --- a/drivers/firmware/ti_sci.h +++ b/drivers/firmware/ti_sci.h @@ -46,6 +46,7 @@ #define TI_SCI_MSG_VERSION 0x0002 #define TI_SCI_MSG_WAKE_REASON 0x0003 #define TI_SCI_MSG_GOODBYE 0x0004 +#define TI_SCI_MSG_SYS_RESET 0x0005 /* Device requests */ #define TI_SCI_MSG_SET_DEVICE_STATE 0x0200 @@ -106,6 +107,17 @@ struct ti_sci_msg_resp_version { } __packed; /** + * struct ti_sci_msg_req_reboot - Reboot the SoC + * @hdr: Generic Header + * + * Request type is TI_SCI_MSG_SYS_RESET, responded with a generic + * ACK/NACK message. + */ +struct ti_sci_msg_req_reboot { + struct ti_sci_msg_hdr hdr; +} __packed; + +/** * struct ti_sci_msg_req_set_device_state - Set the desired state of the device * @hdr: Generic header * @id: Indicates which device to modify |