Texas Instruments System Control Interface (TI-SCI) Reset Controller ===================================================================== Some TI SoCs contain a system controller (like the Power Management Micro Controller (PMMC) on Keystone 66AK2G SoC) that are responsible for controlling the state of the various hardware modules present on the SoC. Communication between the host processor running an OS and the system controller happens through a protocol called TI System Control Interface (TI-SCI protocol). For TI SCI details, please refer to the document, Documentation/devicetree/bindings/arm/keystone/ti,sci.txt TI-SCI Reset Controller Node ============================ This reset controller node uses the TI SCI protocol to perform the reset management of various hardware modules present on the SoC. Must be a child node of the associated TI-SCI system controller node. Required properties: -------------------- - compatible : Should be "ti,sci-reset" - #reset-cells : Should be 2. Please see the reset consumer node below for usage details. TI-SCI Reset Consumer Nodes =========================== Each of the reset consumer nodes should have the following properties, in addition to their own properties. Required properties: -------------------- - resets : A phandle and reset specifier pair, one pair for each reset signal that affects the device, or that the device manages. The phandle should point to the TI-SCI reset controller node, and the reset specifier should have 2 cell-values. The first cell should contain the device ID. The second cell should contain the reset mask value used by system controller. Please refer to the protocol documentation for these values to be used for different devices, http://processors.wiki.ti.com/index.php/TISCI#66AK2G02_Data Please also refer to Documentation/devicetree/bindings/reset/reset.txt for common reset controller usage by consumers. Example: -------- The following example demonstrates both a TI-SCI reset controller node and a consumer (a DSP device) on the 66AK2G SoC. pmmc: pmmc { compatible = "ti,k2g-sci"; k2g_reset: reset-controller { compatible = "ti,sci-reset"; #reset-cells = <2>; }; }; dsp0: dsp@10800000 { ... resets = <&k2g_reset 0x0046 0x1>; ... }; |