2 * Device Tree Source for Keystone 2 clock tree
4 * Copyright (C) 2013 Texas Instruments, Inc.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
16 mainmuxclk: mainmuxclk@2310108 {
18 compatible = "ti,keystone,pll-mux-clock";
19 clocks = <&mainpllclk>, <&refclksys>;
23 clock-output-names = "mainmuxclk";
28 compatible = "fixed-factor-clock";
29 clocks = <&mainmuxclk>;
32 clock-output-names = "chipclk1";
35 chipclk1rstiso: chipclk1rstiso {
37 compatible = "fixed-factor-clock";
38 clocks = <&mainmuxclk>;
41 clock-output-names = "chipclk1rstiso";
44 gemtraceclk: gemtraceclk@2310120 {
46 compatible = "ti,keystone,pll-divider-clock";
47 clocks = <&mainmuxclk>;
51 clock-output-names = "gemtraceclk";
54 chipstmxptclk: chipstmxptclk {
56 compatible = "ti,keystone,pll-divider-clock";
57 clocks = <&mainmuxclk>;
61 clock-output-names = "chipstmxptclk";
64 chipclk12: chipclk12 {
66 compatible = "fixed-factor-clock";
70 clock-output-names = "chipclk12";
73 chipclk13: chipclk13 {
75 compatible = "fixed-factor-clock";
79 clock-output-names = "chipclk13";
84 compatible = "fixed-factor-clock";
88 clock-output-names = "paclk13";
91 chipclk14: chipclk14 {
93 compatible = "fixed-factor-clock";
97 clock-output-names = "chipclk14";
100 chipclk16: chipclk16 {
102 compatible = "fixed-factor-clock";
103 clocks = <&chipclk1>;
106 clock-output-names = "chipclk16";
109 chipclk112: chipclk112 {
111 compatible = "fixed-factor-clock";
112 clocks = <&chipclk1>;
115 clock-output-names = "chipclk112";
118 chipclk124: chipclk124 {
120 compatible = "fixed-factor-clock";
121 clocks = <&chipclk1>;
124 clock-output-names = "chipclk114";
127 chipclk1rstiso13: chipclk1rstiso13 {
129 compatible = "fixed-factor-clock";
130 clocks = <&chipclk1rstiso>;
133 clock-output-names = "chipclk1rstiso13";
136 chipclk1rstiso14: chipclk1rstiso14 {
138 compatible = "fixed-factor-clock";
139 clocks = <&chipclk1rstiso>;
142 clock-output-names = "chipclk1rstiso14";
145 chipclk1rstiso16: chipclk1rstiso16 {
147 compatible = "fixed-factor-clock";
148 clocks = <&chipclk1rstiso>;
151 clock-output-names = "chipclk1rstiso16";
154 chipclk1rstiso112: chipclk1rstiso112 {
156 compatible = "fixed-factor-clock";
157 clocks = <&chipclk1rstiso>;
160 clock-output-names = "chipclk1rstiso112";
163 clkmodrst0: clkmodrst0 {
165 compatible = "ti,keystone,psc-clock";
166 clocks = <&chipclk16>;
167 clock-output-names = "modrst0";
168 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
169 reg-names = "control", "domain";
176 compatible = "ti,keystone,psc-clock";
177 clocks = <&chipclk16>;
178 clock-output-names = "usb";
179 reg = <0x02350008 0xb00>, <0x02350000 0x400>;
180 reg-names = "control", "domain";
184 clkaemifspi: clkaemifspi {
186 compatible = "ti,keystone,psc-clock";
187 clocks = <&chipclk16>;
188 clock-output-names = "aemif-spi";
189 reg = <0x0235000c 0xb00>, <0x02350000 0x400>;
190 reg-names = "control", "domain";
195 clkdebugsstrc: clkdebugsstrc {
197 compatible = "ti,keystone,psc-clock";
198 clocks = <&chipclk13>;
199 clock-output-names = "debugss-trc";
200 reg = <0x02350014 0xb00>, <0x02350000 0x400>;
201 reg-names = "control", "domain";
205 clktetbtrc: clktetbtrc {
207 compatible = "ti,keystone,psc-clock";
208 clocks = <&chipclk13>;
209 clock-output-names = "tetb-trc";
210 reg = <0x02350018 0xb00>, <0x02350004 0x400>;
211 reg-names = "control", "domain";
217 compatible = "ti,keystone,psc-clock";
219 clock-output-names = "pa";
220 reg = <0x0235001c 0xb00>, <0x02350008 0x400>;
221 reg-names = "control", "domain";
225 clkcpgmac: clkcpgmac {
227 compatible = "ti,keystone,psc-clock";
229 clock-output-names = "cpgmac";
230 reg = <0x02350020 0xb00>, <0x02350008 0x400>;
231 reg-names = "control", "domain";
237 compatible = "ti,keystone,psc-clock";
239 clock-output-names = "sa";
240 reg = <0x02350024 0xb00>, <0x02350008 0x400>;
241 reg-names = "control", "domain";
247 compatible = "ti,keystone,psc-clock";
248 clocks = <&chipclk12>;
249 clock-output-names = "pcie";
250 reg = <0x02350028 0xb00>, <0x0235000c 0x400>;
251 reg-names = "control", "domain";
257 compatible = "ti,keystone,psc-clock";
258 clocks = <&chipclk1rstiso112>;
259 clock-output-names = "sr";
260 reg = <0x02350034 0xb00>, <0x02350018 0x400>;
261 reg-names = "control", "domain";
267 compatible = "ti,keystone,psc-clock";
268 clocks = <&chipclk1>;
269 clock-output-names = "gem0";
270 reg = <0x0235003c 0xb00>, <0x02350020 0x400>;
271 reg-names = "control", "domain";
277 compatible = "ti,keystone,psc-clock";
278 clocks = <&chipclk12>;
279 clock-output-names = "ddr3-0";
280 reg = <0x0235005c 0xb00>, <0x02350040 0x400>;
281 reg-names = "control", "domain";
285 clkwdtimer0: clkwdtimer0 {
287 compatible = "ti,keystone,psc-clock";
288 clocks = <&clkmodrst0>;
289 clock-output-names = "timer0";
290 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
291 reg-names = "control", "domain";
295 clkwdtimer1: clkwdtimer1 {
297 compatible = "ti,keystone,psc-clock";
298 clocks = <&clkmodrst0>;
299 clock-output-names = "timer1";
300 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
301 reg-names = "control", "domain";
305 clkwdtimer2: clkwdtimer2 {
307 compatible = "ti,keystone,psc-clock";
308 clocks = <&clkmodrst0>;
309 clock-output-names = "timer2";
310 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
311 reg-names = "control", "domain";
315 clkwdtimer3: clkwdtimer3 {
317 compatible = "ti,keystone,psc-clock";
318 clocks = <&clkmodrst0>;
319 clock-output-names = "timer3";
320 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
321 reg-names = "control", "domain";
325 clktimer15: clktimer15 {
327 compatible = "ti,keystone,psc-clock";
328 clocks = <&clkmodrst0>;
329 clock-output-names = "timer15";
330 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
331 reg-names = "control", "domain";
337 compatible = "ti,keystone,psc-clock";
338 clocks = <&clkmodrst0>;
339 clock-output-names = "uart0";
340 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
341 reg-names = "control", "domain";
347 compatible = "ti,keystone,psc-clock";
348 clocks = <&clkmodrst0>;
349 clock-output-names = "uart1";
350 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
351 reg-names = "control", "domain";
357 compatible = "ti,keystone,psc-clock";
358 clocks = <&clkaemifspi>;
359 clock-output-names = "aemif";
360 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
361 reg-names = "control", "domain";
367 compatible = "ti,keystone,psc-clock";
368 clocks = <&clkmodrst0>;
369 clock-output-names = "usim";
370 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
371 reg-names = "control", "domain";
377 compatible = "ti,keystone,psc-clock";
378 clocks = <&clkmodrst0>;
379 clock-output-names = "i2c";
380 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
381 reg-names = "control", "domain";
387 compatible = "ti,keystone,psc-clock";
388 clocks = <&clkaemifspi>;
389 clock-output-names = "spi";
390 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
391 reg-names = "control", "domain";
397 compatible = "ti,keystone,psc-clock";
398 clocks = <&clkmodrst0>;
399 clock-output-names = "gpio";
400 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
401 reg-names = "control", "domain";
405 clkkeymgr: clkkeymgr {
407 compatible = "ti,keystone,psc-clock";
408 clocks = <&clkmodrst0>;
409 clock-output-names = "keymgr";
410 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
411 reg-names = "control", "domain";