2 * Device Tree Source for AM43xx clock data
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.
11 sys_clkin_ck: sys_clkin_ck@40 {
13 compatible = "ti,mux-clock";
14 clocks = <&sysboot_freq_sel_ck>, <&crystal_freq_sel_ck>;
19 crystal_freq_sel_ck: crystal_freq_sel_ck@40 {
21 compatible = "ti,mux-clock";
22 clocks = <&virt_19200000_ck>, <&virt_24000000_ck>, <&virt_25000000_ck>, <&virt_26000000_ck>;
27 sysboot_freq_sel_ck: sysboot_freq_sel_ck@44e10040 {
29 compatible = "ti,mux-clock";
30 clocks = <&virt_19200000_ck>, <&virt_24000000_ck>, <&virt_25000000_ck>, <&virt_26000000_ck>;
35 adc_tsc_fck: adc_tsc_fck {
37 compatible = "fixed-factor-clock";
38 clocks = <&sys_clkin_ck>;
43 dcan0_fck: dcan0_fck {
45 compatible = "fixed-factor-clock";
46 clocks = <&sys_clkin_ck>;
51 dcan1_fck: dcan1_fck {
53 compatible = "fixed-factor-clock";
54 clocks = <&sys_clkin_ck>;
59 mcasp0_fck: mcasp0_fck {
61 compatible = "fixed-factor-clock";
62 clocks = <&sys_clkin_ck>;
67 mcasp1_fck: mcasp1_fck {
69 compatible = "fixed-factor-clock";
70 clocks = <&sys_clkin_ck>;
75 smartreflex0_fck: smartreflex0_fck {
77 compatible = "fixed-factor-clock";
78 clocks = <&sys_clkin_ck>;
83 smartreflex1_fck: smartreflex1_fck {
85 compatible = "fixed-factor-clock";
86 clocks = <&sys_clkin_ck>;
93 compatible = "fixed-factor-clock";
94 clocks = <&sys_clkin_ck>;
101 compatible = "fixed-factor-clock";
102 clocks = <&sys_clkin_ck>;
109 compatible = "fixed-factor-clock";
110 clocks = <&sys_clkin_ck>;
115 ehrpwm0_tbclk: ehrpwm0_tbclk@664 {
117 compatible = "ti,gate-clock";
118 clocks = <&l4ls_gclk>;
123 ehrpwm1_tbclk: ehrpwm1_tbclk@664 {
125 compatible = "ti,gate-clock";
126 clocks = <&l4ls_gclk>;
131 ehrpwm2_tbclk: ehrpwm2_tbclk@664 {
133 compatible = "ti,gate-clock";
134 clocks = <&l4ls_gclk>;
139 ehrpwm3_tbclk: ehrpwm3_tbclk@664 {
141 compatible = "ti,gate-clock";
142 clocks = <&l4ls_gclk>;
147 ehrpwm4_tbclk: ehrpwm4_tbclk@664 {
149 compatible = "ti,gate-clock";
150 clocks = <&l4ls_gclk>;
155 ehrpwm5_tbclk: ehrpwm5_tbclk@664 {
157 compatible = "ti,gate-clock";
158 clocks = <&l4ls_gclk>;
164 clk_32768_ck: clk_32768_ck {
166 compatible = "fixed-clock";
167 clock-frequency = <32768>;
170 clk_rc32k_ck: clk_rc32k_ck {
172 compatible = "fixed-clock";
173 clock-frequency = <32768>;
176 virt_19200000_ck: virt_19200000_ck {
178 compatible = "fixed-clock";
179 clock-frequency = <19200000>;
182 virt_24000000_ck: virt_24000000_ck {
184 compatible = "fixed-clock";
185 clock-frequency = <24000000>;
188 virt_25000000_ck: virt_25000000_ck {
190 compatible = "fixed-clock";
191 clock-frequency = <25000000>;
194 virt_26000000_ck: virt_26000000_ck {
196 compatible = "fixed-clock";
197 clock-frequency = <26000000>;
200 tclkin_ck: tclkin_ck {
202 compatible = "fixed-clock";
203 clock-frequency = <26000000>;
206 dpll_core_ck: dpll_core_ck@2d20 {
208 compatible = "ti,am3-dpll-core-clock";
209 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
210 reg = <0x2d20>, <0x2d24>, <0x2d2c>;
213 dpll_core_x2_ck: dpll_core_x2_ck {
215 compatible = "ti,am3-dpll-x2-clock";
216 clocks = <&dpll_core_ck>;
219 dpll_core_m4_ck: dpll_core_m4_ck@2d38 {
221 compatible = "ti,divider-clock";
222 clocks = <&dpll_core_x2_ck>;
224 ti,autoidle-shift = <8>;
226 ti,index-starts-at-one;
227 ti,invert-autoidle-bit;
230 dpll_core_m5_ck: dpll_core_m5_ck@2d3c {
232 compatible = "ti,divider-clock";
233 clocks = <&dpll_core_x2_ck>;
235 ti,autoidle-shift = <8>;
237 ti,index-starts-at-one;
238 ti,invert-autoidle-bit;
241 dpll_core_m6_ck: dpll_core_m6_ck@2d40 {
243 compatible = "ti,divider-clock";
244 clocks = <&dpll_core_x2_ck>;
246 ti,autoidle-shift = <8>;
248 ti,index-starts-at-one;
249 ti,invert-autoidle-bit;
252 dpll_mpu_ck: dpll_mpu_ck@2d60 {
254 compatible = "ti,am3-dpll-clock";
255 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
256 reg = <0x2d60>, <0x2d64>, <0x2d6c>;
259 dpll_mpu_m2_ck: dpll_mpu_m2_ck@2d70 {
261 compatible = "ti,divider-clock";
262 clocks = <&dpll_mpu_ck>;
264 ti,autoidle-shift = <8>;
266 ti,index-starts-at-one;
267 ti,invert-autoidle-bit;
270 mpu_periphclk: mpu_periphclk {
272 compatible = "fixed-factor-clock";
273 clocks = <&dpll_mpu_m2_ck>;
278 dpll_ddr_ck: dpll_ddr_ck@2da0 {
280 compatible = "ti,am3-dpll-clock";
281 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
282 reg = <0x2da0>, <0x2da4>, <0x2dac>;
285 dpll_ddr_m2_ck: dpll_ddr_m2_ck@2db0 {
287 compatible = "ti,divider-clock";
288 clocks = <&dpll_ddr_ck>;
290 ti,autoidle-shift = <8>;
292 ti,index-starts-at-one;
293 ti,invert-autoidle-bit;
296 dpll_disp_ck: dpll_disp_ck@2e20 {
298 compatible = "ti,am3-dpll-clock";
299 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
300 reg = <0x2e20>, <0x2e24>, <0x2e2c>;
303 dpll_disp_m2_ck: dpll_disp_m2_ck@2e30 {
305 compatible = "ti,divider-clock";
306 clocks = <&dpll_disp_ck>;
308 ti,autoidle-shift = <8>;
310 ti,index-starts-at-one;
311 ti,invert-autoidle-bit;
315 dpll_per_ck: dpll_per_ck@2de0 {
317 compatible = "ti,am3-dpll-j-type-clock";
318 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
319 reg = <0x2de0>, <0x2de4>, <0x2dec>;
322 dpll_per_m2_ck: dpll_per_m2_ck@2df0 {
324 compatible = "ti,divider-clock";
325 clocks = <&dpll_per_ck>;
327 ti,autoidle-shift = <8>;
329 ti,index-starts-at-one;
330 ti,invert-autoidle-bit;
333 dpll_per_m2_div4_wkupdm_ck: dpll_per_m2_div4_wkupdm_ck {
335 compatible = "fixed-factor-clock";
336 clocks = <&dpll_per_m2_ck>;
341 dpll_per_m2_div4_ck: dpll_per_m2_div4_ck {
343 compatible = "fixed-factor-clock";
344 clocks = <&dpll_per_m2_ck>;
349 clk_24mhz: clk_24mhz {
351 compatible = "fixed-factor-clock";
352 clocks = <&dpll_per_m2_ck>;
357 clkdiv32k_ck: clkdiv32k_ck {
359 compatible = "fixed-factor-clock";
360 clocks = <&clk_24mhz>;
365 clkdiv32k_ick: clkdiv32k_ick@2a38 {
367 compatible = "ti,gate-clock";
368 clocks = <&clkdiv32k_ck>;
373 sysclk_div: sysclk_div {
375 compatible = "fixed-factor-clock";
376 clocks = <&dpll_core_m4_ck>;
381 pruss_ocp_gclk: pruss_ocp_gclk@4248 {
383 compatible = "ti,mux-clock";
384 clocks = <&sysclk_div>, <&dpll_disp_m2_ck>;
388 clk_32k_tpm_ck: clk_32k_tpm_ck {
390 compatible = "fixed-clock";
391 clock-frequency = <32768>;
394 timer1_fck: timer1_fck@4200 {
396 compatible = "ti,mux-clock";
397 clocks = <&sys_clkin_ck>, <&clkdiv32k_ick>, <&tclkin_ck>, <&clk_rc32k_ck>, <&clk_32768_ck>, <&clk_32k_tpm_ck>;
401 timer2_fck: timer2_fck@4204 {
403 compatible = "ti,mux-clock";
404 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
408 timer3_fck: timer3_fck@4208 {
410 compatible = "ti,mux-clock";
411 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
415 timer4_fck: timer4_fck@420c {
417 compatible = "ti,mux-clock";
418 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
422 timer5_fck: timer5_fck@4210 {
424 compatible = "ti,mux-clock";
425 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
429 timer6_fck: timer6_fck@4214 {
431 compatible = "ti,mux-clock";
432 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
436 timer7_fck: timer7_fck@4218 {
438 compatible = "ti,mux-clock";
439 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
443 wdt1_fck: wdt1_fck@422c {
445 compatible = "ti,mux-clock";
446 clocks = <&clk_rc32k_ck>, <&clkdiv32k_ick>;
452 compatible = "fixed-factor-clock";
453 clocks = <&dpll_core_m4_ck>;
458 dpll_core_m4_div2_ck: dpll_core_m4_div2_ck {
460 compatible = "fixed-factor-clock";
461 clocks = <&sysclk_div>;
466 l4hs_gclk: l4hs_gclk {
468 compatible = "fixed-factor-clock";
469 clocks = <&dpll_core_m4_ck>;
476 compatible = "fixed-factor-clock";
477 clocks = <&dpll_core_m4_div2_ck>;
482 l4ls_gclk: l4ls_gclk {
484 compatible = "fixed-factor-clock";
485 clocks = <&dpll_core_m4_div2_ck>;
490 cpsw_125mhz_gclk: cpsw_125mhz_gclk {
492 compatible = "fixed-factor-clock";
493 clocks = <&dpll_core_m5_ck>;
498 cpsw_cpts_rft_clk: cpsw_cpts_rft_clk@4238 {
500 compatible = "ti,mux-clock";
501 clocks = <&sysclk_div>, <&dpll_core_m5_ck>, <&dpll_disp_m2_ck>;
505 dpll_clksel_mac_clk: dpll_clksel_mac_clk@4234 {
507 compatible = "ti,divider-clock";
508 clocks = <&dpll_core_m5_ck>;
511 ti,dividers = <2>, <5>;
514 clk_32k_mosc_ck: clk_32k_mosc_ck {
516 compatible = "fixed-clock";
517 clock-frequency = <32768>;
520 gpio0_dbclk_mux_ck: gpio0_dbclk_mux_ck@4240 {
522 compatible = "ti,mux-clock";
523 clocks = <&clk_rc32k_ck>, <&clk_32768_ck>, <&clkdiv32k_ick>, <&clk_32k_mosc_ck>, <&clk_32k_tpm_ck>;
529 compatible = "fixed-factor-clock";
530 clocks = <&dpll_per_m2_ck>;
535 gfx_fclk_clksel_ck: gfx_fclk_clksel_ck@423c {
537 compatible = "ti,mux-clock";
538 clocks = <&sysclk_div>, <&dpll_per_m2_ck>;
543 gfx_fck_div_ck: gfx_fck_div_ck@423c {
545 compatible = "ti,divider-clock";
546 clocks = <&gfx_fclk_clksel_ck>;
551 disp_clk: disp_clk@4244 {
553 compatible = "ti,mux-clock";
554 clocks = <&dpll_disp_m2_ck>, <&dpll_core_m5_ck>, <&dpll_per_m2_ck>;
559 dpll_extdev_ck: dpll_extdev_ck@2e60 {
561 compatible = "ti,am3-dpll-clock";
562 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
563 reg = <0x2e60>, <0x2e64>, <0x2e6c>;
566 dpll_extdev_m2_ck: dpll_extdev_m2_ck@2e70 {
568 compatible = "ti,divider-clock";
569 clocks = <&dpll_extdev_ck>;
571 ti,autoidle-shift = <8>;
573 ti,index-starts-at-one;
574 ti,invert-autoidle-bit;
577 mux_synctimer32k_ck: mux_synctimer32k_ck@4230 {
579 compatible = "ti,mux-clock";
580 clocks = <&clk_32768_ck>, <&clk_32k_tpm_ck>, <&clkdiv32k_ick>;
584 timer8_fck: timer8_fck@421c {
586 compatible = "ti,mux-clock";
587 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
591 timer9_fck: timer9_fck@4220 {
593 compatible = "ti,mux-clock";
594 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
598 timer10_fck: timer10_fck@4224 {
600 compatible = "ti,mux-clock";
601 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
605 timer11_fck: timer11_fck@4228 {
607 compatible = "ti,mux-clock";
608 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
612 cpsw_50m_clkdiv: cpsw_50m_clkdiv {
614 compatible = "fixed-factor-clock";
615 clocks = <&dpll_core_m5_ck>;
620 cpsw_5m_clkdiv: cpsw_5m_clkdiv {
622 compatible = "fixed-factor-clock";
623 clocks = <&cpsw_50m_clkdiv>;
628 dpll_ddr_x2_ck: dpll_ddr_x2_ck {
630 compatible = "ti,am3-dpll-x2-clock";
631 clocks = <&dpll_ddr_ck>;
634 dpll_ddr_m4_ck: dpll_ddr_m4_ck@2db8 {
636 compatible = "ti,divider-clock";
637 clocks = <&dpll_ddr_x2_ck>;
639 ti,autoidle-shift = <8>;
641 ti,index-starts-at-one;
642 ti,invert-autoidle-bit;
645 dpll_per_clkdcoldo: dpll_per_clkdcoldo@2e14 {
647 compatible = "ti,fixed-factor-clock";
648 clocks = <&dpll_per_ck>;
651 ti,autoidle-shift = <8>;
653 ti,invert-autoidle-bit;
656 dll_aging_clk_div: dll_aging_clk_div@4250 {
658 compatible = "ti,divider-clock";
659 clocks = <&sys_clkin_ck>;
661 ti,dividers = <8>, <16>, <32>;
664 div_core_25m_ck: div_core_25m_ck {
666 compatible = "fixed-factor-clock";
667 clocks = <&sysclk_div>;
672 func_12m_clk: func_12m_clk {
674 compatible = "fixed-factor-clock";
675 clocks = <&dpll_per_m2_ck>;
680 vtp_clk_div: vtp_clk_div {
682 compatible = "fixed-factor-clock";
683 clocks = <&sys_clkin_ck>;
688 usbphy_32khz_clkmux: usbphy_32khz_clkmux@4260 {
690 compatible = "ti,mux-clock";
691 clocks = <&clk_32768_ck>, <&clk_32k_tpm_ck>;
695 usb_phy0_always_on_clk32k: usb_phy0_always_on_clk32k@2a40 {
697 compatible = "ti,gate-clock";
698 clocks = <&usbphy_32khz_clkmux>;
703 usb_phy1_always_on_clk32k: usb_phy1_always_on_clk32k@2a48 {
705 compatible = "ti,gate-clock";
706 clocks = <&usbphy_32khz_clkmux>;
711 clkout1_osc_div_ck: clkout1-osc-div-ck {
713 compatible = "ti,divider-clock";
714 clocks = <&sys_clkin_ck>;
720 clkout1_src2_mux_ck: clkout1-src2-mux-ck {
722 compatible = "ti,mux-clock";
723 clocks = <&clk_rc32k_ck>, <&sysclk_div>, <&dpll_ddr_m2_ck>,
724 <&dpll_per_m2_ck>, <&dpll_disp_m2_ck>,
729 clkout1_src2_pre_div_ck: clkout1-src2-pre-div-ck {
731 compatible = "ti,divider-clock";
732 clocks = <&clkout1_src2_mux_ck>;
738 clkout1_src2_post_div_ck: clkout1-src2-post-div-ck {
740 compatible = "ti,divider-clock";
741 clocks = <&clkout1_src2_pre_div_ck>;
744 ti,index-power-of-two;
748 clkout1_mux_ck: clkout1-mux-ck {
750 compatible = "ti,mux-clock";
751 clocks = <&clkout1_osc_div_ck>, <&clk_rc32k_ck>,
752 <&clkout1_src2_post_div_ck>, <&dpll_extdev_m2_ck>;
757 clkout1_ck: clkout1-ck {
759 compatible = "ti,gate-clock";
760 clocks = <&clkout1_mux_ck>;
767 l4_wkup_cm: l4_wkup_cm@2800 {
768 compatible = "ti,omap4-cm";
769 reg = <0x2800 0x400>;
770 #address-cells = <1>;
772 ranges = <0 0x2800 0x400>;
774 l4_wkup_clkctrl: clk@20 {
775 compatible = "ti,clkctrl";
781 mpu_cm: mpu_cm@8300 {
782 compatible = "ti,omap4-cm";
783 reg = <0x8300 0x100>;
784 #address-cells = <1>;
786 ranges = <0 0x8300 0x100>;
788 mpu_clkctrl: clk@20 {
789 compatible = "ti,clkctrl";
795 gfx_l3_cm: gfx_l3_cm@8400 {
796 compatible = "ti,omap4-cm";
797 reg = <0x8400 0x100>;
798 #address-cells = <1>;
800 ranges = <0 0x8400 0x100>;
802 gfx_l3_clkctrl: clk@20 {
803 compatible = "ti,clkctrl";
809 l4_rtc_cm: l4_rtc_cm@8500 {
810 compatible = "ti,omap4-cm";
811 reg = <0x8500 0x100>;
812 #address-cells = <1>;
814 ranges = <0 0x8500 0x100>;
816 l4_rtc_clkctrl: clk@20 {
817 compatible = "ti,clkctrl";
823 l4_per_cm: l4_per_cm@8800 {
824 compatible = "ti,omap4-cm";
825 reg = <0x8800 0xc00>;
826 #address-cells = <1>;
828 ranges = <0 0x8800 0xc00>;
830 l4_per_clkctrl: clk@20 {
831 compatible = "ti,clkctrl";