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

ARM: dts: sunxi: Add CEC clock to DW-HDMI

Experimentation determined that HDMI CEC controller inside DW HDMI block
depends on 32k clock from RTC. If this clock is tampered with, HDMI CEC
communication starts or stops working, depending on situation.

SoC user manual doesn't say anything about CEC, so this was overlooked.
Fix this by adding dependency to RTC 32k clock.

Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://lore.kernel.org/r/20211120073448.32480-3-jernej.skrabec@gmail.com

authored by

Jernej Skrabec and committed by
Maxime Ripard
38df5750 3047444d

+4 -4
+2 -2
arch/arm/boot/dts/sun8i-r40.dtsi
··· 1212 1212 reg-io-width = <1>; 1213 1213 interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>; 1214 1214 clocks = <&ccu CLK_BUS_HDMI0>, <&ccu CLK_HDMI_SLOW>, 1215 - <&ccu CLK_HDMI>; 1216 - clock-names = "iahb", "isfr", "tmds"; 1215 + <&ccu CLK_HDMI>, <&rtc 0>; 1216 + clock-names = "iahb", "isfr", "tmds", "cec"; 1217 1217 resets = <&ccu RST_BUS_HDMI1>; 1218 1218 reset-names = "ctrl"; 1219 1219 phys = <&hdmi_phy>;
+2 -2
arch/arm/boot/dts/sunxi-h3-h5.dtsi
··· 813 813 reg-io-width = <1>; 814 814 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; 815 815 clocks = <&ccu CLK_BUS_HDMI>, <&ccu CLK_HDMI_DDC>, 816 - <&ccu CLK_HDMI>; 817 - clock-names = "iahb", "isfr", "tmds"; 816 + <&ccu CLK_HDMI>, <&rtc 0>; 817 + clock-names = "iahb", "isfr", "tmds", "cec"; 818 818 resets = <&ccu RST_BUS_HDMI1>; 819 819 reset-names = "ctrl"; 820 820 phys = <&hdmi_phy>;