[PATCH v2 1/1] arm64: dts: ti: k3-j722s-evm: Switch audio codec clock from audio_refclk1 to external clock
Jared McArthur <[email protected]> Tue, 4 Aug 2026 16:05:58 -0500
| Newsgroups | gmane.linux.kernel,gmane.linux.drivers.devicetree,gmane.linux.ports.arm.kernel |
|---|---|
| Message-ID | <[email protected]> |
In revision PROC170E1 of the J722SXH01EVM [0], the audio codec's (TLV320AIC3106IRGZT [1]) MCLK was provided by the AUDIO_EXT_REFCLK1 (96MHz). Revisions PROC170E2 and later switched the MCLK's source to an external LMK6CE012288CDLFT [2] oscillator (12.288MHz). The PROC170E1 revision of the board is not publicly available. Fix the audio codec's clock by creating a new fixed clock node with a frequency of 12.288MHz, and switch the audio codec's clock from the audio_refclk1 to the new fixed clock. Remove pinmuxing and clock muxing for the audio_refclk1. [0] https://www.ti.com/lit/zip/SPRR495 [1] https://www.ti.com/lit/gpn/TLV320AIC3106 [2] https://www.ti.com/lit/gpn/lmk6c Signed-off-by: Jared McArthur <[email protected]> Tested-by: Moteen Shah <[email protected]> --- v2 changes: - Change the audio codec mclk's name from lmk6x-clk to clock-12288000 to resolve sashiko-bot's issue - Change the alias from lmk6x_clk to tlv320_mclk (this mimics the k3-am62a7-sk.dts) v1: - Link: https://lore.kernel.org/all/[email protected]/ arch/arm64/boot/dts/ti/k3-j722s-evm.dts | 25 +++++++------------------ 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/arch/arm64/boot/dts/ti/k3-j722s-evm.dts b/arch/arm64/boot/dts/ti/k3-j722s-evm.dts index e66330c71593a..90c3e3c9c496e 100644 --- a/arch/arm64/boot/dts/ti/k3-j722s-evm.dts +++ b/arch/arm64/boot/dts/ti/k3-j722s-evm.dts @@ -162,6 +162,12 @@ vsys_io_1v2: regulator-vsys-io-1v2 { regulator-boot-on; }; + tlv320_mclk: clock-12288000 { + compatible = "fixed-clock"; + clock-frequency = <12288000>; + #clock-cells = <0>; + }; + codec_audio: sound { compatible = "simple-audio-card"; simple-audio-card,name = "J722S-EVM"; @@ -187,7 +193,7 @@ simple-audio-card,cpu { sound_master: simple-audio-card,codec { sound-dai = <&tlv320aic3106>; - clocks = <&audio_refclk1>; + clocks = <&tlv320_mclk>; }; }; @@ -228,11 +234,6 @@ csi23_mux: mux-controller-1 { }; }; -&audio_refclk1 { - assigned-clocks = <&k3_clks 157 0>; - assigned-clock-parents = <&k3_clks 157 15>; -}; - &cpsw_mac_syscon { bootph-all; }; @@ -358,12 +359,6 @@ J722S_IOPAD(0x0084, PIN_INPUT, 2) /* (N21) GPMC0_ADVn_ALE.MCASP1_AXR2 */ >; }; - audio_ext_refclk1_pins_default: audio-ext-refclk1-default-pins { - pinctrl-single,pins = < - J722S_IOPAD(0x00a0, PIN_OUTPUT, 1) /* (N24) GPMC0_WPn.AUDIO_EXT_REFCLK1 */ - >; - }; - pmic_irq_pins_default: pmic-irq-default-pins { pinctrl-single,pins = < J722S_IOPAD(0x030, PIN_INPUT, 7) /* (K23) GPIO0_12 */ @@ -562,12 +557,6 @@ ldo3: ldo3 { }; }; -&k3_clks { - /* Configure AUDIO_EXT_REFCLK1 pin as output */ - pinctrl-names = "default"; - pinctrl-0 = <&audio_ext_refclk1_pins_default>; -}; - &main_i2c0 { pinctrl-names = "default"; pinctrl-0 = <&main_i2c0_pins_default>; -- 2.34.1