xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/reset/ti,sci-reset.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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