1 // SPDX-License-Identifier: GPL-2.0-only
3 * Device Tree Source for AM43xx clock data
5 * Copyright (C) 2013 Texas Instruments, Inc.
8 sys_clkin_ck: sys_clkin_ck {
10 compatible = "ti,mux-clock";
11 clocks = <&sysboot_freq_sel_ck>, <&crystal_freq_sel_ck>;
16 crystal_freq_sel_ck: crystal_freq_sel_ck {
18 compatible = "ti,mux-clock";
19 clocks = <&virt_19200000_ck>, <&virt_24000000_ck>, <&virt_25000000_ck>, <&virt_26000000_ck>;
24 sysboot_freq_sel_ck: sysboot_freq_sel_ck@44e10040 {
26 compatible = "ti,mux-clock";
27 clocks = <&virt_19200000_ck>, <&virt_24000000_ck>, <&virt_25000000_ck>, <&virt_26000000_ck>;
32 adc_tsc_fck: adc_tsc_fck {
34 compatible = "fixed-factor-clock";
35 clocks = <&sys_clkin_ck>;
40 dcan0_fck: dcan0_fck {
42 compatible = "fixed-factor-clock";
43 clocks = <&sys_clkin_ck>;
48 dcan1_fck: dcan1_fck {
50 compatible = "fixed-factor-clock";
51 clocks = <&sys_clkin_ck>;
56 mcasp0_fck: mcasp0_fck {
58 compatible = "fixed-factor-clock";
59 clocks = <&sys_clkin_ck>;
64 mcasp1_fck: mcasp1_fck {
66 compatible = "fixed-factor-clock";
67 clocks = <&sys_clkin_ck>;
72 smartreflex0_fck: smartreflex0_fck {
74 compatible = "fixed-factor-clock";
75 clocks = <&sys_clkin_ck>;
80 smartreflex1_fck: smartreflex1_fck {
82 compatible = "fixed-factor-clock";
83 clocks = <&sys_clkin_ck>;
90 compatible = "fixed-factor-clock";
91 clocks = <&sys_clkin_ck>;
98 compatible = "fixed-factor-clock";
99 clocks = <&sys_clkin_ck>;
104 ehrpwm0_tbclk: ehrpwm0_tbclk {
106 compatible = "ti,gate-clock";
107 clocks = <&l4ls_gclk>;
112 ehrpwm1_tbclk: ehrpwm1_tbclk {
114 compatible = "ti,gate-clock";
115 clocks = <&l4ls_gclk>;
120 ehrpwm2_tbclk: ehrpwm2_tbclk {
122 compatible = "ti,gate-clock";
123 clocks = <&l4ls_gclk>;
128 ehrpwm3_tbclk: ehrpwm3_tbclk {
130 compatible = "ti,gate-clock";
131 clocks = <&l4ls_gclk>;
136 ehrpwm4_tbclk: ehrpwm4_tbclk {
138 compatible = "ti,gate-clock";
139 clocks = <&l4ls_gclk>;
144 ehrpwm5_tbclk: ehrpwm5_tbclk {
146 compatible = "ti,gate-clock";
147 clocks = <&l4ls_gclk>;
153 clk_32768_ck: clk_32768_ck {
155 compatible = "fixed-clock";
156 clock-frequency = <32768>;
159 clk_rc32k_ck: clk_rc32k_ck {
161 compatible = "fixed-clock";
162 clock-frequency = <32768>;
165 virt_19200000_ck: virt_19200000_ck {
167 compatible = "fixed-clock";
168 clock-frequency = <19200000>;
171 virt_24000000_ck: virt_24000000_ck {
173 compatible = "fixed-clock";
174 clock-frequency = <24000000>;
177 virt_25000000_ck: virt_25000000_ck {
179 compatible = "fixed-clock";
180 clock-frequency = <25000000>;
183 virt_26000000_ck: virt_26000000_ck {
185 compatible = "fixed-clock";
186 clock-frequency = <26000000>;
189 tclkin_ck: tclkin_ck {
191 compatible = "fixed-clock";
192 clock-frequency = <26000000>;
195 dpll_core_ck: dpll_core_ck {
197 compatible = "ti,am3-dpll-core-clock";
198 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
199 reg = <0x2d20>, <0x2d24>, <0x2d2c>, <0x2d48>, <0x2d4c>;
202 dpll_core_x2_ck: dpll_core_x2_ck {
204 compatible = "ti,am3-dpll-x2-clock";
205 clocks = <&dpll_core_ck>;
208 dpll_core_m4_ck: dpll_core_m4_ck {
210 compatible = "ti,divider-clock";
211 clocks = <&dpll_core_x2_ck>;
213 ti,autoidle-shift = <8>;
215 ti,index-starts-at-one;
216 ti,invert-autoidle-bit;
219 dpll_core_m5_ck: dpll_core_m5_ck {
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_m6_ck: dpll_core_m6_ck {
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_mpu_ck: dpll_mpu_ck {
243 compatible = "ti,am3-dpll-clock";
244 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
245 reg = <0x2d60>, <0x2d64>, <0x2d6c>, <0x2d88>, <0x2d8c>;
248 dpll_mpu_m2_ck: dpll_mpu_m2_ck {
250 compatible = "ti,divider-clock";
251 clocks = <&dpll_mpu_ck>;
253 ti,autoidle-shift = <8>;
255 ti,index-starts-at-one;
256 ti,invert-autoidle-bit;
259 dpll_ddr_ck: dpll_ddr_ck {
261 compatible = "ti,am3-dpll-clock";
262 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
263 reg = <0x2da0>, <0x2da4>, <0x2dac>, <0x2dc8>, <0x2dcc>;
266 dpll_ddr_m2_ck: dpll_ddr_m2_ck {
268 compatible = "ti,divider-clock";
269 clocks = <&dpll_ddr_ck>;
271 ti,autoidle-shift = <8>;
273 ti,index-starts-at-one;
274 ti,invert-autoidle-bit;
277 dpll_disp_ck: dpll_disp_ck {
279 compatible = "ti,am3-dpll-clock";
280 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
281 reg = <0x2e20>, <0x2e24>, <0x2e2c>, <0x2e48>, <0x2e4c>;
284 dpll_disp_m2_ck: dpll_disp_m2_ck {
286 compatible = "ti,divider-clock";
287 clocks = <&dpll_disp_ck>;
289 ti,autoidle-shift = <8>;
291 ti,index-starts-at-one;
292 ti,invert-autoidle-bit;
296 dpll_per_ck: dpll_per_ck {
298 compatible = "ti,am3-dpll-j-type-clock";
299 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
300 reg = <0x2de0>, <0x2de4>, <0x2dec>, <0x2e08>, <0x2e0c>;
303 dpll_per_m2_ck: dpll_per_m2_ck {
305 compatible = "ti,divider-clock";
306 clocks = <&dpll_per_ck>;
308 ti,autoidle-shift = <8>;
310 ti,index-starts-at-one;
311 ti,invert-autoidle-bit;
314 dpll_per_m2_div4_wkupdm_ck: dpll_per_m2_div4_wkupdm_ck {
316 compatible = "fixed-factor-clock";
317 clocks = <&dpll_per_m2_ck>;
322 dpll_per_m2_div4_ck: dpll_per_m2_div4_ck {
324 compatible = "fixed-factor-clock";
325 clocks = <&dpll_per_m2_ck>;
330 clk_24mhz: clk_24mhz {
332 compatible = "fixed-factor-clock";
333 clocks = <&dpll_per_m2_ck>;
338 clkdiv32k_ck: clkdiv32k_ck {
340 compatible = "fixed-factor-clock";
341 clocks = <&clk_24mhz>;
346 clkdiv32k_ick: clkdiv32k_ick {
348 compatible = "ti,gate-clock";
349 clocks = <&clkdiv32k_ck>;
354 sysclk_div: sysclk_div {
356 compatible = "fixed-factor-clock";
357 clocks = <&dpll_core_m4_ck>;
362 pruss_ocp_gclk: pruss_ocp_gclk {
364 compatible = "ti,mux-clock";
365 clocks = <&sysclk_div>, <&dpll_disp_m2_ck>;
369 clk_32k_tpm_ck: clk_32k_tpm_ck {
371 compatible = "fixed-clock";
372 clock-frequency = <32768>;
375 timer1_fck: timer1_fck {
377 compatible = "ti,mux-clock";
378 clocks = <&sys_clkin_ck>, <&clkdiv32k_ick>, <&tclkin_ck>, <&clk_rc32k_ck>, <&clk_32768_ck>, <&clk_32k_tpm_ck>;
382 timer2_fck: timer2_fck {
384 compatible = "ti,mux-clock";
385 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
389 timer3_fck: timer3_fck {
391 compatible = "ti,mux-clock";
392 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
396 timer4_fck: timer4_fck {
398 compatible = "ti,mux-clock";
399 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
403 timer5_fck: timer5_fck {
405 compatible = "ti,mux-clock";
406 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
410 timer6_fck: timer6_fck {
412 compatible = "ti,mux-clock";
413 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
417 timer7_fck: timer7_fck {
419 compatible = "ti,mux-clock";
420 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
426 compatible = "ti,mux-clock";
427 clocks = <&clk_rc32k_ck>, <&clkdiv32k_ick>;
433 compatible = "fixed-factor-clock";
434 clocks = <&dpll_core_m4_ck>;
439 dpll_core_m4_div2_ck: dpll_core_m4_div2_ck {
441 compatible = "fixed-factor-clock";
442 clocks = <&sysclk_div>;
447 l4hs_gclk: l4hs_gclk {
449 compatible = "fixed-factor-clock";
450 clocks = <&dpll_core_m4_ck>;
457 compatible = "fixed-factor-clock";
458 clocks = <&dpll_core_m4_div2_ck>;
463 l4ls_gclk: l4ls_gclk {
465 compatible = "fixed-factor-clock";
466 clocks = <&dpll_core_m4_div2_ck>;
471 cpsw_125mhz_gclk: cpsw_125mhz_gclk {
473 compatible = "fixed-factor-clock";
474 clocks = <&dpll_core_m5_ck>;
479 cpsw_cpts_rft_clk: cpsw_cpts_rft_clk {
481 compatible = "ti,mux-clock";
482 clocks = <&sysclk_div>, <&dpll_core_m5_ck>, <&dpll_disp_m2_ck>;
486 clk_32k_mosc_ck: clk_32k_mosc_ck {
488 compatible = "fixed-clock";
489 clock-frequency = <32768>;
492 gpio0_dbclk_mux_ck: gpio0_dbclk_mux_ck {
494 compatible = "ti,mux-clock";
495 clocks = <&clk_rc32k_ck>, <&clk_32768_ck>, <&clkdiv32k_ick>, <&clk_32k_mosc_ck>, <&clk_32k_tpm_ck>;
499 gpio0_dbclk: gpio0_dbclk {
501 compatible = "ti,gate-clock";
502 clocks = <&gpio0_dbclk_mux_ck>;
507 gpio1_dbclk: gpio1_dbclk {
509 compatible = "ti,gate-clock";
510 clocks = <&clkdiv32k_ick>;
515 gpio2_dbclk: gpio2_dbclk {
517 compatible = "ti,gate-clock";
518 clocks = <&clkdiv32k_ick>;
523 gpio3_dbclk: gpio3_dbclk {
525 compatible = "ti,gate-clock";
526 clocks = <&clkdiv32k_ick>;
531 gpio4_dbclk: gpio4_dbclk {
533 compatible = "ti,gate-clock";
534 clocks = <&clkdiv32k_ick>;
539 gpio5_dbclk: gpio5_dbclk {
541 compatible = "ti,gate-clock";
542 clocks = <&clkdiv32k_ick>;
549 compatible = "fixed-factor-clock";
550 clocks = <&dpll_per_m2_ck>;
555 gfx_fclk_clksel_ck: gfx_fclk_clksel_ck {
557 compatible = "ti,mux-clock";
558 clocks = <&sysclk_div>, <&dpll_per_m2_ck>;
563 gfx_fck_div_ck: gfx_fck_div_ck {
565 compatible = "ti,divider-clock";
566 clocks = <&gfx_fclk_clksel_ck>;
573 compatible = "ti,mux-clock";
574 clocks = <&dpll_disp_m2_ck>, <&dpll_core_m5_ck>, <&dpll_per_m2_ck>;
579 dpll_extdev_ck: dpll_extdev_ck {
581 compatible = "ti,am3-dpll-clock";
582 clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
583 reg = <0x2e60>, <0x2e64>, <0x2e6c>, <0x2e88>, <0x2e8c>;
586 dpll_extdev_m2_ck: dpll_extdev_m2_ck {
588 compatible = "ti,divider-clock";
589 clocks = <&dpll_extdev_ck>;
591 ti,autoidle-shift = <8>;
593 ti,index-starts-at-one;
594 ti,invert-autoidle-bit;
597 mux_synctimer32k_ck: mux_synctimer32k_ck {
599 compatible = "ti,mux-clock";
600 clocks = <&clk_32768_ck>, <&clk_32k_tpm_ck>, <&clkdiv32k_ick>;
604 synctimer_32kclk: synctimer_32kclk {
606 compatible = "ti,gate-clock";
607 clocks = <&mux_synctimer32k_ck>;
612 timer8_fck: timer8_fck {
614 compatible = "ti,mux-clock";
615 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
619 timer9_fck: timer9_fck {
621 compatible = "ti,mux-clock";
622 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
626 timer10_fck: timer10_fck {
628 compatible = "ti,mux-clock";
629 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
633 timer11_fck: timer11_fck {
635 compatible = "ti,mux-clock";
636 clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
640 cpsw_50m_clkdiv: cpsw_50m_clkdiv {
642 compatible = "fixed-factor-clock";
643 clocks = <&dpll_core_m5_ck>;
648 cpsw_5m_clkdiv: cpsw_5m_clkdiv {
650 compatible = "fixed-factor-clock";
651 clocks = <&cpsw_50m_clkdiv>;
656 dpll_ddr_x2_ck: dpll_ddr_x2_ck {
658 compatible = "ti,am3-dpll-x2-clock";
659 clocks = <&dpll_ddr_ck>;
662 dpll_ddr_m4_ck: dpll_ddr_m4_ck {
664 compatible = "ti,divider-clock";
665 clocks = <&dpll_ddr_x2_ck>;
667 ti,autoidle-shift = <8>;
669 ti,index-starts-at-one;
670 ti,invert-autoidle-bit;
673 dpll_per_clkdcoldo: dpll_per_clkdcoldo {
675 compatible = "ti,fixed-factor-clock";
676 clocks = <&dpll_per_ck>;
679 ti,autoidle-shift = <8>;
681 ti,invert-autoidle-bit;
684 dll_aging_clk_div: dll_aging_clk_div {
686 compatible = "ti,divider-clock";
687 clocks = <&sys_clkin_ck>;
689 ti,dividers = <8>, <16>, <32>;
692 div_core_25m_ck: div_core_25m_ck {
694 compatible = "fixed-factor-clock";
695 clocks = <&sysclk_div>;
700 func_12m_clk: func_12m_clk {
702 compatible = "fixed-factor-clock";
703 clocks = <&dpll_per_m2_ck>;
708 vtp_clk_div: vtp_clk_div {
710 compatible = "fixed-factor-clock";
711 clocks = <&sys_clkin_ck>;
716 usbphy_32khz_clkmux: usbphy_32khz_clkmux {
718 compatible = "ti,mux-clock";
719 clocks = <&clk_32768_ck>, <&clk_32k_tpm_ck>;
723 usb_phy0_always_on_clk32k: usb_phy0_always_on_clk32k {
725 compatible = "ti,gate-clock";
726 clocks = <&usbphy_32khz_clkmux>;
731 usb_phy1_always_on_clk32k: usb_phy1_always_on_clk32k {
733 compatible = "ti,gate-clock";
734 clocks = <&usbphy_32khz_clkmux>;
739 usb_otg_ss0_refclk960m: usb_otg_ss0_refclk960m {
741 compatible = "ti,gate-clock";
742 clocks = <&dpll_per_clkdcoldo>;
747 usb_otg_ss1_refclk960m: usb_otg_ss1_refclk960m {
749 compatible = "ti,gate-clock";
750 clocks = <&dpll_per_clkdcoldo>;