summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Krummenacher <max.krummenacher@toradex.com>2021-02-11 22:11:22 +0100
committerMax Krummenacher <max.krummenacher@toradex.com>2021-02-17 17:44:32 +0100
commit0aea256cdcc4eeac9a8574add69aa8fabe40af0b (patch)
tree3efe01422330a6019d893430c0eeefa7b0cb529f
parent91bb38ca90a900698c381a8fa1f5a3289fccaccf (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-xarch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi48
-rwxr-xr-xarch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi57
-rwxr-xr-xarch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi43
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 = <&reg_3p3v>;
+ DBVDD-supply = <&reg_3p3v>;
+ AVDD-supply = <&reg_3p3v>;
+ CPVDD-supply = <&reg_3p3v>;
+ MICVDD-supply = <&reg_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 = <&reg_3p3v>;
- DBVDD-supply = <&reg_3p3v>;
- AVDD-supply = <&reg_3p3v>;
- CPVDD-supply = <&reg_3p3v>;
- MICVDD-supply = <&reg_3p3v>;
- };
-
gpio_expander_21: gpio-expander@21 {
compatible = "nxp,pcal6416";
#gpio-cells = <2>;