1*1a88a04eSAndreas DannenbergTexas Instruments TI SCI Generic Power Domain
2*1a88a04eSAndreas Dannenberg=============================================
3*1a88a04eSAndreas Dannenberg
4*1a88a04eSAndreas DannenbergSome TI SoCs contain a system controller (like the SYSFW, etc...) that is
5*1a88a04eSAndreas Dannenbergresponsible for controlling the state of the IPs that are present.
6*1a88a04eSAndreas DannenbergCommunication between the host processor running an OS and the system
7*1a88a04eSAndreas Dannenbergcontroller happens through a protocol known as TI SCI [1].
8*1a88a04eSAndreas Dannenberg
9*1a88a04eSAndreas Dannenberg[1] http://processors.wiki.ti.com/index.php/TISCI
10*1a88a04eSAndreas Dannenberg
11*1a88a04eSAndreas DannenbergPM Domain Node
12*1a88a04eSAndreas Dannenberg==============
13*1a88a04eSAndreas DannenbergThe PM domain node represents the global PM domain managed by the SYSFW. Because
14*1a88a04eSAndreas Dannenbergthis relies on the TI SCI protocol to communicate with the SYSFW it must be a
15*1a88a04eSAndreas Dannenbergchild of the sysfw node.
16*1a88a04eSAndreas Dannenberg
17*1a88a04eSAndreas DannenbergRequired Properties:
18*1a88a04eSAndreas Dannenberg--------------------
19*1a88a04eSAndreas Dannenberg- compatible: Must be "ti,sci-pm-domain"
20*1a88a04eSAndreas Dannenberg- #power-domain-cells: Must be 1 so that an id can be provided in each
21*1a88a04eSAndreas Dannenberg		       device node.
22*1a88a04eSAndreas Dannenberg
23*1a88a04eSAndreas DannenbergExample (AM65x):
24*1a88a04eSAndreas Dannenberg----------------
25*1a88a04eSAndreas Dannenberg	sysfw: sysfw {
26*1a88a04eSAndreas Dannenberg		compatible = "ti,am654-system-controller";
27*1a88a04eSAndreas Dannenberg		...
28*1a88a04eSAndreas Dannenberg		k3_pds: power-controller {
29*1a88a04eSAndreas Dannenberg			compatible = "ti,sci-pm-domain";
30*1a88a04eSAndreas Dannenberg			#power-domain-cells = <1>;
31*1a88a04eSAndreas Dannenberg		};
32*1a88a04eSAndreas Dannenberg	};
33*1a88a04eSAndreas Dannenberg
34*1a88a04eSAndreas DannenbergPM Domain Consumers
35*1a88a04eSAndreas Dannenberg===================
36*1a88a04eSAndreas DannenbergHardware blocks belonging to a PM domain should contain a "power-domains"
37*1a88a04eSAndreas Dannenbergproperty that is a phandle pointing to the corresponding PM domain node
38*1a88a04eSAndreas Dannenbergalong with an index representing the device id to be passed to the PMMC
39*1a88a04eSAndreas Dannenbergfor device control.
40*1a88a04eSAndreas Dannenberg
41*1a88a04eSAndreas DannenbergRequired Properties:
42*1a88a04eSAndreas Dannenberg--------------------
43*1a88a04eSAndreas Dannenberg- power-domains: phandle pointing to the corresponding PM domain node
44*1a88a04eSAndreas Dannenberg		 and an ID representing the device.
45*1a88a04eSAndreas Dannenberg
46*1a88a04eSAndreas DannenbergExample (AM65x):
47*1a88a04eSAndreas Dannenberg----------------
48*1a88a04eSAndreas Dannenberg	uart2: serial@02800000 {
49*1a88a04eSAndreas Dannenberg		compatible = "ti,omap4-uart";
50*1a88a04eSAndreas Dannenberg		...
51*1a88a04eSAndreas Dannenberg		power-domains = <&k3_pds 0x3f>;
52*1a88a04eSAndreas Dannenberg	};
53