2019-07-19 10:51:35

by Gilles Doffe

[permalink] [raw]
Subject: [PATCH v2] arm: dts: imx6qdl: add gpio expander pca9535

The pca9535 gpio expander is present on the Rex baseboard, but missing
from the dtsi.

Add the new gpio controller and the associated interrupt line
MX6QDL_PAD_NANDF_CS3__GPIO6_IO16.

Signed-off-by: Gilles DOFFE <[email protected]>
---
arch/arm/boot/dts/imx6qdl-rex.dtsi | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

diff --git a/arch/arm/boot/dts/imx6qdl-rex.dtsi b/arch/arm/boot/dts/imx6qdl-rex.dtsi
index 97f1659144ea..b517efb22fcb 100644
--- a/arch/arm/boot/dts/imx6qdl-rex.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-rex.dtsi
@@ -136,6 +136,19 @@
compatible = "atmel,24c02";
reg = <0x57>;
};
+
+ pca9535: gpio8@27 {
+ compatible = "nxp,pca9535";
+ reg = <0x27>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pca9535>;
+ interrupt-parent = <&gpio6>;
+ interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ };
};

&i2c3 {
@@ -237,6 +250,12 @@
>;
};

+ pinctrl_pca9535: pca9535 {
+ fsl,pins = <
+ MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x00017059
+ >;
+ };
+
pinctrl_uart1: uart1grp {
fsl,pins = <
MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
--
2.19.1


2019-07-22 07:56:24

by Marco Felsch

[permalink] [raw]
Subject: Re: [PATCH v2] arm: dts: imx6qdl: add gpio expander pca9535

Hi Gilles,

can you adapt the patch title, I assumed that the base dtsi is adding a
gpio-expander which makes no sense.

On 19-07-19 12:46, Gilles DOFFE wrote:
> The pca9535 gpio expander is present on the Rex baseboard, but missing
> from the dtsi.
>
> Add the new gpio controller and the associated interrupt line
> MX6QDL_PAD_NANDF_CS3__GPIO6_IO16.
>
> Signed-off-by: Gilles DOFFE <[email protected]>
> ---

Having a changelog would be nice too.

> arch/arm/boot/dts/imx6qdl-rex.dtsi | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/arch/arm/boot/dts/imx6qdl-rex.dtsi b/arch/arm/boot/dts/imx6qdl-rex.dtsi
> index 97f1659144ea..b517efb22fcb 100644
> --- a/arch/arm/boot/dts/imx6qdl-rex.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-rex.dtsi
> @@ -136,6 +136,19 @@
> compatible = "atmel,24c02";
> reg = <0x57>;
> };
> +
> + pca9535: gpio8@27 {
> + compatible = "nxp,pca9535";
> + reg = <0x27>;

The i2c devices are orderd by their i2c-addresses starting from the
lowest.

> + gpio-controller;
> + #gpio-cells = <2>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_pca9535>;
> + interrupt-parent = <&gpio6>;
> + interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
> + interrupt-controller;
> + #interrupt-cells = <2>;
> + };
> };
>
> &i2c3 {
> @@ -237,6 +250,12 @@
> >;
> };
>
> + pinctrl_pca9535: pca9535 {
> + fsl,pins = <
> + MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x00017059

The pinmux below don't use the leading zero's if you are the first I
would drop that.

Regards,
Marco

> + >;
> + };
> +
> pinctrl_uart1: uart1grp {
> fsl,pins = <
> MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
> --
> 2.19.1
>
>
>

--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |

2019-07-23 15:15:03

by Shawn Guo

[permalink] [raw]
Subject: Re: [PATCH v2] arm: dts: imx6qdl: add gpio expander pca9535

On Mon, Jul 22, 2019 at 09:53:41AM +0200, Marco Felsch wrote:
> Hi Gilles,
>
> can you adapt the patch title, I assumed that the base dtsi is adding a
> gpio-expander which makes no sense.

More specifically, the prefix should be something like:

'ARM: dts: imx6qdl-rex: ...'

Shawn

2019-09-12 10:13:44

by Gilles Doffe

[permalink] [raw]
Subject: Re: [PATCH v2] arm: dts: imx6qdl: add gpio expander pca9535

Hi Marco,

Thanks for your reply and sorry about the delay.

----- Le 22 Juil 19, à 9:53, Marco Felsch [email protected] a écrit :

> Hi Gilles,
>
> can you adapt the patch title, I assumed that the base dtsi is adding a
> gpio-expander which makes no sense.

My first intent was to add the gpio-expander pca9535 into the imx6q-rex-pro.dts and in a future imx6qp-rex-ultra.dts
However I noticed that the sgtl5000 was already in the dtsi.
It is maybe due to the fact that like the pca9535, the sgtl5000 is present on the baseboard not on the SOM.
Thus I guess that baseboard stuff common to all rex SOM should be in imx6qdl-rex.dtsi and not in the dts.
Does-it seem correct to you ?

>
> On 19-07-19 12:46, Gilles DOFFE wrote:
>> The pca9535 gpio expander is present on the Rex baseboard, but missing
>> from the dtsi.
>>
>> Add the new gpio controller and the associated interrupt line
>> MX6QDL_PAD_NANDF_CS3__GPIO6_IO16.
>>
>> Signed-off-by: Gilles DOFFE <[email protected]>
>> ---
>
> Having a changelog would be nice too.
>
>> arch/arm/boot/dts/imx6qdl-rex.dtsi | 19 +++++++++++++++++++
>> 1 file changed, 19 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/imx6qdl-rex.dtsi
>> b/arch/arm/boot/dts/imx6qdl-rex.dtsi
>> index 97f1659144ea..b517efb22fcb 100644
>> --- a/arch/arm/boot/dts/imx6qdl-rex.dtsi
>> +++ b/arch/arm/boot/dts/imx6qdl-rex.dtsi
>> @@ -136,6 +136,19 @@
>> compatible = "atmel,24c02";
>> reg = <0x57>;
>> };
>> +
>> + pca9535: gpio8@27 {
>> + compatible = "nxp,pca9535";
>> + reg = <0x27>;
>
> The i2c devices are orderd by their i2c-addresses starting from the
> lowest.
>

Ack.

>> + gpio-controller;
>> + #gpio-cells = <2>;
>> + pinctrl-names = "default";
>> + pinctrl-0 = <&pinctrl_pca9535>;
>> + interrupt-parent = <&gpio6>;
>> + interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
>> + interrupt-controller;
>> + #interrupt-cells = <2>;
>> + };
>> };
>>
>> &i2c3 {
>> @@ -237,6 +250,12 @@
>> >;
>> };
>>
>> + pinctrl_pca9535: pca9535 {
>> + fsl,pins = <
>> + MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x00017059
>
> The pinmux below don't use the leading zero's if you are the first I
> would drop that.
>
> Regards,
> Marco
>

Ack.

Regards,
Gilles

2019-09-12 10:17:56

by Marco Felsch

[permalink] [raw]
Subject: Re: [PATCH v2] arm: dts: imx6qdl: add gpio expander pca9535

Hi Gilles,

On 19-09-12 06:01, Gilles Doffe wrote:
> Hi Marco,
>
> Thanks for your reply and sorry about the delay.

No worries ;)

