1*4882a593SmuzhiyunTexas Instruments System Control Interface (TI-SCI) Reset Controller 2*4882a593Smuzhiyun===================================================================== 3*4882a593Smuzhiyun 4*4882a593SmuzhiyunSome TI SoCs contain a system controller (like the Power Management Micro 5*4882a593SmuzhiyunController (PMMC) on Keystone 66AK2G SoC) that are responsible for controlling 6*4882a593Smuzhiyunthe state of the various hardware modules present on the SoC. Communication 7*4882a593Smuzhiyunbetween the host processor running an OS and the system controller happens 8*4882a593Smuzhiyunthrough a protocol called TI System Control Interface (TI-SCI protocol). 9*4882a593SmuzhiyunFor TI SCI details, please refer to the document, 10*4882a593SmuzhiyunDocumentation/devicetree/bindings/arm/keystone/ti,sci.txt 11*4882a593Smuzhiyun 12*4882a593SmuzhiyunTI-SCI Reset Controller Node 13*4882a593Smuzhiyun============================ 14*4882a593SmuzhiyunThis reset controller node uses the TI SCI protocol to perform the reset 15*4882a593Smuzhiyunmanagement of various hardware modules present on the SoC. Must be a child 16*4882a593Smuzhiyunnode of the associated TI-SCI system controller node. 17*4882a593Smuzhiyun 18*4882a593SmuzhiyunRequired properties: 19*4882a593Smuzhiyun-------------------- 20*4882a593Smuzhiyun - compatible : Should be "ti,sci-reset" 21*4882a593Smuzhiyun - #reset-cells : Should be 2. Please see the reset consumer node below for 22*4882a593Smuzhiyun usage details. 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunTI-SCI Reset Consumer Nodes 25*4882a593Smuzhiyun=========================== 26*4882a593SmuzhiyunEach of the reset consumer nodes should have the following properties, 27*4882a593Smuzhiyunin addition to their own properties. 28*4882a593Smuzhiyun 29*4882a593SmuzhiyunRequired properties: 30*4882a593Smuzhiyun-------------------- 31*4882a593Smuzhiyun - resets : A phandle and reset specifier pair, one pair for each reset 32*4882a593Smuzhiyun signal that affects the device, or that the device manages. 33*4882a593Smuzhiyun The phandle should point to the TI-SCI reset controller node, 34*4882a593Smuzhiyun and the reset specifier should have 2 cell-values. The first 35*4882a593Smuzhiyun cell should contain the device ID. The second cell should 36*4882a593Smuzhiyun contain the reset mask value used by system controller. 37*4882a593Smuzhiyun Please refer to the protocol documentation for these values 38*4882a593Smuzhiyun to be used for different devices, 39*4882a593Smuzhiyun http://processors.wiki.ti.com/index.php/TISCI#66AK2G02_Data 40*4882a593Smuzhiyun 41*4882a593SmuzhiyunPlease also refer to Documentation/devicetree/bindings/reset/reset.txt for 42*4882a593Smuzhiyuncommon reset controller usage by consumers. 43*4882a593Smuzhiyun 44*4882a593SmuzhiyunExample: 45*4882a593Smuzhiyun-------- 46*4882a593SmuzhiyunThe following example demonstrates both a TI-SCI reset controller node and a 47*4882a593Smuzhiyunconsumer (a DSP device) on the 66AK2G SoC. 48*4882a593Smuzhiyun 49*4882a593Smuzhiyunpmmc: pmmc { 50*4882a593Smuzhiyun compatible = "ti,k2g-sci"; 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun k2g_reset: reset-controller { 53*4882a593Smuzhiyun compatible = "ti,sci-reset"; 54*4882a593Smuzhiyun #reset-cells = <2>; 55*4882a593Smuzhiyun }; 56*4882a593Smuzhiyun}; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyundsp0: dsp@10800000 { 59*4882a593Smuzhiyun ... 60*4882a593Smuzhiyun resets = <&k2g_reset 0x0046 0x1>; 61*4882a593Smuzhiyun ... 62*4882a593Smuzhiyun}; 63