.. | .. |
---|
9 | 9 | output on a device. The length of a clock specifier is defined by the |
---|
10 | 10 | value of a #clock-cells property in the clock provider node. |
---|
11 | 11 | |
---|
12 | | -[1] http://patchwork.ozlabs.org/patch/31551/ |
---|
| 12 | +[1] https://patchwork.ozlabs.org/patch/31551/ |
---|
13 | 13 | |
---|
14 | 14 | ==Clock providers== |
---|
15 | 15 | |
---|
.. | .. |
---|
94 | 94 | /* external oscillator */ |
---|
95 | 95 | osc: oscillator { |
---|
96 | 96 | compatible = "fixed-clock"; |
---|
97 | | - #clock-cells = <1>; |
---|
| 97 | + #clock-cells = <0>; |
---|
98 | 98 | clock-frequency = <32678>; |
---|
99 | 99 | clock-output-names = "osc"; |
---|
100 | 100 | }; |
---|
.. | .. |
---|
168 | 168 | |
---|
169 | 169 | Configuration of common clocks, which affect multiple consumer devices can |
---|
170 | 170 | be similarly specified in the clock provider node. |
---|
| 171 | + |
---|
| 172 | +==Protected clocks== |
---|
| 173 | + |
---|
| 174 | +Some platforms or firmwares may not fully expose all the clocks to the OS, such |
---|
| 175 | +as in situations where those clks are used by drivers running in ARM secure |
---|
| 176 | +execution levels. Such a configuration can be specified in device tree with the |
---|
| 177 | +protected-clocks property in the form of a clock specifier list. This property should |
---|
| 178 | +only be specified in the node that is providing the clocks being protected: |
---|
| 179 | + |
---|
| 180 | + clock-controller@a000f000 { |
---|
| 181 | + compatible = "vendor,clk95; |
---|
| 182 | + reg = <0xa000f000 0x1000> |
---|
| 183 | + #clocks-cells = <1>; |
---|
| 184 | + ... |
---|
| 185 | + protected-clocks = <UART3_CLK>, <SPI5_CLK>; |
---|
| 186 | + }; |
---|