diff mbox series

ARM: dts: imx6sll-evk: Add audio sound card node

Message ID 1596714629-16425-1-git-send-email-shengjiu.wang@nxp.com
State Superseded
Headers show
Series ARM: dts: imx6sll-evk: Add audio sound card node | expand

Commit Message

Shengjiu Wang Aug. 6, 2020, 11:50 a.m. UTC
Add audio sound card node, which depends on codec node,
SSI node, audmux node.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>

---
 arch/arm/boot/dts/imx6sll-evk.dts | 74 +++++++++++++++++++++++++++++++
 1 file changed, 74 insertions(+)

-- 
2.27.0

Comments

Fabio Estevam Aug. 17, 2020, 1:47 p.m. UTC | #1
Hi Shengjiu,

On Thu, Aug 6, 2020 at 8:55 AM Shengjiu Wang <shengjiu.wang@nxp.com> wrote:
>

> Add audio sound card node, which depends on codec node,

> SSI node, audmux node.

>

> Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>

> ---

>  arch/arm/boot/dts/imx6sll-evk.dts | 74 +++++++++++++++++++++++++++++++

>  1 file changed, 74 insertions(+)

>

> diff --git a/arch/arm/boot/dts/imx6sll-evk.dts b/arch/arm/boot/dts/imx6sll-evk.dts

> index 5ace9e6acf85..45bf5e61e960 100644

> --- a/arch/arm/boot/dts/imx6sll-evk.dts

> +++ b/arch/arm/boot/dts/imx6sll-evk.dts

> @@ -132,6 +132,29 @@ panel_in: endpoint {

>                         };

>                 };

>         };

> +

> +       sound {

> +               compatible = "fsl,imx6sl-evk-wm8962", "fsl,imx-audio-wm8962";

> +               model = "wm8962-audio";

> +               audio-cpu = <&ssi2>;

> +               audio-codec = <&codec>;

> +               audio-routing =

> +                       "Headphone Jack", "HPOUTL",

> +                       "Headphone Jack", "HPOUTR",

> +                       "Ext Spk", "SPKOUTL",

> +                       "Ext Spk", "SPKOUTR",

> +                       "AMIC", "MICBIAS",

> +                       "IN3R", "AMIC";

> +               mux-int-port = <2>;

> +               mux-ext-port = <3>;

> +               hp-det-gpio = <&gpio4 24 GPIO_ACTIVE_LOW>;

> +       };

> +};

> +

> +&audmux {

> +       pinctrl-names = "default";

> +       pinctrl-0 = <&pinctrl_audmux3>;

> +       status = "okay";

>  };

>

>  &cpu0 {

> @@ -247,6 +270,27 @@ vgen6_reg: vgen6 {

>         };

>  };

>

> +&i2c3 {

> +       clock-frequency = <100000>;

> +       pinctrl-names = "default";

> +       pinctrl-0 = <&pinctrl_i2c3>;

> +       status = "okay";

> +

> +       codec: wm8962@1a {


Node names should be generic:

wm8962: audio-codec@1a

> +               compatible = "wlf,wm8962";

> +               reg = <0x1a>;

> +               clocks = <&clks IMX6SLL_CLK_EXTERN_AUDIO>;

> +               DCVDD-supply = <&vgen3_reg>;

> +               DBVDD-supply = <&reg_aud3v>;

> +               AVDD-supply = <&vgen3_reg>;

> +               CPVDD-supply = <&vgen3_reg>;

> +               MICVDD-supply = <&reg_aud3v>;

> +               PLLVDD-supply = <&vgen3_reg>;

> +               SPKVDD1-supply = <&reg_aud4v>;

> +               SPKVDD2-supply = <&reg_aud4v>;

> +       };

> +};

> +

