* [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity
@ 2021-07-16 13:36 Fabio Estevam
2021-07-16 13:36 ` [PATCH 2/4] ARM: dts: imx6qp-prtwd3: " Fabio Estevam
` (4 more replies)
0 siblings, 5 replies; 13+ messages in thread
From: Fabio Estevam @ 2021-07-16 13:36 UTC (permalink / raw)
To: shawnguo; +Cc: linux-arm-kernel, o.rempel, Markus.Niebel, Fabio Estevam
The conversion of the spi-imx driver to use GPIO descriptors
in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
helped to detect the following SPI chipselect polarity mismatch on an
imx6q-sabresd for example:
[ 4.854337] m25p80@0 enforce active low on chipselect handle
Prior to the above commit, the chipselect polarity passed via cs-gpios
property was ignored and considered active-low.
The reason for such mismatch is clearly explained in the comments inside
drivers/gpio/gpiolib-of.c:
* SPI children have active low chip selects
* by default. This can be specified negatively
* by just omitting "spi-cs-high" in the
* device node, or actively by tagging on
* GPIO_ACTIVE_LOW as flag in the device
* tree. If the line is simultaneously
* tagged as active low in the device tree
* and has the "spi-cs-high" set, we get a
* conflict and the "spi-cs-high" flag will
* take precedence.
To properly represent the SPI chipselect polarity, change it to active-low
when the "spi-cs-high" property is absent.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
arch/arm/boot/dts/imx6dl-alti6p.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/imx6dl-alti6p.dts b/arch/arm/boot/dts/imx6dl-alti6p.dts
index 4329b372d8cb..e8325fd680d9 100644
--- a/arch/arm/boot/dts/imx6dl-alti6p.dts
+++ b/arch/arm/boot/dts/imx6dl-alti6p.dts
@@ -192,7 +192,7 @@ &can1 {
};
&ecspi1 {
- cs-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
+ cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi1>;
status = "okay";
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 2/4] ARM: dts: imx6qp-prtwd3: Fix the SPI chipselect polarity
2021-07-16 13:36 [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity Fabio Estevam
@ 2021-07-16 13:36 ` Fabio Estevam
2021-07-17 4:58 ` Oleksij Rempel
2021-09-22 3:02 ` Shawn Guo
2021-07-16 13:36 ` [PATCH 3/4] ARM: dts: imx6qdl-tqma6: " Fabio Estevam
` (3 subsequent siblings)
4 siblings, 2 replies; 13+ messages in thread
From: Fabio Estevam @ 2021-07-16 13:36 UTC (permalink / raw)
To: shawnguo; +Cc: linux-arm-kernel, o.rempel, Markus.Niebel, Fabio Estevam
The conversion of the spi-imx driver to use GPIO descriptors
in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
helped to detect the following SPI chipselect polarity mismatch on an
imx6q-sabresd for example:
[ 4.854337] m25p80@0 enforce active low on chipselect handle
Prior to the above commit, the chipselect polarity passed via cs-gpios
property was ignored and considered active-low.
The reason for such mismatch is clearly explained in the comments inside
drivers/gpio/gpiolib-of.c:
* SPI children have active low chip selects
* by default. This can be specified negatively
* by just omitting "spi-cs-high" in the
* device node, or actively by tagging on
* GPIO_ACTIVE_LOW as flag in the device
* tree. If the line is simultaneously
* tagged as active low in the device tree
* and has the "spi-cs-high" set, we get a
* conflict and the "spi-cs-high" flag will
* take precedence.
To properly represent the SPI chipselect polarity, change it to active-low
when the "spi-cs-high" property is absent.
The conversion of the spi-imx driver to use GPIO descriptors
in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
helped to detect the following SPI chipselect polarity mismatch on an
imx6q-sabresd for example:
[ 4.854337] m25p80@0 enforce active low on chipselect handle
Prior to the above commit, the chipselect polarity passed via cs-gpios
property was ignored and considered active-low.
The reason for such mismatch is clearly explained in the comments inside
drivers/gpio/gpiolib-of.c:
* SPI children have active low chip selects
* by default. This can be specified negatively
* by just omitting "spi-cs-high" in the
* device node, or actively by tagging on
* GPIO_ACTIVE_LOW as flag in the device
* tree. If the line is simultaneously
* tagged as active low in the device tree
* and has the "spi-cs-high" set, we get a
* conflict and the "spi-cs-high" flag will
* take precedence.
To properly represent the SPI chipselect polarity, change it to active-low
when the "spi-cs-high" property is absent.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
arch/arm/boot/dts/imx6qp-prtwd3.dts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/imx6qp-prtwd3.dts b/arch/arm/boot/dts/imx6qp-prtwd3.dts
index c42723989bc0..1a334918f9ca 100644
--- a/arch/arm/boot/dts/imx6qp-prtwd3.dts
+++ b/arch/arm/boot/dts/imx6qp-prtwd3.dts
@@ -123,7 +123,7 @@ &can1 {
};
&ecspi2 {
- cs-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
+ cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi2>;
status = "okay";
@@ -189,7 +189,7 @@ fixed-link {
};
&ecspi3 {
- cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>;
+ cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi3>;
status = "okay";
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 3/4] ARM: dts: imx6qdl-tqma6: Fix the SPI chipselect polarity
2021-07-16 13:36 [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity Fabio Estevam
2021-07-16 13:36 ` [PATCH 2/4] ARM: dts: imx6qp-prtwd3: " Fabio Estevam
@ 2021-07-16 13:36 ` Fabio Estevam
2021-07-16 13:36 ` [PATCH 4/4] ARM: dts: imx7d-sdb: " Fabio Estevam
` (2 subsequent siblings)
4 siblings, 0 replies; 13+ messages in thread
From: Fabio Estevam @ 2021-07-16 13:36 UTC (permalink / raw)
To: shawnguo; +Cc: linux-arm-kernel, o.rempel, Markus.Niebel, Fabio Estevam
The conversion of the spi-imx driver to use GPIO descriptors
in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
helped to detect the following SPI chipselect polarity mismatch on an
imx6q-sabresd for example:
[ 4.854337] m25p80@0 enforce active low on chipselect handle
Prior to the above commit, the chipselect polarity passed via cs-gpios
property was ignored and considered active-low.
The reason for such mismatch is clearly explained in the comments inside
drivers/gpio/gpiolib-of.c:
* SPI children have active low chip selects
* by default. This can be specified negatively
* by just omitting "spi-cs-high" in the
* device node, or actively by tagging on
* GPIO_ACTIVE_LOW as flag in the device
* tree. If the line is simultaneously
* tagged as active low in the device tree
* and has the "spi-cs-high" set, we get a
* conflict and the "spi-cs-high" flag will
* take precedence.
To properly represent the SPI chipselect polarity, change it to active-low
when the "spi-cs-high" property is absent.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
arch/arm/boot/dts/imx6qdl-tqma6.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/imx6qdl-tqma6.dtsi b/arch/arm/boot/dts/imx6qdl-tqma6.dtsi
index b18b83ac6aee..51a3a5392c95 100644
--- a/arch/arm/boot/dts/imx6qdl-tqma6.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-tqma6.dtsi
@@ -20,7 +20,7 @@ reg_3p3v: regulator-3p3v {
&ecspi1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi1>;
- cs-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
+ cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
status = "okay";
m25p80: flash@0 {
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 4/4] ARM: dts: imx7d-sdb: Fix the SPI chipselect polarity
2021-07-16 13:36 [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity Fabio Estevam
2021-07-16 13:36 ` [PATCH 2/4] ARM: dts: imx6qp-prtwd3: " Fabio Estevam
2021-07-16 13:36 ` [PATCH 3/4] ARM: dts: imx6qdl-tqma6: " Fabio Estevam
@ 2021-07-16 13:36 ` Fabio Estevam
2021-07-17 4:57 ` [PATCH 1/4] ARM: dts: imx6dl-alti6p: " Oleksij Rempel
2021-09-22 3:04 ` Shawn Guo
4 siblings, 0 replies; 13+ messages in thread
From: Fabio Estevam @ 2021-07-16 13:36 UTC (permalink / raw)
To: shawnguo; +Cc: linux-arm-kernel, o.rempel, Markus.Niebel, Fabio Estevam
The following warning is seen when the SPI GPIO driver probes:
gpio-expander@0 enforce active low on chipselect handle
The reason for this warning is clearly explained in the comments inside
drivers/gpio/gpiolib-of.c:
* SPI children have active low chip selects
* by default. This can be specified negatively
* by just omitting "spi-cs-high" in the
* device node, or actively by tagging on
* GPIO_ACTIVE_LOW as flag in the device
* tree. If the line is simultaneously
* tagged as active low in the device tree
* and has the "spi-cs-high" set, we get a
* conflict and the "spi-cs-high" flag will
* take precedence.
To properly represent the SPI chipselect polarity, change it to active-low
when the "spi-cs-high" property is absent.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
arch/arm/boot/dts/imx7d-sdb.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/imx7d-sdb.dts b/arch/arm/boot/dts/imx7d-sdb.dts
index 4a0d83784d7d..7813ef960f6e 100644
--- a/arch/arm/boot/dts/imx7d-sdb.dts
+++ b/arch/arm/boot/dts/imx7d-sdb.dts
@@ -45,7 +45,7 @@ spi4 {
pinctrl-0 = <&pinctrl_spi4>;
gpio-sck = <&gpio1 13 GPIO_ACTIVE_HIGH>;
gpio-mosi = <&gpio1 9 GPIO_ACTIVE_HIGH>;
- cs-gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
+ cs-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
num-chipselects = <1>;
#address-cells = <1>;
#size-cells = <0>;
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity
2021-07-16 13:36 [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity Fabio Estevam
` (2 preceding siblings ...)
2021-07-16 13:36 ` [PATCH 4/4] ARM: dts: imx7d-sdb: " Fabio Estevam
@ 2021-07-17 4:57 ` Oleksij Rempel
2021-08-14 13:27 ` Fabio Estevam
2021-09-22 3:04 ` Shawn Guo
4 siblings, 1 reply; 13+ messages in thread
From: Oleksij Rempel @ 2021-07-17 4:57 UTC (permalink / raw)
To: Fabio Estevam; +Cc: shawnguo, linux-arm-kernel, Markus.Niebel
On Fri, Jul 16, 2021 at 10:36:56AM -0300, Fabio Estevam wrote:
> The conversion of the spi-imx driver to use GPIO descriptors
> in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
> helped to detect the following SPI chipselect polarity mismatch on an
> imx6q-sabresd for example:
>
> [ 4.854337] m25p80@0 enforce active low on chipselect handle
>
> Prior to the above commit, the chipselect polarity passed via cs-gpios
> property was ignored and considered active-low.
>
> The reason for such mismatch is clearly explained in the comments inside
> drivers/gpio/gpiolib-of.c:
>
> * SPI children have active low chip selects
> * by default. This can be specified negatively
> * by just omitting "spi-cs-high" in the
> * device node, or actively by tagging on
> * GPIO_ACTIVE_LOW as flag in the device
> * tree. If the line is simultaneously
> * tagged as active low in the device tree
> * and has the "spi-cs-high" set, we get a
> * conflict and the "spi-cs-high" flag will
> * take precedence.
>
> To properly represent the SPI chipselect polarity, change it to active-low
> when the "spi-cs-high" property is absent.
>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>
Thank you!
> ---
> arch/arm/boot/dts/imx6dl-alti6p.dts | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/imx6dl-alti6p.dts b/arch/arm/boot/dts/imx6dl-alti6p.dts
> index 4329b372d8cb..e8325fd680d9 100644
> --- a/arch/arm/boot/dts/imx6dl-alti6p.dts
> +++ b/arch/arm/boot/dts/imx6dl-alti6p.dts
> @@ -192,7 +192,7 @@ &can1 {
> };
>
> &ecspi1 {
> - cs-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
> + cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_ecspi1>;
> status = "okay";
> --
> 2.25.1
>
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 2/4] ARM: dts: imx6qp-prtwd3: Fix the SPI chipselect polarity
2021-07-16 13:36 ` [PATCH 2/4] ARM: dts: imx6qp-prtwd3: " Fabio Estevam
@ 2021-07-17 4:58 ` Oleksij Rempel
2021-09-22 3:02 ` Shawn Guo
1 sibling, 0 replies; 13+ messages in thread
From: Oleksij Rempel @ 2021-07-17 4:58 UTC (permalink / raw)
To: Fabio Estevam; +Cc: shawnguo, linux-arm-kernel, Markus.Niebel
On Fri, Jul 16, 2021 at 10:36:57AM -0300, Fabio Estevam wrote:
> The conversion of the spi-imx driver to use GPIO descriptors
> in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
> helped to detect the following SPI chipselect polarity mismatch on an
> imx6q-sabresd for example:
>
> [ 4.854337] m25p80@0 enforce active low on chipselect handle
>
> Prior to the above commit, the chipselect polarity passed via cs-gpios
> property was ignored and considered active-low.
>
> The reason for such mismatch is clearly explained in the comments inside
> drivers/gpio/gpiolib-of.c:
>
> * SPI children have active low chip selects
> * by default. This can be specified negatively
> * by just omitting "spi-cs-high" in the
> * device node, or actively by tagging on
> * GPIO_ACTIVE_LOW as flag in the device
> * tree. If the line is simultaneously
> * tagged as active low in the device tree
> * and has the "spi-cs-high" set, we get a
> * conflict and the "spi-cs-high" flag will
> * take precedence.
>
> To properly represent the SPI chipselect polarity, change it to active-low
> when the "spi-cs-high" property is absent.
>
> The conversion of the spi-imx driver to use GPIO descriptors
> in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
> helped to detect the following SPI chipselect polarity mismatch on an
> imx6q-sabresd for example:
>
> [ 4.854337] m25p80@0 enforce active low on chipselect handle
>
> Prior to the above commit, the chipselect polarity passed via cs-gpios
> property was ignored and considered active-low.
>
> The reason for such mismatch is clearly explained in the comments inside
> drivers/gpio/gpiolib-of.c:
>
> * SPI children have active low chip selects
> * by default. This can be specified negatively
> * by just omitting "spi-cs-high" in the
> * device node, or actively by tagging on
> * GPIO_ACTIVE_LOW as flag in the device
> * tree. If the line is simultaneously
> * tagged as active low in the device tree
> * and has the "spi-cs-high" set, we get a
> * conflict and the "spi-cs-high" flag will
> * take precedence.
>
> To properly represent the SPI chipselect polarity, change it to active-low
> when the "spi-cs-high" property is absent.
>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>
Thank you!
> ---
> arch/arm/boot/dts/imx6qp-prtwd3.dts | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/boot/dts/imx6qp-prtwd3.dts b/arch/arm/boot/dts/imx6qp-prtwd3.dts
> index c42723989bc0..1a334918f9ca 100644
> --- a/arch/arm/boot/dts/imx6qp-prtwd3.dts
> +++ b/arch/arm/boot/dts/imx6qp-prtwd3.dts
> @@ -123,7 +123,7 @@ &can1 {
> };
>
> &ecspi2 {
> - cs-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
> + cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_ecspi2>;
> status = "okay";
> @@ -189,7 +189,7 @@ fixed-link {
> };
>
> &ecspi3 {
> - cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>;
> + cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_ecspi3>;
> status = "okay";
> --
> 2.25.1
>
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity
2021-07-17 4:57 ` [PATCH 1/4] ARM: dts: imx6dl-alti6p: " Oleksij Rempel
@ 2021-08-14 13:27 ` Fabio Estevam
2021-09-22 1:23 ` Shawn Guo
0 siblings, 1 reply; 13+ messages in thread
From: Fabio Estevam @ 2021-08-14 13:27 UTC (permalink / raw)
To: Oleksij Rempel
Cc: Shawn Guo,
moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE,
Markus Niebel
Hi Shawn,
On Sat, Jul 17, 2021 at 1:57 AM Oleksij Rempel <o.rempel@pengutronix.de> wrote:
>
> On Fri, Jul 16, 2021 at 10:36:56AM -0300, Fabio Estevam wrote:
> > The conversion of the spi-imx driver to use GPIO descriptors
> > in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
> > helped to detect the following SPI chipselect polarity mismatch on an
> > imx6q-sabresd for example:
> >
> > [ 4.854337] m25p80@0 enforce active low on chipselect handle
> >
> > Prior to the above commit, the chipselect polarity passed via cs-gpios
> > property was ignored and considered active-low.
> >
> > The reason for such mismatch is clearly explained in the comments inside
> > drivers/gpio/gpiolib-of.c:
> >
> > * SPI children have active low chip selects
> > * by default. This can be specified negatively
> > * by just omitting "spi-cs-high" in the
> > * device node, or actively by tagging on
> > * GPIO_ACTIVE_LOW as flag in the device
> > * tree. If the line is simultaneously
> > * tagged as active low in the device tree
> > * and has the "spi-cs-high" set, we get a
> > * conflict and the "spi-cs-high" flag will
> > * take precedence.
> >
> > To properly represent the SPI chipselect polarity, change it to active-low
> > when the "spi-cs-high" property is absent.
> >
> > Signed-off-by: Fabio Estevam <festevam@gmail.com>
>
> Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>
> Thank you!
A gentle ping on this series.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity
2021-08-14 13:27 ` Fabio Estevam
@ 2021-09-22 1:23 ` Shawn Guo
2021-09-22 1:28 ` Fabio Estevam
0 siblings, 1 reply; 13+ messages in thread
From: Shawn Guo @ 2021-09-22 1:23 UTC (permalink / raw)
To: Fabio Estevam
Cc: Oleksij Rempel,
moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE,
Markus Niebel
On Sat, Aug 14, 2021 at 10:27:13AM -0300, Fabio Estevam wrote:
> Hi Shawn,
>
> On Sat, Jul 17, 2021 at 1:57 AM Oleksij Rempel <o.rempel@pengutronix.de> wrote:
> >
> > On Fri, Jul 16, 2021 at 10:36:56AM -0300, Fabio Estevam wrote:
> > > The conversion of the spi-imx driver to use GPIO descriptors
> > > in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
> > > helped to detect the following SPI chipselect polarity mismatch on an
> > > imx6q-sabresd for example:
> > >
> > > [ 4.854337] m25p80@0 enforce active low on chipselect handle
> > >
> > > Prior to the above commit, the chipselect polarity passed via cs-gpios
> > > property was ignored and considered active-low.
> > >
> > > The reason for such mismatch is clearly explained in the comments inside
> > > drivers/gpio/gpiolib-of.c:
> > >
> > > * SPI children have active low chip selects
> > > * by default. This can be specified negatively
> > > * by just omitting "spi-cs-high" in the
> > > * device node, or actively by tagging on
> > > * GPIO_ACTIVE_LOW as flag in the device
> > > * tree. If the line is simultaneously
> > > * tagged as active low in the device tree
> > > * and has the "spi-cs-high" set, we get a
> > > * conflict and the "spi-cs-high" flag will
> > > * take precedence.
> > >
> > > To properly represent the SPI chipselect polarity, change it to active-low
> > > when the "spi-cs-high" property is absent.
> > >
> > > Signed-off-by: Fabio Estevam <festevam@gmail.com>
> >
> > Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>
> > Thank you!
>
> A gentle ping on this series.
Should we have Fixes tags for the patches?
Shawn
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity
2021-09-22 1:23 ` Shawn Guo
@ 2021-09-22 1:28 ` Fabio Estevam
2021-09-22 2:03 ` Shawn Guo
0 siblings, 1 reply; 13+ messages in thread
From: Fabio Estevam @ 2021-09-22 1:28 UTC (permalink / raw)
To: Shawn Guo
Cc: Oleksij Rempel,
moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE,
Markus Niebel
Hi Shawn,
On Tue, Sep 21, 2021 at 10:23 PM Shawn Guo <shawnguo@kernel.org> wrote:
> Should we have Fixes tags for the patches?
As this does not change the functionality, I did not put a Fixes tag.
It will only fix a warning like this:
[ 4.854337] m25p80@0 enforce active low on chipselect handle
IMHO it is OK to apply them without a Fixes tag.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity
2021-09-22 1:28 ` Fabio Estevam
@ 2021-09-22 2:03 ` Shawn Guo
2021-09-22 2:04 ` Fabio Estevam
0 siblings, 1 reply; 13+ messages in thread
From: Shawn Guo @ 2021-09-22 2:03 UTC (permalink / raw)
To: Fabio Estevam
Cc: Oleksij Rempel,
moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE,
Markus Niebel
On Tue, Sep 21, 2021 at 10:28:08PM -0300, Fabio Estevam wrote:
> Hi Shawn,
>
> On Tue, Sep 21, 2021 at 10:23 PM Shawn Guo <shawnguo@kernel.org> wrote:
>
> > Should we have Fixes tags for the patches?
>
> As this does not change the functionality, I did not put a Fixes tag.
>
> It will only fix a warning like this:
>
> [ 4.854337] m25p80@0 enforce active low on chipselect handle
>
> IMHO it is OK to apply them without a Fixes tag.
Okay, then I assume it applies to imx8mm-kontron-n801x-som and
imx8mm-venice patches as well?
Shawn
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity
2021-09-22 2:03 ` Shawn Guo
@ 2021-09-22 2:04 ` Fabio Estevam
0 siblings, 0 replies; 13+ messages in thread
From: Fabio Estevam @ 2021-09-22 2:04 UTC (permalink / raw)
To: Shawn Guo
Cc: Oleksij Rempel,
moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE,
Markus Niebel
On Tue, Sep 21, 2021 at 11:03 PM Shawn Guo <shawnguo@kernel.org> wrote:
> Okay, then I assume it applies to imx8mm-kontron-n801x-som and
> imx8mm-venice patches as well?
Yes, that's correct.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 2/4] ARM: dts: imx6qp-prtwd3: Fix the SPI chipselect polarity
2021-07-16 13:36 ` [PATCH 2/4] ARM: dts: imx6qp-prtwd3: " Fabio Estevam
2021-07-17 4:58 ` Oleksij Rempel
@ 2021-09-22 3:02 ` Shawn Guo
1 sibling, 0 replies; 13+ messages in thread
From: Shawn Guo @ 2021-09-22 3:02 UTC (permalink / raw)
To: Fabio Estevam; +Cc: linux-arm-kernel, o.rempel, Markus.Niebel
On Fri, Jul 16, 2021 at 10:36:57AM -0300, Fabio Estevam wrote:
> The conversion of the spi-imx driver to use GPIO descriptors
> in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
> helped to detect the following SPI chipselect polarity mismatch on an
> imx6q-sabresd for example:
>
> [ 4.854337] m25p80@0 enforce active low on chipselect handle
>
> Prior to the above commit, the chipselect polarity passed via cs-gpios
> property was ignored and considered active-low.
>
> The reason for such mismatch is clearly explained in the comments inside
> drivers/gpio/gpiolib-of.c:
>
> * SPI children have active low chip selects
> * by default. This can be specified negatively
> * by just omitting "spi-cs-high" in the
> * device node, or actively by tagging on
> * GPIO_ACTIVE_LOW as flag in the device
> * tree. If the line is simultaneously
> * tagged as active low in the device tree
> * and has the "spi-cs-high" set, we get a
> * conflict and the "spi-cs-high" flag will
> * take precedence.
>
> To properly represent the SPI chipselect polarity, change it to active-low
> when the "spi-cs-high" property is absent.
...
> The conversion of the spi-imx driver to use GPIO descriptors
> in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
> helped to detect the following SPI chipselect polarity mismatch on an
> imx6q-sabresd for example:
>
> [ 4.854337] m25p80@0 enforce active low on chipselect handle
>
> Prior to the above commit, the chipselect polarity passed via cs-gpios
> property was ignored and considered active-low.
>
> The reason for such mismatch is clearly explained in the comments inside
> drivers/gpio/gpiolib-of.c:
>
> * SPI children have active low chip selects
> * by default. This can be specified negatively
> * by just omitting "spi-cs-high" in the
> * device node, or actively by tagging on
> * GPIO_ACTIVE_LOW as flag in the device
> * tree. If the line is simultaneously
> * tagged as active low in the device tree
> * and has the "spi-cs-high" set, we get a
> * conflict and the "spi-cs-high" flag will
> * take precedence.
>
> To properly represent the SPI chipselect polarity, change it to active-low
> when the "spi-cs-high" property is absent.
So the commit log was written twice? I will fix it up.
Shawn
>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
> ---
> arch/arm/boot/dts/imx6qp-prtwd3.dts | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/boot/dts/imx6qp-prtwd3.dts b/arch/arm/boot/dts/imx6qp-prtwd3.dts
> index c42723989bc0..1a334918f9ca 100644
> --- a/arch/arm/boot/dts/imx6qp-prtwd3.dts
> +++ b/arch/arm/boot/dts/imx6qp-prtwd3.dts
> @@ -123,7 +123,7 @@ &can1 {
> };
>
> &ecspi2 {
> - cs-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
> + cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_ecspi2>;
> status = "okay";
> @@ -189,7 +189,7 @@ fixed-link {
> };
>
> &ecspi3 {
> - cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>;
> + cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_ecspi3>;
> status = "okay";
> --
> 2.25.1
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity
2021-07-16 13:36 [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity Fabio Estevam
` (3 preceding siblings ...)
2021-07-17 4:57 ` [PATCH 1/4] ARM: dts: imx6dl-alti6p: " Oleksij Rempel
@ 2021-09-22 3:04 ` Shawn Guo
4 siblings, 0 replies; 13+ messages in thread
From: Shawn Guo @ 2021-09-22 3:04 UTC (permalink / raw)
To: Fabio Estevam; +Cc: linux-arm-kernel, o.rempel, Markus.Niebel
On Fri, Jul 16, 2021 at 10:36:56AM -0300, Fabio Estevam wrote:
> The conversion of the spi-imx driver to use GPIO descriptors
> in commit 8cdcd8aeee28 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors")
> helped to detect the following SPI chipselect polarity mismatch on an
> imx6q-sabresd for example:
>
> [ 4.854337] m25p80@0 enforce active low on chipselect handle
>
> Prior to the above commit, the chipselect polarity passed via cs-gpios
> property was ignored and considered active-low.
>
> The reason for such mismatch is clearly explained in the comments inside
> drivers/gpio/gpiolib-of.c:
>
> * SPI children have active low chip selects
> * by default. This can be specified negatively
> * by just omitting "spi-cs-high" in the
> * device node, or actively by tagging on
> * GPIO_ACTIVE_LOW as flag in the device
> * tree. If the line is simultaneously
> * tagged as active low in the device tree
> * and has the "spi-cs-high" set, we get a
> * conflict and the "spi-cs-high" flag will
> * take precedence.
>
> To properly represent the SPI chipselect polarity, change it to active-low
> when the "spi-cs-high" property is absent.
>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
Applied all, thanks!
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2021-09-22 3:06 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-16 13:36 [PATCH 1/4] ARM: dts: imx6dl-alti6p: Fix the SPI chipselect polarity Fabio Estevam
2021-07-16 13:36 ` [PATCH 2/4] ARM: dts: imx6qp-prtwd3: " Fabio Estevam
2021-07-17 4:58 ` Oleksij Rempel
2021-09-22 3:02 ` Shawn Guo
2021-07-16 13:36 ` [PATCH 3/4] ARM: dts: imx6qdl-tqma6: " Fabio Estevam
2021-07-16 13:36 ` [PATCH 4/4] ARM: dts: imx7d-sdb: " Fabio Estevam
2021-07-17 4:57 ` [PATCH 1/4] ARM: dts: imx6dl-alti6p: " Oleksij Rempel
2021-08-14 13:27 ` Fabio Estevam
2021-09-22 1:23 ` Shawn Guo
2021-09-22 1:28 ` Fabio Estevam
2021-09-22 2:03 ` Shawn Guo
2021-09-22 2:04 ` Fabio Estevam
2021-09-22 3:04 ` Shawn Guo
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.