Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: am43xx: add support for clkout1 clock

clkout1 clock node and its generation tree was missing. Add this based
on the data on TRM and PRCM functional spec.

commit 664ae1ab2536 ("ARM: dts: am43xx: add clkctrl nodes") effectively
reverted this commit 8010f13a40d3 ("ARM: dts: am43xx: add support for
clkout1 clock") which is needed for the ov2659 camera sensor clock
definition hence it is being re-applied here.

Note that because of the current dts node name dependency for mapping to
clock domain, we must still use "clkout1-*ck" naming instead of generic
"clock@" naming for the node. And because of this, it's probably best to
apply the dts node addition together along with the other clock changes.

Fixes: 664ae1ab2536 ("ARM: dts: am43xx: add clkctrl nodes")
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Tested-by: Benoit Parrot <bparrot@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Benoit Parrot <bparrot@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>

authored by

Tero Kristo and committed by
Tony Lindgren
01053dad 3bd7b487

+54
+54
arch/arm/boot/dts/am43xx-clocks.dtsi
··· 704 704 ti,bit-shift = <8>; 705 705 reg = <0x2a48>; 706 706 }; 707 + 708 + clkout1_osc_div_ck: clkout1-osc-div-ck { 709 + #clock-cells = <0>; 710 + compatible = "ti,divider-clock"; 711 + clocks = <&sys_clkin_ck>; 712 + ti,bit-shift = <20>; 713 + ti,max-div = <4>; 714 + reg = <0x4100>; 715 + }; 716 + 717 + clkout1_src2_mux_ck: clkout1-src2-mux-ck { 718 + #clock-cells = <0>; 719 + compatible = "ti,mux-clock"; 720 + clocks = <&clk_rc32k_ck>, <&sysclk_div>, <&dpll_ddr_m2_ck>, 721 + <&dpll_per_m2_ck>, <&dpll_disp_m2_ck>, 722 + <&dpll_mpu_m2_ck>; 723 + reg = <0x4100>; 724 + }; 725 + 726 + clkout1_src2_pre_div_ck: clkout1-src2-pre-div-ck { 727 + #clock-cells = <0>; 728 + compatible = "ti,divider-clock"; 729 + clocks = <&clkout1_src2_mux_ck>; 730 + ti,bit-shift = <4>; 731 + ti,max-div = <8>; 732 + reg = <0x4100>; 733 + }; 734 + 735 + clkout1_src2_post_div_ck: clkout1-src2-post-div-ck { 736 + #clock-cells = <0>; 737 + compatible = "ti,divider-clock"; 738 + clocks = <&clkout1_src2_pre_div_ck>; 739 + ti,bit-shift = <8>; 740 + ti,max-div = <32>; 741 + ti,index-power-of-two; 742 + reg = <0x4100>; 743 + }; 744 + 745 + clkout1_mux_ck: clkout1-mux-ck { 746 + #clock-cells = <0>; 747 + compatible = "ti,mux-clock"; 748 + clocks = <&clkout1_osc_div_ck>, <&clk_rc32k_ck>, 749 + <&clkout1_src2_post_div_ck>, <&dpll_extdev_m2_ck>; 750 + ti,bit-shift = <16>; 751 + reg = <0x4100>; 752 + }; 753 + 754 + clkout1_ck: clkout1-ck { 755 + #clock-cells = <0>; 756 + compatible = "ti,gate-clock"; 757 + clocks = <&clkout1_mux_ck>; 758 + ti,bit-shift = <23>; 759 + reg = <0x4100>; 760 + }; 707 761 }; 708 762 709 763 &prcm {