aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* firmware: ti_sci: Add device_resets calls to the device opsDave Gerlach2015-11-251-0/+73
| | | | | | | | | | | | | | | | | | | | | | Add set_device_resets to the device ops of ti_sci to handle new TI_SCI_MSG_SET_DEVICE_RESETS message introduced with ABI 2.3 that will control the resets of a device without touching any of the other state associated with that device. Previously resets control was handled by the TI_SCI_MSG_SET_DEVICE message which also controls device state. This would lead to the reset framework being responsible for controlling resets but also requiring knowledge about the state of the device or making assumptions and causing undefined behavior. With this new split ti_sci_pm_domains can control the state exclusively while also setting the reset value when turning the device on and the reset framework will be able to control resets independently of device state. Also add get_device_resets to return the state of the resets of a device. Acked-by: Nishanth Menon <nm@ti.com> Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
* firmware: ti_sci: Drop resets field from ti_sci_set_device_state callsDave Gerlach2015-11-251-9/+5
| | | | | | | | | | | | | TI_SCI_MSG_SET_DEVICE_STATE no longer will control resets as this has been moved to a new separate ABI as of ABI 2.3 so drop the resets field from the message request and update ti_sci_set_device_state and all functions using it to no longer set the resets field. Also update ti_sci_pm_domains to avoid build breakage as it uses the get_device op which used to take resets as a parameter. Acked-by: Nishanth Menon <nm@ti.com> Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
* firmware: ti_sci: Add support for Clock controlNishanth Menon2015-11-091-0/+685
| | | | | | | | | | | | | | | | | | | | | Texas Instrument's System Control Interface (TI-SCI) Message Protocol is used in Texas Instrument's System on Chip (SoC) such as those in keystone family K2G SoC to communicate between various compute processors with a central system controller entity. SCI message protocol provides support for management of various hardware entitites within the SoC. Add support driver to allow communication with system controller entity within the SoC using the mailbox client. In general, we expect to function at a device level of abstraction, however, for proper operation of hardware blocks, many clocks directly supplying the hardware block needs to be queried or configured. Introduce support for the set of SCI message protocol support that provide us with this capability. Signed-off-by: Nishanth Menon <nm@ti.com>
* firmware: ti_sci: Add support for Device controlNishanth Menon2015-11-061-0/+364
| | | | | | | | | | | | | | | | | Texas Instrument's System Control Interface (TI-SCI) Message Protocol is used in Texas Instrument's System on Chip (SoC) such as those in keystone family K2G SoC to communicate between various compute processors with a central system controller entity. SCI message protocol provides support for management of various hardware entitites within the SoC. Add support driver to allow communication with system controller entity within the SoC using the mailbox client. We introduce the fundamental device management capability support to the driver protocol as part of this change. Signed-off-by: Nishanth Menon <nm@ti.com>
* HACK: firmware: ti_sci: Move mailbox ticker after the tickNishanth Menon2015-11-061-11/+10
| | | | | | | | | | | | | | | | | | | For some reason, unless we move the ticker logic *after* transmit, we are unable to send data, however, when we do that, we have to deal with Mailbox core's queue logic which is limited in size, so we can only send "so much" requests simultaneously(ridiculous limitation, but that is how it is). While at this, increase predicted timeout to an unexpected value. NOTE: this is tagged as a hack as the rootcause is still unknown. Side effect of this patch will be to force the system to have just one xfer only in progress to TI SCI. This needs further investigation to rootcause, but this should unblock further work using the ti_sci for communication Signed-off-by: Nishanth Menon <nm@ti.com> Tested-by: Dave Gerlach <d-gerlach@ti.com>
* firmware: Add support for TI System Control Interface (TI-SCI) protocolNishanth Menon2015-10-301-0/+790
Texas Instrument's System Control Interface (TI-SCI) Message Protocol is used in Texas Instrument's System on Chip (SoC) such as those in keystone family K2G SoC to communicate between various compute processors with a central system controller entity. SCI message protocol provides support for management of various hardware entitites within the SoC. Add support driver to allow communication with system controller entity within the SoC using the mailbox client. We introduce the basic registration and query capability for the driver protocol as part of this change. Subsequent patches add in functionality specific to the TI-SCI features. Signed-off-by: Nishanth Menon <nm@ti.com>