* [PATCH 1/2] ARM: dts: add support for some modules in imx6q sabresd
@ 2013-02-01 6:46 Gary Zhang
2013-02-03 10:58 ` Shawn Guo
0 siblings, 1 reply; 4+ messages in thread
From: Gary Zhang @ 2013-02-01 6:46 UTC (permalink / raw)
To: linux-arm-kernel
add I2C/I2S/clk/fixed regulator/sound card and
other related supports in imx6q sabresd
Signed-off-by: Gary Zhang <b13634@freescale.com>
---
arch/arm/boot/dts/imx6q-sabresd.dts | 76 +++++++++++++++++++++++++++++++++++
arch/arm/boot/dts/imx6q.dtsi | 23 ++++++++++
2 files changed, 99 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/imx6q-sabresd.dts b/arch/arm/boot/dts/imx6q-sabresd.dts
index a424025..383fcf0 100644
--- a/arch/arm/boot/dts/imx6q-sabresd.dts
+++ b/arch/arm/boot/dts/imx6q-sabresd.dts
@@ -29,6 +29,10 @@
pinctrl-0 = <&pinctrl_uart1_1>;
status = "okay";
};
+ ssi2: ssi at 0202c000 {
+ fsl,mode = "i2s-slave";
+ status = "okay";
+ };
};
iomuxc at 020e0000 {
@@ -73,6 +77,33 @@
wp-gpios = <&gpio2 1 0>;
status = "okay";
};
+
+ audmux at 021d8000 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_audmux_2>;
+ };
+
+ i2c at 021a0000 { /* I2C1 */
+ status = "okay";
+ clock-frequency = <100000>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_i2c1_2>;
+
+ codec: wm8962 at 1a {
+ compatible = "fsl,wm8962";
+ reg = <0x1a>;
+ clocks = <&clks 169>;
+ DCVDD-supply = <®_1p8v>;
+ DBVDD-supply = <®_1p8v>;
+ AVDD-supply = <®_1p8v>;
+ CPVDD-supply = <®_1p8v>;
+ MICVDD-supply = <®_3p3v>;
+ PLLVDD-supply = <®_1p8v>;
+ SPKVDD1-supply = <®_4p2v>;
+ SPKVDD2-supply = <®_4p2v>;
+ };
+ };
};
};
@@ -91,4 +122,49 @@
linux,code = <114>; /* KEY_VOLUMEDOWN */
};
};
+ regulators {
+ compatible = "simple-bus";
+
+ reg_1p8v: 1p8v {
+ compatible = "regulator-fixed";
+ regulator-name = "1P8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ enable-active-high;
+ };
+ reg_3p3v: 3p3v {
+ compatible = "regulator-fixed";
+ regulator-name = "3P3V";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ enable-active-high;
+ };
+ reg_4p2v: 4p2v {
+ compatible = "regulator-fixed";
+ regulator-name = "4P2V";
+ regulator-min-microvolt = <4200000>;
+ regulator-max-microvolt = <4200000>;
+ gpio = <&gpio4 10 0>;
+ regulator-always-on;
+ regulator-boot-on;
+ enable-active-high;
+ };
+ };
+
+ sound {
+ compatible = "fsl,imx6q-sabresd-wm8962",
+ "fsl,imx-audio-wm8962";
+ model = "imx6q-sabresd-wm8962";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_clko_1>;
+ ssi-controller = <&ssi2>;
+ audio-codec = <&codec>;
+ audio-routing =
+ "Headphone Jack", "HPOUTL",
+ "Headphone Jack", "HPOUTR";
+ mux-int-port = <2>;
+ mux-ext-port = <3>;
+ };
};
diff --git a/arch/arm/boot/dts/imx6q.dtsi b/arch/arm/boot/dts/imx6q.dtsi
index d6265ca..b612269 100644
--- a/arch/arm/boot/dts/imx6q.dtsi
+++ b/arch/arm/boot/dts/imx6q.dtsi
@@ -582,6 +582,23 @@
3 0x80000000 /* MX6Q_PAD_SD2_DAT1__AUDMUX_AUD4_TXFS */
>;
};
+
+ pinctrl_audmux_2: audmux-2 {
+ fsl,pins = <
+ 1117 0x80000000 /* MX6Q_PAD_CSI0_DAT7__AUDMUX_AUD3_RXD */
+ 1093 0x80000000 /* MX6Q_PAD_CSI0_DAT4__AUDMUX_AUD3_TXC */
+ 1101 0x80000000 /* MX6Q_PAD_CSI0_DAT5__AUDMUX_AUD3_TXD */
+ 1109 0x80000000 /* MX6Q_PAD_CSI0_DAT6__AUDMUX_AUD3_TXFS */
+ >;
+ };
+ };
+
+ clko {
+ pinctrl_clko_1: clkogrp-1 {
+ fsl,pins = <
+ 953 0x130b0 /* MX6Q_PAD_GPIO_0__CCM_CLKO */
+ >;
+ };
};
ecspi1 {
@@ -670,6 +687,12 @@
196 0x4001b8b1 /* MX6Q_PAD_EIM_D28__I2C1_SDA */
>;
};
+ pinctrl_i2c1_2: i2c1grp-2 {
+ fsl,pins = <
+ 1125 0x4001b8b1 /* MX6Q_PAD_CSI0_DAT8__I2C1_SDA */
+ 1133 0x4001b8b1 /* MX6Q_PAD_CSI0_DAT9__I2C1_SCL */
+ >;
+ };
};
uart1 {
--
1.7.0.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 1/2] ARM: dts: add support for some modules in imx6q sabresd
2013-02-01 6:46 [PATCH 1/2] ARM: dts: add support for some modules in imx6q sabresd Gary Zhang
@ 2013-02-03 10:58 ` Shawn Guo
2013-02-04 9:19 ` Zhang Quan-B13634
0 siblings, 1 reply; 4+ messages in thread
From: Shawn Guo @ 2013-02-03 10:58 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, Feb 01, 2013 at 02:46:38PM +0800, Gary Zhang wrote:
> add I2C/I2S/clk/fixed regulator/sound card and
> other related supports in imx6q sabresd
>
> Signed-off-by: Gary Zhang <b13634@freescale.com>
> ---
> arch/arm/boot/dts/imx6q-sabresd.dts | 76 +++++++++++++++++++++++++++++++++++
> arch/arm/boot/dts/imx6q.dtsi | 23 ++++++++++
> 2 files changed, 99 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/boot/dts/imx6q-sabresd.dts b/arch/arm/boot/dts/imx6q-sabresd.dts
> index a424025..383fcf0 100644
> --- a/arch/arm/boot/dts/imx6q-sabresd.dts
> +++ b/arch/arm/boot/dts/imx6q-sabresd.dts
> @@ -29,6 +29,10 @@
> pinctrl-0 = <&pinctrl_uart1_1>;
> status = "okay";
> };
> + ssi2: ssi at 0202c000 {
We generally have a blank line between nodes, so please follow the
pattern.
> + fsl,mode = "i2s-slave";
> + status = "okay";
> + };
> };
>
> iomuxc at 020e0000 {
> @@ -73,6 +77,33 @@
> wp-gpios = <&gpio2 1 0>;
> status = "okay";
> };
> +
> + audmux at 021d8000 {
> + status = "okay";
Nit: we usually have "status" be the last one in the property list.
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_audmux_2>;
> + };
> +
> + i2c at 021a0000 { /* I2C1 */
> + status = "okay";
> + clock-frequency = <100000>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_i2c1_2>;
> +
> + codec: wm8962 at 1a {
> + compatible = "fsl,wm8962";
This does not seem right, as wm8962 is not a codec produced by FSL.
I suspect you can have your driver work even without this compatible
since it's a I2C device. If so, you can choose to simply drop it.
Shawn
> + reg = <0x1a>;
> + clocks = <&clks 169>;
> + DCVDD-supply = <®_1p8v>;
> + DBVDD-supply = <®_1p8v>;
> + AVDD-supply = <®_1p8v>;
> + CPVDD-supply = <®_1p8v>;
> + MICVDD-supply = <®_3p3v>;
> + PLLVDD-supply = <®_1p8v>;
> + SPKVDD1-supply = <®_4p2v>;
> + SPKVDD2-supply = <®_4p2v>;
> + };
> + };
> };
> };
>
> @@ -91,4 +122,49 @@
> linux,code = <114>; /* KEY_VOLUMEDOWN */
> };
> };
> + regulators {
> + compatible = "simple-bus";
> +
> + reg_1p8v: 1p8v {
> + compatible = "regulator-fixed";
> + regulator-name = "1P8V";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + enable-active-high;
> + };
> + reg_3p3v: 3p3v {
> + compatible = "regulator-fixed";
> + regulator-name = "3P3V";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + enable-active-high;
> + };
> + reg_4p2v: 4p2v {
> + compatible = "regulator-fixed";
> + regulator-name = "4P2V";
> + regulator-min-microvolt = <4200000>;
> + regulator-max-microvolt = <4200000>;
> + gpio = <&gpio4 10 0>;
> + regulator-always-on;
> + regulator-boot-on;
> + enable-active-high;
> + };
> + };
> +
> + sound {
> + compatible = "fsl,imx6q-sabresd-wm8962",
> + "fsl,imx-audio-wm8962";
> + model = "imx6q-sabresd-wm8962";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_clko_1>;
> + ssi-controller = <&ssi2>;
> + audio-codec = <&codec>;
> + audio-routing =
> + "Headphone Jack", "HPOUTL",
> + "Headphone Jack", "HPOUTR";
> + mux-int-port = <2>;
> + mux-ext-port = <3>;
> + };
> };
> diff --git a/arch/arm/boot/dts/imx6q.dtsi b/arch/arm/boot/dts/imx6q.dtsi
> index d6265ca..b612269 100644
> --- a/arch/arm/boot/dts/imx6q.dtsi
> +++ b/arch/arm/boot/dts/imx6q.dtsi
> @@ -582,6 +582,23 @@
> 3 0x80000000 /* MX6Q_PAD_SD2_DAT1__AUDMUX_AUD4_TXFS */
> >;
> };
> +
> + pinctrl_audmux_2: audmux-2 {
> + fsl,pins = <
> + 1117 0x80000000 /* MX6Q_PAD_CSI0_DAT7__AUDMUX_AUD3_RXD */
> + 1093 0x80000000 /* MX6Q_PAD_CSI0_DAT4__AUDMUX_AUD3_TXC */
> + 1101 0x80000000 /* MX6Q_PAD_CSI0_DAT5__AUDMUX_AUD3_TXD */
> + 1109 0x80000000 /* MX6Q_PAD_CSI0_DAT6__AUDMUX_AUD3_TXFS */
> + >;
> + };
> + };
> +
> + clko {
> + pinctrl_clko_1: clkogrp-1 {
> + fsl,pins = <
> + 953 0x130b0 /* MX6Q_PAD_GPIO_0__CCM_CLKO */
> + >;
> + };
> };
>
> ecspi1 {
> @@ -670,6 +687,12 @@
> 196 0x4001b8b1 /* MX6Q_PAD_EIM_D28__I2C1_SDA */
> >;
> };
> + pinctrl_i2c1_2: i2c1grp-2 {
> + fsl,pins = <
> + 1125 0x4001b8b1 /* MX6Q_PAD_CSI0_DAT8__I2C1_SDA */
> + 1133 0x4001b8b1 /* MX6Q_PAD_CSI0_DAT9__I2C1_SCL */
> + >;
> + };
> };
>
> uart1 {
> --
> 1.7.0.4
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/2] ARM: dts: add support for some modules in imx6q sabresd
2013-02-03 10:58 ` Shawn Guo
@ 2013-02-04 9:19 ` Zhang Quan-B13634
2013-02-05 1:03 ` Shawn Guo
0 siblings, 1 reply; 4+ messages in thread
From: Zhang Quan-B13634 @ 2013-02-04 9:19 UTC (permalink / raw)
To: linux-arm-kernel
Hi Shawn,
Please see the comments inline, thanks!
Best Regards
Gary
> -----Original Message-----
> From: Shawn Guo [mailto:shawn.guo at linaro.org]
> Sent: Sunday, February 03, 2013 18:59
> To: Zhang Quan-B13634
> Cc: linux at arm.linux.org.uk; linux-arm-kernel at lists.infradead.org
> Subject: Re: [PATCH 1/2] ARM: dts: add support for some modules in imx6q
> sabresd
>
> On Fri, Feb 01, 2013 at 02:46:38PM +0800, Gary Zhang wrote:
> > add I2C/I2S/clk/fixed regulator/sound card and other related supports
> > in imx6q sabresd
> >
> > Signed-off-by: Gary Zhang <b13634@freescale.com>
> > ---
> > arch/arm/boot/dts/imx6q-sabresd.dts | 76
> +++++++++++++++++++++++++++++++++++
> > arch/arm/boot/dts/imx6q.dtsi | 23 ++++++++++
> > 2 files changed, 99 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/arm/boot/dts/imx6q-sabresd.dts
> > b/arch/arm/boot/dts/imx6q-sabresd.dts
> > index a424025..383fcf0 100644
> > --- a/arch/arm/boot/dts/imx6q-sabresd.dts
> > +++ b/arch/arm/boot/dts/imx6q-sabresd.dts
> > @@ -29,6 +29,10 @@
> > pinctrl-0 = <&pinctrl_uart1_1>;
> > status = "okay";
> > };
> > + ssi2: ssi at 0202c000 {
>
> We generally have a blank line between nodes, so please follow the pattern.
[Gary-b13634] OK, I will correct it
>
> > + fsl,mode = "i2s-slave";
> > + status = "okay";
> > + };
> > };
> >
> > iomuxc at 020e0000 {
> > @@ -73,6 +77,33 @@
> > wp-gpios = <&gpio2 1 0>;
> > status = "okay";
> > };
> > +
> > + audmux at 021d8000 {
> > + status = "okay";
>
> Nit: we usually have "status" be the last one in the property list.
[Gary-b13634] OK, I will correct it
>
> > + pinctrl-names = "default";
> > + pinctrl-0 = <&pinctrl_audmux_2>;
> > + };
> > +
> > + i2c at 021a0000 { /* I2C1 */
> > + status = "okay";
> > + clock-frequency = <100000>;
> > + pinctrl-names = "default";
> > + pinctrl-0 = <&pinctrl_i2c1_2>;
> > +
> > + codec: wm8962 at 1a {
> > + compatible = "fsl,wm8962";
>
> This does not seem right, as wm8962 is not a codec produced by FSL.
> I suspect you can have your driver work even without this compatible since it's
> a I2C device. If so, you can choose to simply drop it.
>
> Shawn
[Gary-b13634] this should be changed to "wlf, wm8962"; but it can't be dropped,
Or else codec driver will be failed to load.
>
> > + reg = <0x1a>;
> > + clocks = <&clks 169>;
> > + DCVDD-supply = <®_1p8v>;
> > + DBVDD-supply = <®_1p8v>;
> > + AVDD-supply = <®_1p8v>;
> > + CPVDD-supply = <®_1p8v>;
> > + MICVDD-supply = <®_3p3v>;
> > + PLLVDD-supply = <®_1p8v>;
> > + SPKVDD1-supply = <®_4p2v>;
> > + SPKVDD2-supply = <®_4p2v>;
> > + };
> > + };
> > };
> > };
> >
> > @@ -91,4 +122,49 @@
> > linux,code = <114>; /* KEY_VOLUMEDOWN */
> > };
> > };
> > + regulators {
> > + compatible = "simple-bus";
> > +
> > + reg_1p8v: 1p8v {
> > + compatible = "regulator-fixed";
> > + regulator-name = "1P8V";
> > + regulator-min-microvolt = <1800000>;
> > + regulator-max-microvolt = <1800000>;
> > + regulator-always-on;
> > + enable-active-high;
> > + };
> > + reg_3p3v: 3p3v {
> > + compatible = "regulator-fixed";
> > + regulator-name = "3P3V";
> > + regulator-min-microvolt = <3300000>;
> > + regulator-max-microvolt = <3300000>;
> > + regulator-always-on;
> > + enable-active-high;
> > + };
> > + reg_4p2v: 4p2v {
> > + compatible = "regulator-fixed";
> > + regulator-name = "4P2V";
> > + regulator-min-microvolt = <4200000>;
> > + regulator-max-microvolt = <4200000>;
> > + gpio = <&gpio4 10 0>;
> > + regulator-always-on;
> > + regulator-boot-on;
> > + enable-active-high;
> > + };
> > + };
> > +
> > + sound {
> > + compatible = "fsl,imx6q-sabresd-wm8962",
> > + "fsl,imx-audio-wm8962";
> > + model = "imx6q-sabresd-wm8962";
> > + pinctrl-names = "default";
> > + pinctrl-0 = <&pinctrl_clko_1>;
> > + ssi-controller = <&ssi2>;
> > + audio-codec = <&codec>;
> > + audio-routing =
> > + "Headphone Jack", "HPOUTL",
> > + "Headphone Jack", "HPOUTR";
> > + mux-int-port = <2>;
> > + mux-ext-port = <3>;
> > + };
> > };
> > diff --git a/arch/arm/boot/dts/imx6q.dtsi
> > b/arch/arm/boot/dts/imx6q.dtsi index d6265ca..b612269 100644
> > --- a/arch/arm/boot/dts/imx6q.dtsi
> > +++ b/arch/arm/boot/dts/imx6q.dtsi
> > @@ -582,6 +582,23 @@
> > 3 0x80000000 /*
> MX6Q_PAD_SD2_DAT1__AUDMUX_AUD4_TXFS */
> > >;
> > };
> > +
> > + pinctrl_audmux_2: audmux-2 {
> > + fsl,pins = <
> > + 1117 0x80000000 /*
> MX6Q_PAD_CSI0_DAT7__AUDMUX_AUD3_RXD */
> > + 1093 0x80000000 /*
> MX6Q_PAD_CSI0_DAT4__AUDMUX_AUD3_TXC */
> > + 1101 0x80000000 /*
> MX6Q_PAD_CSI0_DAT5__AUDMUX_AUD3_TXD */
> > + 1109 0x80000000 /*
> MX6Q_PAD_CSI0_DAT6__AUDMUX_AUD3_TXFS */
> > + >;
> > + };
> > + };
> > +
> > + clko {
> > + pinctrl_clko_1: clkogrp-1 {
> > + fsl,pins = <
> > + 953 0x130b0 /*
> MX6Q_PAD_GPIO_0__CCM_CLKO */
> > + >;
> > + };
> > };
> >
> > ecspi1 {
> > @@ -670,6 +687,12 @@
> > 196 0x4001b8b1 /*
> MX6Q_PAD_EIM_D28__I2C1_SDA */
> > >;
> > };
> > + pinctrl_i2c1_2: i2c1grp-2 {
> > + fsl,pins = <
> > + 1125 0x4001b8b1 /*
> MX6Q_PAD_CSI0_DAT8__I2C1_SDA */
> > + 1133 0x4001b8b1 /*
> MX6Q_PAD_CSI0_DAT9__I2C1_SCL */
> > + >;
> > + };
> > };
> >
> > uart1 {
> > --
> > 1.7.0.4
> >
> >
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/2] ARM: dts: add support for some modules in imx6q sabresd
2013-02-04 9:19 ` Zhang Quan-B13634
@ 2013-02-05 1:03 ` Shawn Guo
0 siblings, 0 replies; 4+ messages in thread
From: Shawn Guo @ 2013-02-05 1:03 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Feb 04, 2013 at 09:19:10AM +0000, Zhang Quan-B13634 wrote:
> > > + i2c at 021a0000 { /* I2C1 */
> > > + status = "okay";
> > > + clock-frequency = <100000>;
> > > + pinctrl-names = "default";
> > > + pinctrl-0 = <&pinctrl_i2c1_2>;
> > > +
> > > + codec: wm8962 at 1a {
> > > + compatible = "fsl,wm8962";
> >
> > This does not seem right, as wm8962 is not a codec produced by FSL.
> > I suspect you can have your driver work even without this compatible since it's
> > a I2C device. If so, you can choose to simply drop it.
> >
> > Shawn
> [Gary-b13634] this should be changed to "wlf, wm8962"; but it can't be dropped,
> Or else codec driver will be failed to load.
Ah, sorry. I forgot that modalias needs to come from the compatible
string. Yes, "wlf,wm8962" (no space after comma) should be the right
one.
Shawn
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-02-05 1:03 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-01 6:46 [PATCH 1/2] ARM: dts: add support for some modules in imx6q sabresd Gary Zhang
2013-02-03 10:58 ` Shawn Guo
2013-02-04 9:19 ` Zhang Quan-B13634
2013-02-05 1:03 ` Shawn Guo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).