>  &lcdif {

>         pinctrl-names = "default";

>         pinctrl-0 = <&pinctrl_lcd>;

> @@ -273,6 +317,10 @@ &snvs_pwrkey {

>         status = "okay";

>  };

>

> +&ssi2 {

> +       status = "okay";

> +};

> +

>  &uart1 {

>         pinctrl-names = "default";

>         pinctrl-0 = <&pinctrl_uart1>;

> @@ -329,6 +377,25 @@ &wdog1 {

>  };

>

>  &iomuxc {

> +       pinctrl-names = "default";

> +       pinctrl-0 = <&pinctrl_hog>;

> +

> +       pinctrl_audmux3: audmux3grp {

> +               fsl,pins = <

> +                       MX6SLL_PAD_AUD_TXC__AUD3_TXC            0x4130b0

> +                       MX6SLL_PAD_AUD_TXFS__AUD3_TXFS          0x4130b0

> +                       MX6SLL_PAD_AUD_TXD__AUD3_TXD            0x4110b0

> +                       MX6SLL_PAD_AUD_RXD__AUD3_RXD            0x4130b0

> +                       MX6SLL_PAD_AUD_MCLK__AUDIO_CLK_OUT      0x4130b0

> +               >;

> +       };

> +

> +       pinctrl_hog: hoggrp {

> +               fsl,pins = <

> +                       MX6SLL_PAD_GPIO4_IO24__GPIO4_IO24 0x17059 /* HP DETECT */


Please place it under audmux3 group for consistency.
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/imx6sll-evk.dts b/arch/arm/boot/dts/imx6sll-evk.dts
index 5ace9e6acf85..45bf5e61e960 100644
--- a/arch/arm/boot/dts/imx6sll-evk.dts
+++ b/arch/arm/boot/dts/imx6sll-evk.dts
@@ -132,6 +132,29 @@  panel_in: endpoint {
 			};
 		};
 	};
+
+	sound {
+		compatible = "fsl,imx6sl-evk-wm8962", "fsl,imx-audio-wm8962";
+		model = "wm8962-audio";
+		audio-cpu = <&ssi2>;
+		audio-codec = <&codec>;
+		audio-routing =
+			"Headphone Jack", "HPOUTL",
+			"Headphone Jack", "HPOUTR",
+			"Ext Spk", "SPKOUTL",
+			"Ext Spk", "SPKOUTR",
+			"AMIC", "MICBIAS",
+			"IN3R", "AMIC";
+		mux-int-port = <2>;
+		mux-ext-port = <3>;
+		hp-det-gpio = <&gpio4 24 GPIO_ACTIVE_LOW>;
+	};
+};
+
+&audmux {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_audmux3>;
+	status = "okay";
 };
 
 &cpu0 {
@@ -247,6 +270,27 @@  vgen6_reg: vgen6 {
 	};
 };
 
+&i2c3 {
+	clock-frequency = <100000>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_i2c3>;
+	status = "okay";
+
+	codec: wm8962@1a {
+		compatible = "wlf,wm8962";
+		reg = <0x1a>;
+		clocks = <&clks IMX6SLL_CLK_EXTERN_AUDIO>;
+		DCVDD-supply = <&vgen3_reg>;
+		DBVDD-supply = <&reg_aud3v>;
+		AVDD-supply = <&vgen3_reg>;
+		CPVDD-supply = <&vgen3_reg>;
+		MICVDD-supply = <&reg_aud3v>;
+		PLLVDD-supply = <&vgen3_reg>;
+		SPKVDD1-supply = <&reg_aud4v>;
+		SPKVDD2-supply = <&reg_aud4v>;
+	};
+};
+
 &lcdif {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_lcd>;
@@ -273,6 +317,10 @@  &snvs_pwrkey {
 	status = "okay";
 };
 
+&ssi2 {
+	status = "okay";
+};
+
 &uart1 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_uart1>;
@@ -329,6 +377,25 @@  &wdog1 {
 };
 
 &iomuxc {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_hog>;
+
+	pinctrl_audmux3: audmux3grp {
+		fsl,pins = <
+			MX6SLL_PAD_AUD_TXC__AUD3_TXC		0x4130b0
+			MX6SLL_PAD_AUD_TXFS__AUD3_TXFS		0x4130b0
+			MX6SLL_PAD_AUD_TXD__AUD3_TXD		0x4110b0
+			MX6SLL_PAD_AUD_RXD__AUD3_RXD		0x4130b0
+			MX6SLL_PAD_AUD_MCLK__AUDIO_CLK_OUT	0x4130b0
+		>;
+	};
+
+	pinctrl_hog: hoggrp {
+		fsl,pins = <
+			MX6SLL_PAD_GPIO4_IO24__GPIO4_IO24 0x17059 /* HP DETECT */
+		>;
+	};
+
 	pinctrl_reg_sd3_vmmc: sd3vmmcgrp {
 		fsl,pins = <
 			MX6SLL_PAD_KEY_COL6__GPIO4_IO04 0x17059
@@ -448,6 +515,13 @@  MX6SLL_PAD_I2C1_SDA__I2C1_SDA	 0x4001b8b1
 		>;
 	};
 
+	pinctrl_i2c3: i2c3grp {
+		fsl,pins = <
+			MX6SLL_PAD_AUD_RXFS__I2C3_SCL  0x4041b8b1
+			MX6SLL_PAD_AUD_RXC__I2C3_SDA   0x4041b8b1
+		>;
+	};
+
 	pinctrl_lcd: lcdgrp {
 		fsl,pins = <
 			MX6SLL_PAD_LCD_DATA00__LCD_DATA00	0x79