diff options
author | Max Krummenacher <max.krummenacher@toradex.com> | 2021-02-11 22:11:22 +0100 |
---|---|---|
committer | Max Krummenacher <max.krummenacher@toradex.com> | 2021-02-17 17:44:32 +0100 |
commit | 0aea256cdcc4eeac9a8574add69aa8fabe40af0b (patch) | |
tree | 3efe01422330a6019d893430c0eeefa7b0cb529f | |
parent | 91bb38ca90a900698c381a8fa1f5a3289fccaccf (diff) |
arm64: dts: imx8mp-verdin: add dev board audio codec
The carrier boards V1.1 now uses a Nuvoton NAU88C22YG audio codec.
Add the relevant device tree nodes and delete the ones for the WM8904.
Related-to: ELB-3503
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
-rwxr-xr-x | arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi | 48 | ||||
-rwxr-xr-x | arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi | 57 | ||||
-rwxr-xr-x | arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi | 43 |
3 files changed, 90 insertions, 58 deletions
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi index 3246b59703fc..0cd10ff906cb 100755 --- a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi @@ -3,6 +3,35 @@ * Copyright 2020 Toradex */ +/ { + sound_card: sound-card { + compatible = "simple-audio-card"; + simple-audio-card,bitclock-master = <&dailink_master>; + simple-audio-card,format = "i2s"; + simple-audio-card,frame-master = <&dailink_master>; + simple-audio-card,name = "imx8mp-wm8904"; + simple-audio-card,routing = + "Headphone Jack", "HPOUTL", + "Headphone Jack", "HPOUTR", + "IN2L", "Line In Jack", + "IN2R", "Line In Jack", + "Headphone Jack", "MICBIAS", + "IN1L", "Headphone Jack"; + simple-audio-card,widgets = + "Headphone", "Headphone Jack", + "Line", "Line In Jack"; + + dailink_master: simple-audio-card,codec { + sound-dai = <&wm8904_1a>; + clocks = <&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; + }; + + simple-audio-card,cpu { + sound-dai = <&sai1>; + }; + }; +}; + /* Verdin SPI_1 */ &ecspi1 { status = "okay"; @@ -57,6 +86,20 @@ &i2c4 { status = "okay"; + + /* Audio Codec */ + wm8904_1a: codec@1a { + compatible = "wlf,wm8904"; + #sound-dai-cells = <0>; + clocks = <&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; + clock-names = "mclk"; + reg = <0x1a>; + DCVDD-supply = <®_3p3v>; + DBVDD-supply = <®_3p3v>; + AVDD-supply = <®_3p3v>; + CPVDD-supply = <®_3p3v>; + MICVDD-supply = <®_3p3v>; + }; }; /* Verdin PCIE_1 */ @@ -139,8 +182,3 @@ &usdhc2 { status = "okay"; }; - -/* Audio Codec */ -&wm8904_1a { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi index 41a58f458fb5..d0654ea110db 100755 --- a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi @@ -6,6 +6,40 @@ #include "imx8mp-verdin-dahlia.dtsi" / { + sound_card: sound-card { + compatible = "simple-audio-card"; + simple-audio-card,bitclock-master = <&dailink_master>; + simple-audio-card,format = "i2s"; + simple-audio-card,frame-master = <&dailink_master>; + simple-audio-card,name = "imx8mp-nau8822"; + simple-audio-card,routing = + "Headphones", "LHP", + "Headphones", "RHP", + "Speaker", "LSPK", + "Speaker", "RSPK", + "Line Out", "AUXOUT1", + "Line Out", "AUXOUT2", + "LAUX", "Line In", + "RAUX", "Line In", + "LMICP", "Mic In", + "RMICP", "Mic In"; + simple-audio-card,widgets = + "Headphones", "Headphones", + "Line Out", "Line Out", + "Speaker", "Speaker", + "Microphone", "Mic In", + "Line", "Line In"; + + dailink_master: simple-audio-card,codec { + sound-dai = <&nau8822_1a>; + clocks = <&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; + }; + + simple-audio-card,cpu { + sound-dai = <&sai1>; + }; + }; + sound-hdmi { compatible = "fsl,imx-audio-cdnhdmi"; model = "audio-hdmi"; @@ -62,6 +96,16 @@ status = "okay"; }; +/* Verdin I2C_1 */ +&i2c4 { + /* Audio Codec */ + nau8822_1a: codec-nau@1a { + compatible = "nuvoton,nau8822"; + #sound-dai-cells = <0>; + reg = <0x1a>; + }; +}; + &irqsteer_hdmi { status = "okay"; }; @@ -79,13 +123,6 @@ status = "okay"; }; -&sound_card { - simple-audio-card,routing = - "Headphone Jack", "HPOUTL", - "Headphone Jack", "HPOUTR", - "IN2L", "Line In Jack", - "IN2R", "Line In Jack", - "Microphone Jack", "MICBIAS", - "IN1L", "Microphone Jack", - "IN1R", "Microphone Jack"; -}; +&wm8904_1a { + status = "disabled"; +};
\ No newline at end of file diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi index 728628f0505d..305ffca1c10a 100755 --- a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi @@ -129,34 +129,6 @@ reg = <0 0x55800000 0 0x800000>; }; }; - - sound_card: sound-card { - compatible = "simple-audio-card"; - simple-audio-card,bitclock-master = <&dailink_master>; - simple-audio-card,format = "i2s"; - simple-audio-card,frame-master = <&dailink_master>; - simple-audio-card,name = "imx8mm-wm8904"; - simple-audio-card,routing = - "Headphone Jack", "HPOUTL", - "Headphone Jack", "HPOUTR", - "IN2L", "Line In Jack", - "IN2R", "Line In Jack", - "Headphone Jack", "MICBIAS", - "IN1L", "Headphone Jack"; - simple-audio-card,widgets = - "Microphone", "Microphone Jack", - "Headphone", "Headphone Jack", - "Line", "Line In Jack"; - - dailink_master: simple-audio-card,codec { - sound-dai = <&wm8904_1a>; - clocks = <&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; - }; - - simple-audio-card,cpu { - sound-dai = <&sai1>; - }; - }; }; &A53_0 { @@ -494,21 +466,6 @@ scl-gpios = <&gpio5 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; sda-gpios = <&gpio5 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; - /* Audio Codec */ - wm8904_1a: codec@1a { - compatible = "wlf,wm8904"; - #sound-dai-cells = <0>; - clocks = <&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; - clock-names = "mclk"; - reg = <0x1a>; - status = "disabled"; - DCVDD-supply = <®_3p3v>; - DBVDD-supply = <®_3p3v>; - AVDD-supply = <®_3p3v>; - CPVDD-supply = <®_3p3v>; - MICVDD-supply = <®_3p3v>; - }; - gpio_expander_21: gpio-expander@21 { compatible = "nxp,pcal6416"; #gpio-cells = <2>; |