[PATCH v2 1/1] arm64: dts: ti: k3-j722s-evm: Switch audio codec clock from audio_refclk1 to external clock
Jared McArthur
j-mcarthur at ti.com
Tue Aug 4 14:05:58 PDT 2026
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 <j-mcarthur at ti.com>
Tested-by: Moteen Shah <m-shah at ti.com>
---
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/20260724203250.1914444-1-j-mcarthur@ti.com/
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
More information about the linux-arm-kernel
mailing list