| Texas Instruments TI SCI Clock Controller |
| ========================================= |
| |
| All clocks on Texas Instruments' SoCs that contain a System Controller, |
| are only controlled by this entity. Communication between a host processor |
| running an OS and the System Controller happens through a protocol known |
| as TI SCI[1]. This clock implementation plugs into the common clock |
| framework and makes use of the TI SCI protocol on clock API requests. |
| |
| [1] http://processors.wiki.ti.com/index.php/TISCI |
| |
| Clock Controller Node |
| ===================== |
| The clock controller node represents the clocks managed by the SYSFW. Because |
| this relies on the TI SCI protocol to communicate with the SYSFW it must be a |
| child of the sysfw node. |
| |
| Required Properties: |
| -------------------- |
| - compatible: Must be "ti,k2g-sci-clk" |
| - #clock-cells: Must be be 2. In clock consumers, this cell represents the |
| device ID and clock ID exposed by the SYSFW firmware. |
| |
| Example (AM65x): |
| ---------------- |
| dmsc: dmsc { |
| compatible = "ti,k2g-sci"; |
| ... |
| k3_clks: clocks { |
| compatible = "ti,k2g-sci-clk"; |
| #clock-cells = <2>; |
| }; |
| }; |
| |
| Clock Consumers |
| =============== |
| Hardware blocks supplied by a clock should contain a "clocks" property that is |
| a phandle pointing to the clock controller node along with an index representing |
| the device id together with a clock ID to be passed to the SYSFW for device |
| control. |
| |
| Required Properties: |
| -------------------- |
| - clocks: phandle pointing to the corresponding clock node, an ID representing |
| the device, and an index representing a clock. |
| |
| Example (AM65x): |
| ---------------- |
| uart2: serial@02800000 { |
| compatible = "ti,omap4-uart"; |
| ... |
| clocks = <&k3_clks 0x0007 1>; |
| }; |