> ----- Le 22 Juil 19, ? 9:53, Marco Felsch [email protected] a ?crit :
>
> > Hi Gilles,
> >
> > can you adapt the patch title, I assumed that the base dtsi is adding a
> > gpio-expander which makes no sense.
>
> My first intent was to add the gpio-expander pca9535 into the imx6q-rex-pro.dts and in a future imx6qp-rex-ultra.dts
> However I noticed that the sgtl5000 was already in the dtsi.
> It is maybe due to the fact that like the pca9535, the sgtl5000 is present on the baseboard not on the SOM.
> Thus I guess that baseboard stuff common to all rex SOM should be in imx6qdl-rex.dtsi and not in the dts.
> Does-it seem correct to you ?

Yes this is correct what Shawn and I mean is that you should adapt the
commit title. Shawn already give you an example.

> >
> > On 19-07-19 12:46, Gilles DOFFE wrote:
> >> The pca9535 gpio expander is present on the Rex baseboard, but missing
> >> from the dtsi.
> >>
> >> Add the new gpio controller and the associated interrupt line
> >> MX6QDL_PAD_NANDF_CS3__GPIO6_IO16.
> >>
> >> Signed-off-by: Gilles DOFFE <[email protected]>
> >> ---
> >
> > Having a changelog would be nice too.
> >
> >> arch/arm/boot/dts/imx6qdl-rex.dtsi | 19 +++++++++++++++++++
> >> 1 file changed, 19 insertions(+)
> >>
> >> diff --git a/arch/arm/boot/dts/imx6qdl-rex.dtsi
> >> b/arch/arm/boot/dts/imx6qdl-rex.dtsi
> >> index 97f1659144ea..b517efb22fcb 100644
> >> --- a/arch/arm/boot/dts/imx6qdl-rex.dtsi
> >> +++ b/arch/arm/boot/dts/imx6qdl-rex.dtsi
> >> @@ -136,6 +136,19 @@
> >> compatible = "atmel,24c02";
> >> reg = <0x57>;
> >> };
> >> +
> >> + pca9535: gpio8@27 {
> >> + compatible = "nxp,pca9535";
> >> + reg = <0x27>;
> >
> > The i2c devices are orderd by their i2c-addresses starting from the
> > lowest.
> >
>
> Ack.
>
> >> + gpio-controller;
> >> + #gpio-cells = <2>;
> >> + pinctrl-names = "default";
> >> + pinctrl-0 = <&pinctrl_pca9535>;
> >> + interrupt-parent = <&gpio6>;
> >> + interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
> >> + interrupt-controller;
> >> + #interrupt-cells = <2>;

As you pointed out above this device isn't available on the
imx6dl-rex-basic? You should add: 'status = "disabled";' if this is the
case.

Regards,
Marco

> >> + };
> >> };
> >>
> >> &i2c3 {
> >> @@ -237,6 +250,12 @@
> >> >;
> >> };
> >>
> >> + pinctrl_pca9535: pca9535 {
> >> + fsl,pins = <
> >> + MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x00017059
> >
> > The pinmux below don't use the leading zero's if you are the first I
> > would drop that.
> >
> > Regards,
> > Marco
> >
>
> Ack.
>
> Regards,
> Gilles
>

--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |

2019-09-13 08:42:40

by Gilles Doffe

[permalink] [raw]
Subject: Re: [PATCH v2] arm: dts: imx6qdl: add gpio expander pca9535

Hi Marco,

Ack for all, v3 incoming.

Thank you,
Gilles

----- Le 12 Sep 19, à 12:12, Marco Felsch [email protected] a écrit :

> Hi Gilles,
>
> On 19-09-12 06:01, Gilles Doffe wrote:
>> Hi Marco,
>>
>> Thanks for your reply and sorry about the delay.
>
> No worries ;)
>
>> ----- Le 22 Juil 19, à 9:53, Marco Felsch [email protected] a écrit :
>>
>> > Hi Gilles,
>> >
>> > can you adapt the patch title, I assumed that the base dtsi is adding a
>> > gpio-expander which makes no sense.
>>
>> My first intent was to add the gpio-expander pca9535 into the imx6q-rex-pro.dts
>> and in a future imx6qp-rex-ultra.dts
>> However I noticed that the sgtl5000 was already in the dtsi.
>> It is maybe due to the fact that like the pca9535, the sgtl5000 is present on
>> the baseboard not on the SOM.
>> Thus I guess that baseboard stuff common to all rex SOM should be in
>> imx6qdl-rex.dtsi and not in the dts.
>> Does-it seem correct to you ?
>
> Yes this is correct what Shawn and I mean is that you should adapt the
> commit title. Shawn already give you an example.
>
>> >
>> > On 19-07-19 12:46, Gilles DOFFE wrote:
>> >> The pca9535 gpio expander is present on the Rex baseboard, but missing
>> >> from the dtsi.
>> >>
>> >> Add the new gpio controller and the associated interrupt line
>> >> MX6QDL_PAD_NANDF_CS3__GPIO6_IO16.
>> >>
>> >> Signed-off-by: Gilles DOFFE <[email protected]>
>> >> ---
>> >
>> > Having a changelog would be nice too.
>> >
>> >> arch/arm/boot/dts/imx6qdl-rex.dtsi | 19 +++++++++++++++++++
>> >> 1 file changed, 19 insertions(+)
>> >>
>> >> diff --git a/arch/arm/boot/dts/imx6qdl-rex.dtsi
>> >> b/arch/arm/boot/dts/imx6qdl-rex.dtsi
>> >> index 97f1659144ea..b517efb22fcb 100644
>> >> --- a/arch/arm/boot/dts/imx6qdl-rex.dtsi
>> >> +++ b/arch/arm/boot/dts/imx6qdl-rex.dtsi
>> >> @@ -136,6 +136,19 @@
>> >> compatible = "atmel,24c02";
>> >> reg = <0x57>;
>> >> };
>> >> +
>> >> + pca9535: gpio8@27 {
>> >> + compatible = "nxp,pca9535";
>> >> + reg = <0x27>;
>> >
>> > The i2c devices are orderd by their i2c-addresses starting from the
>> > lowest.
>> >
>>
>> Ack.
>>
>> >> + gpio-controller;
>> >> + #gpio-cells = <2>;
>> >> + pinctrl-names = "default";
>> >> + pinctrl-0 = <&pinctrl_pca9535>;
>> >> + interrupt-parent = <&gpio6>;
>> >> + interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
>> >> + interrupt-controller;
>> >> + #interrupt-cells = <2>;
>
> As you pointed out above this device isn't available on the
> imx6dl-rex-basic? You should add: 'status = "disabled";' if this is the
> case.
>
> Regards,
> Marco
>
>> >> + };
>> >> };
>> >>
>> >> &i2c3 {
>> >> @@ -237,6 +250,12 @@
>> >> >;
>> >> };
>> >>
>> >> + pinctrl_pca9535: pca9535 {
>> >> + fsl,pins = <
>> >> + MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x00017059
>> >
>> > The pinmux below don't use the leading zero's if you are the first I
>> > would drop that.
>> >
>> > Regards,
>> > Marco
>> >
>>
>> Ack.
>>
>> Regards,
>> Gilles
>>
>
> --
> Pengutronix e.K. | |
> Industrial Linux Solutions | http://www.pengutronix.de/ |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |

--
Gilles DOFFE
Senior Product Engineering Consultant | Rennes, Fr
Bureau
[ tel:+33972468980 | (+33) 9 72 46 89 80 ] p. : 601
Cellulaire
[ tel:+33660025866 | (+33) 6 60 02 58 66 ]