[PATCH v2 2/2] ARM: dts: imx6sl-evk: Add audio support
Shawn Guo
shawn.guo at linaro.org
Thu Feb 6 03:09:07 EST 2014
On Wed, Jan 29, 2014 at 09:58:15AM -0200, Fabio Estevam wrote:
> From: Fabio Estevam <fabio.estevam at freescale.com>
>
> imx6sl-evk has a wm8962 codec. Add support for it.
>
> Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
> ---
> Changes since v1:
> - Remove pingrp
> - Use regulator at num mode
>
> arch/arm/boot/dts/imx6sl-evk.dts | 81 ++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 81 insertions(+)
>
> diff --git a/arch/arm/boot/dts/imx6sl-evk.dts b/arch/arm/boot/dts/imx6sl-evk.dts
> index 4fc62e8..17db01a 100644
> --- a/arch/arm/boot/dts/imx6sl-evk.dts
> +++ b/arch/arm/boot/dts/imx6sl-evk.dts
> @@ -43,9 +43,47 @@
> gpio = <&gpio4 2 0>;
> enable-active-high;
> };
> +
> + reg_aud3v: regulator at 2 {
> + compatible = "regulator-fixed";
reg = <2>;
> + regulator-name = "wm8962-supply-3v15";
> + regulator-min-microvolt = <3150000>;
> + regulator-max-microvolt = <3150000>;
> + regulator-boot-on;
> + };
> +
> + reg_aud4v: regulator at 3 {
> + compatible = "regulator-fixed";
reg = <3>;
Shawn
> + regulator-name = "wm8962-supply-4v2";
> + regulator-min-microvolt = <4325000>;
> + regulator-max-microvolt = <4325000>;
> + regulator-boot-on;
> + };
> + };
> +
> + sound {
> + compatible = "fsl,imx6sl-evk-wm8962", "fsl,imx-audio-wm8962";
> + model = "wm8962-audio";
> + ssi-controller = <&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>;
> };
> };
>
> +&audmux {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_audmux3>;
> + status = "okay";
> +};
> +
> &i2c1 {
> clock-frequency = <100000>;
> pinctrl-names = "default";
> @@ -152,6 +190,27 @@
> };
> };
>
> +&i2c2 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_i2c2>;
> + status = "okay";
> +
> + codec: wm8962 at 1a {
> + compatible = "wlf,wm8962";
> + reg = <0x1a>;
> + clocks = <&clks IMX6SL_CLK_EXTERN_AUDIO>;
> + DCVDD-supply = <&vgen3_reg>;
> + DBVDD-supply = <®_aud3v>;
> + AVDD-supply = <&vgen3_reg>;
> + CPVDD-supply = <&vgen3_reg>;
> + MICVDD-supply = <®_aud3v>;
> + PLLVDD-supply = <&vgen3_reg>;
> + SPKVDD1-supply = <®_aud4v>;
> + SPKVDD2-supply = <®_aud4v>;
> + };
> +};
> +
> &ecspi1 {
> fsl,spi-num-chipselects = <1>;
> cs-gpios = <&gpio4 11 0>;
> @@ -189,6 +248,16 @@
> MX6SL_PAD_REF_CLK_32K__GPIO3_IO22 0x17059
> MX6SL_PAD_KEY_COL4__GPIO4_IO00 0x80000000
> MX6SL_PAD_KEY_COL5__GPIO4_IO02 0x80000000
> + MX6SL_PAD_AUD_MCLK__AUDIO_CLK_OUT 0x4130b0
> + >;
> + };
> +
> + pinctrl_audmux3: audmux3grp {
> + fsl,pins = <
> + MX6SL_PAD_AUD_RXD__AUD3_RXD 0x4130b0
> + MX6SL_PAD_AUD_TXC__AUD3_TXC 0x4130b0
> + MX6SL_PAD_AUD_TXD__AUD3_TXD 0x4110b0
> + MX6SL_PAD_AUD_TXFS__AUD3_TXFS 0x4130b0
> >;
> };
>
> @@ -199,6 +268,13 @@
> >;
> };
>
> + pinctrl_i2c2: i2c2grp {
> + fsl,pins = <
> + MX6SL_PAD_I2C2_SCL__I2C2_SCL 0x4001b8b1
> + MX6SL_PAD_I2C2_SDA__I2C2_SDA 0x4001b8b1
> + >;
> + };
> +
> pinctrl_ecspi1: ecspi1grp {
> fsl,pins = <
> MX6SL_PAD_ECSPI1_MISO__ECSPI1_MISO 0x100b1
> @@ -374,6 +450,11 @@
> status = "okay";
> };
>
> +&ssi2 {
> + fsl,mode = "i2s-slave";
> + status = "okay";
> +};
> +
> &uart1 {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_uart1>;
> --
> 1.8.1.2
>
More information about the linux-arm-kernel
mailing list