1Texas Instruments TI SCI Clock Controller
2=========================================
3
4All clocks on Texas Instruments' SoCs that contain a System Controller,
5are only controlled by this entity. Communication between a host processor
6running an OS and the System Controller happens through a protocol known
7as TI SCI[1]. This clock implementation plugs into the common clock
8framework and makes use of the TI SCI protocol on clock API requests.
9
10[1] http://processors.wiki.ti.com/index.php/TISCI
11
12Clock Controller Node
13=====================
14The clock controller node represents the clocks managed by the SYSFW. Because
15this relies on the TI SCI protocol to communicate with the SYSFW it must be a
16child of the sysfw node.
17
18Required Properties:
19--------------------
20- compatible: Must be "ti,k2g-sci-clk"
21- #clock-cells: Must be be 2. In clock consumers, this cell represents the
22		device ID and clock ID exposed by the SYSFW firmware.
23
24Example (AM65x):
25----------------
26	dmsc: dmsc {
27		compatible = "ti,k2g-sci";
28		...
29		k3_clks: clocks {
30			compatible = "ti,k2g-sci-clk";
31			#clock-cells = <2>;
32		};
33	};
34
35Clock Consumers
36===============
37Hardware blocks supplied by a clock should contain a "clocks" property that is
38a phandle pointing to the clock controller node along with an index representing
39the device id together with a clock ID to be passed to the SYSFW for device
40control.
41
42Required Properties:
43--------------------
44- clocks: phandle pointing to the corresponding clock node, an ID representing
45	  the device, and an index representing a clock.
46
47Example (AM65x):
48----------------
49	uart2: serial@02800000 {
50		compatible = "ti,omap4-uart";
51		...
52		clocks = <&k3_clks 0x0007 1>;
53	};
54