linux-omap.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
@ 2015-10-12 21:12 Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 01/37] ARM: dts: am437x-gp-evm: Remove unneeded regulator property Laurent Pinchart
                   ` (10 more replies)
  0 siblings, 11 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:12 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: devicetree, linux-omap, linux-samsung-soc, linux-tegra,
	linux-gpio, linux-kernel, Benoit Cousson, Tony Lindgren,
	Jason Cooper, Andrew Lunn, Gregory Clement, Sebastian Hesselbarth,
	Kukjin Kim, Krzysztof Kozlowski, Shawn Guo, Sascha Hauer,
	Stephen Warren, Thierry Reding, Alexandre Courbot, Liam Girdwood,
	Mark Brown, Linus Walleij

Hello,

While working on regulators, GPIOs and DT I noticed that many of our DT source
files incorrectly describe fixed regulators. The common error patterns are

- Usage of the undefined (and never parsed) enable-active-low property
- Usage of the enable-active-high property without specifying an enable GPIO
- Typos in the enabl GPIO property name (gpios instead of gpio)
- Mismatch between the enable-active-high property (or the lack thereof) and
  the enable GPIO flags

This patch series fixes those issues in all the DT sources after locating the
errors using the following script.

------------------------------------------------------------------------------
#!/bin/sh

echo $1
cat $1 | awk '
BEGIN {
	open_drain = 0;
	active_high = 0;
	gpio = 0;
	flags = 0;
}

match($0, /([a-zA-Z0-9@_-]*) {/, ary) {
	name = ary[1];
}

/compatible.*"regulator-fixed"/ {
	found = 1;
}

/enable-active-high/ {
	active_high = 1;
}

/gpio-open-drain/ {
	open_drain = 1;
}

match($0, /gpio += <.* ([^ ]*)>/, ary) {
	gpio = 1;
	flags = ary[1];
	if (flags == 0)
		flags = "GPIO_ACTIVE_HIGH";
}

/}/ {
	if (found) {
		if (gpio) {
			print "\t" name ": active high " active_high " " flags " open drain " open_drain;
			if ((active_high && flags == "GPIO_ACTIVE_LOW") ||
			    (!active_high && flags == "GPIO_ACTIVE_HIGH"))
				print "WARNING: enable-active-high and flags do not match"
		} else {
			if (active_high)
				print "WARNING: active high without GPIO"
			if (open_drain)
				print "WARNING: open drain without GPIO"
		}
	}

	gpio = 0;
	found = 0;
	active_high = 0;
	open_drain = 0;
	flags = 0;
}
'
------------------------------------------------------------------------------

All patches except for the ones touching omap3-beagle-xm and omap3-overo-base
are untested as I lack test hardware.

As there's no dependency between the patches touching different source files
the appropriate maintainers could take their share of the patches in their
tree. Alternatively I could send a single pull request after collecting all
acks but that might be more complex.

Cc: devicetree@vger.kernel.org
Cc: linux-omap@vger.kernel.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: linux-tegra@vger.kernel.org
Cc: linux-gpio@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Gregory Clement <gregory.clement@free-electrons.com>
Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Cc: Kukjin Kim <kgene@kernel.org>
Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <kernel@pengutronix.de>
Cc: Stephen Warren <swarren@wwwdotorg.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Alexandre Courbot <gnurou@gmail.com>
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: Linus Walleij <linus.walleij@linaro.org>

Laurent Pinchart (37):
  ARM: dts: am437x-gp-evm: Remove unneeded regulator property
  ARM: dts: am43xx-epos-evm: Remove unneeded regulator property
  ARM: mvebu: Armada 388 GP: Remove unneeded regulator property
  ARM: imx6sx-sdb: Fix typo in regulator enable GPIO property
  ARM: dts: s5pv210-aquila: Fix typo in regulator enable GPIO property
  ARM: dts: s5pv210-goni: Fix typo in regulator enable GPIO property
  ARM: dts: omap3-evm: Remove invalid enable-active-low regulator
    property
  ARM: dts: omap3-sb-t35: Remove invalid enable-active-low regulator
    property
  ARM: dts: omap3-tao3530: Remove invalid enable-active-low regulator
    property
  ARM: dts: imx6qdl-tx6: Fix regulator enable GPIO polarity
  ARM: dts: dove-cm-a510: Fix regulator enable GPIO polarity
  ARM: dts: dove-sbc-a510: Fix regulator enable GPIO polarity
  ARM: dts: exynos5250-arndale: Fix regulator enable GPIO polarity
  ARM: dts: imx23-evk: Fix regulator enable GPIO polarity
  ARM: dts: imx23-stmp378x_devb: Fix regulator enable GPIO polarity
  ARM: dts: imx25-pdk: Fix regulator enable GPIO polarity
  ARM: dts: imx28-cfa10036: Fix regulator enable GPIO polarity
  ARM: dts: imx28-evk: Fix regulator enable GPIO polarity
  ARM: dts: imx28-m28cu3: Fix regulator enable GPIO polarity
  ARM: dts: imx28-m28evk: Fix regulator enable GPIO polarity
  ARM: dts: imx28-sps1: Fix regulator enable GPIO polarity
  ARM: dts: imx28-tx28: Fix regulator enable GPIO polarity
  ARM: dts: imx53-m53evk: Fix regulator enable GPIO polarity
  ARM: dts: imx53-mba53: Fix regulator enable GPIO polarity
  ARM: dts: imx53-tx53: Fix regulator enable GPIO polarity
  ARM: dts: imx6q-dmo-edmqmx6: Fix regulator enable GPIO polarity
  ARM: dts: kirkwood-blackarmor-nas220: Fix regulator enable GPIO
    polarity
  ARM: dts: omap4-duovero: Fix regulator enable GPIO polarity
  ARM: dts: kirkwood-nsa3x0-common: Fix regulator enable GPIO polarity
  ARM: dts: omap3-beagle-xm: Fix regulator enable GPIO polarity
  ARM: dts: omap3-beagle: Fix regulator enable GPIO polarity
  ARM: dts: omap3-overo-base: Fix regulator enable GPIO polarity
  ARM: dts: omap3-tao3530: Fix regulator enable GPIO polarity
  ARM: dts: tegra20-harmony: Fix regulator enable GPIO polarity
  ARM: dts: tegra20-iris-512: Fix regulator enable GPIO polarity
  ARM: dts: tegra20-seaboard: Fix regulator enable GPIO polarity
  ARM: dts: tegra20-ventana: Fix regulator enable GPIO polarity

 arch/arm/boot/dts/am437x-gp-evm.dts              | 1 -
 arch/arm/boot/dts/am43x-epos-evm.dts             | 1 -
 arch/arm/boot/dts/armada-388-gp.dts              | 2 --
 arch/arm/boot/dts/dove-cm-a510.dtsi              | 2 +-
 arch/arm/boot/dts/dove-sbc-a510.dts              | 4 ++--
 arch/arm/boot/dts/exynos5250-arndale.dts         | 2 +-
 arch/arm/boot/dts/imx23-evk.dts                  | 3 ++-
 arch/arm/boot/dts/imx23-stmp378x_devb.dts        | 3 ++-
 arch/arm/boot/dts/imx25-pdk.dts                  | 2 +-
 arch/arm/boot/dts/imx28-cfa10036.dts             | 2 +-
 arch/arm/boot/dts/imx28-evk.dts                  | 4 ++--
 arch/arm/boot/dts/imx28-m28cu3.dts               | 4 ++--
 arch/arm/boot/dts/imx28-m28evk.dts               | 6 +++---
 arch/arm/boot/dts/imx28-sps1.dts                 | 2 +-
 arch/arm/boot/dts/imx28-tx28.dts                 | 2 +-
 arch/arm/boot/dts/imx53-m53evk.dts               | 2 +-
 arch/arm/boot/dts/imx53-mba53.dts                | 2 +-
 arch/arm/boot/dts/imx53-tx53.dtsi                | 2 +-
 arch/arm/boot/dts/imx6q-dmo-edmqmx6.dts          | 2 +-
 arch/arm/boot/dts/imx6qdl-tx6.dtsi               | 3 +--
 arch/arm/boot/dts/imx6sx-sdb.dtsi                | 2 +-
 arch/arm/boot/dts/kirkwood-blackarmor-nas220.dts | 4 ++--
 arch/arm/boot/dts/kirkwood-nsa3x0-common.dtsi    | 2 +-
 arch/arm/boot/dts/omap3-beagle-xm.dts            | 2 +-
 arch/arm/boot/dts/omap3-beagle.dts               | 2 +-
 arch/arm/boot/dts/omap3-evm-common.dtsi          | 1 -
 arch/arm/boot/dts/omap3-overo-base.dtsi          | 4 ++--
 arch/arm/boot/dts/omap3-sb-t35.dtsi              | 1 -
 arch/arm/boot/dts/omap3-tao3530.dtsi             | 3 +--
 arch/arm/boot/dts/omap4-duovero.dtsi             | 2 +-
 arch/arm/boot/dts/s5pv210-aquila.dts             | 2 +-
 arch/arm/boot/dts/s5pv210-goni.dts               | 4 ++--
 arch/arm/boot/dts/tegra20-harmony.dts            | 2 +-
 arch/arm/boot/dts/tegra20-iris-512.dts           | 2 +-
 arch/arm/boot/dts/tegra20-seaboard.dts           | 2 +-
 arch/arm/boot/dts/tegra20-ventana.dts            | 2 +-
 36 files changed, 41 insertions(+), 47 deletions(-)

-- 
Regards,

Laurent Pinchart

^ permalink raw reply	[flat|nested] 19+ messages in thread

* [PATCH 01/37] ARM: dts: am437x-gp-evm: Remove unneeded regulator property
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
@ 2015-10-12 21:12 ` Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 02/37] ARM: dts: am43xx-epos-evm: " Laurent Pinchart
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:12 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The enable-active-high regulator property only makes sense when an
enable GPIO is specified. Remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/am437x-gp-evm.dts | 1 -
 1 file changed, 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/am437x-gp-evm.dts b/arch/arm/boot/dts/am437x-gp-evm.dts
index 84aa30c3235a..a3cd413aebf0 100644
--- a/arch/arm/boot/dts/am437x-gp-evm.dts
+++ b/arch/arm/boot/dts/am437x-gp-evm.dts
@@ -29,7 +29,6 @@
 		regulator-name = "vmmcsd_fixed";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
-		enable-active-high;
 	};
 
 	vtt_fixed: fixedregulator-vtt {
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 02/37] ARM: dts: am43xx-epos-evm: Remove unneeded regulator property
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 01/37] ARM: dts: am437x-gp-evm: Remove unneeded regulator property Laurent Pinchart
@ 2015-10-12 21:12 ` Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 07/37] ARM: dts: omap3-evm: Remove invalid enable-active-low " Laurent Pinchart
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:12 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The enable-active-high regulator property only makes sense when an
enable GPIO is specified. Remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/am43x-epos-evm.dts | 1 -
 1 file changed, 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index 795d68af6df9..705048bf17c5 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -28,7 +28,6 @@
 		regulator-name = "vmmcsd_fixed";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
-		enable-active-high;
 	};
 
 	lcd0: display {
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 07/37] ARM: dts: omap3-evm: Remove invalid enable-active-low regulator property
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 01/37] ARM: dts: am437x-gp-evm: Remove unneeded regulator property Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 02/37] ARM: dts: am43xx-epos-evm: " Laurent Pinchart
@ 2015-10-12 21:12 ` Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 08/37] ARM: dts: omap3-sb-t35: " Laurent Pinchart
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:12 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The property isn't part of the regulator-fixed DT bindings and isn't
used by the driver. Remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/omap3-evm-common.dtsi | 1 -
 1 file changed, 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/omap3-evm-common.dtsi b/arch/arm/boot/dts/omap3-evm-common.dtsi
index b2589f96d5f7..c55f256d014b 100644
--- a/arch/arm/boot/dts/omap3-evm-common.dtsi
+++ b/arch/arm/boot/dts/omap3-evm-common.dtsi
@@ -76,7 +76,6 @@
 
 &lcd_3v3 {
 	gpio = <&gpio5 25 GPIO_ACTIVE_LOW>;	/* gpio153 */
-	enable-active-low;
 };
 
 &lcd0 {
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 08/37] ARM: dts: omap3-sb-t35: Remove invalid enable-active-low regulator property
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
                   ` (2 preceding siblings ...)
  2015-10-12 21:12 ` [PATCH 07/37] ARM: dts: omap3-evm: Remove invalid enable-active-low " Laurent Pinchart
@ 2015-10-12 21:12 ` Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 09/37] ARM: dts: omap3-tao3530: " Laurent Pinchart
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:12 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The property isn't part of the regulator-fixed DT bindings and isn't
used by the driver. Remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/omap3-sb-t35.dtsi | 1 -
 1 file changed, 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/omap3-sb-t35.dtsi b/arch/arm/boot/dts/omap3-sb-t35.dtsi
index 827f614261f6..b77e25d20e07 100644
--- a/arch/arm/boot/dts/omap3-sb-t35.dtsi
+++ b/arch/arm/boot/dts/omap3-sb-t35.dtsi
@@ -50,7 +50,6 @@
 		pinctrl-names = "default";
 		pinctrl-0 = <&sb_t35_audio_amp>;
 		gpio = <&gpio2 29 GPIO_ACTIVE_LOW>;   /* gpio_61 */
-		enable-active-low;
 		regulator-always-on;
 	};
 };
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 09/37] ARM: dts: omap3-tao3530: Remove invalid enable-active-low regulator property
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
                   ` (3 preceding siblings ...)
  2015-10-12 21:12 ` [PATCH 08/37] ARM: dts: omap3-sb-t35: " Laurent Pinchart
@ 2015-10-12 21:12 ` Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 28/37] ARM: dts: omap4-duovero: Fix regulator enable GPIO polarity Laurent Pinchart
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:12 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The property isn't part of the regulator-fixed DT bindings and isn't
used by the driver. Remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/omap3-tao3530.dtsi | 1 -
 1 file changed, 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/omap3-tao3530.dtsi b/arch/arm/boot/dts/omap3-tao3530.dtsi
index 7bd8d9a4f67f..a520b4fdcf20 100644
--- a/arch/arm/boot/dts/omap3-tao3530.dtsi
+++ b/arch/arm/boot/dts/omap3-tao3530.dtsi
@@ -63,7 +63,6 @@
 		regulator-min-microvolt = <3150000>;
 		regulator-max-microvolt = <3150000>;
 		gpio = <&gpio5 29 GPIO_ACTIVE_LOW>;		/* gpio_157 */
-		enable-active-low;
 		startup-delay-us = <10000>;
 	};
 };
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 28/37] ARM: dts: omap4-duovero: Fix regulator enable GPIO polarity
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
                   ` (4 preceding siblings ...)
  2015-10-12 21:12 ` [PATCH 09/37] ARM: dts: omap3-tao3530: " Laurent Pinchart
@ 2015-10-12 21:12 ` Laurent Pinchart
  2015-10-12 21:12 ` [PATCH 30/37] ARM: dts: omap3-beagle-xm: " Laurent Pinchart
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:12 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The enable GPIO is active high, but is flagged as active low in the gpio
property. As the gpio property flags are currently unused by the driver
this doesn't cause any issue for now, but will break later if the driver
starts making use of the flags. Fix it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/omap4-duovero.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/omap4-duovero.dtsi b/arch/arm/boot/dts/omap4-duovero.dtsi
index f2a94fa62552..23c1a74f91ea 100644
--- a/arch/arm/boot/dts/omap4-duovero.dtsi
+++ b/arch/arm/boot/dts/omap4-duovero.dtsi
@@ -56,7 +56,7 @@
 		regulator-name = "w2cbw0015";
 		regulator-min-microvolt = <3000000>;
 		regulator-max-microvolt = <3000000>;
-		gpio = <&gpio2 11 GPIO_ACTIVE_LOW>;		/* gpio_43 */
+		gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>;		/* gpio_43 */
 		startup-delay-us = <70000>;
 		enable-active-high;
 		regulator-boot-on;
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 30/37] ARM: dts: omap3-beagle-xm: Fix regulator enable GPIO polarity
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
                   ` (5 preceding siblings ...)
  2015-10-12 21:12 ` [PATCH 28/37] ARM: dts: omap4-duovero: Fix regulator enable GPIO polarity Laurent Pinchart
@ 2015-10-12 21:12 ` Laurent Pinchart
  2015-10-12 21:13 ` [PATCH 31/37] ARM: dts: omap3-beagle: " Laurent Pinchart
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:12 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The enable GPIO is active low, but is flagged as active high in the gpio
property. As the gpio property flags are currently unused by the driver
this doesn't cause any issue for now, but will break later if the driver
starts making use of the flags. Fix it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/omap3-beagle-xm.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/omap3-beagle-xm.dts b/arch/arm/boot/dts/omap3-beagle-xm.dts
index 7c4dca122a91..f44f17673061 100644
--- a/arch/arm/boot/dts/omap3-beagle-xm.dts
+++ b/arch/arm/boot/dts/omap3-beagle-xm.dts
@@ -80,7 +80,7 @@
 		regulator-name = "hsusb2_vbus";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
-		gpio = <&twl_gpio 18 0>;	/* GPIO LEDA */
+		gpio = <&twl_gpio 18 GPIO_ACTIVE_LOW>;	/* GPIO LEDA */
 		startup-delay-us = <70000>;
 	};
 
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 31/37] ARM: dts: omap3-beagle: Fix regulator enable GPIO polarity
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
                   ` (6 preceding siblings ...)
  2015-10-12 21:12 ` [PATCH 30/37] ARM: dts: omap3-beagle-xm: " Laurent Pinchart
@ 2015-10-12 21:13 ` Laurent Pinchart
  2015-10-12 21:13 ` [PATCH 32/37] ARM: dts: omap3-overo-base: " Laurent Pinchart
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:13 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The enable GPIO is active low, but is flagged as active high in the gpio
property. As the gpio property flags are currently unused by the driver
this doesn't cause any issue for now, but will break later if the driver
starts making use of the flags. Fix it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/omap3-beagle.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts
index a5474113cd50..0849035643fc 100644
--- a/arch/arm/boot/dts/omap3-beagle.dts
+++ b/arch/arm/boot/dts/omap3-beagle.dts
@@ -55,7 +55,7 @@
 		regulator-name = "hsusb2_vbus";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
-		gpio = <&twl_gpio 18 0>;	/* GPIO LEDA */
+		gpio = <&twl_gpio 18 GPIO_ACTIVE_LOW>;	/* GPIO LEDA */
 		startup-delay-us = <70000>;
 	};
 
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 32/37] ARM: dts: omap3-overo-base: Fix regulator enable GPIO polarity
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
                   ` (7 preceding siblings ...)
  2015-10-12 21:13 ` [PATCH 31/37] ARM: dts: omap3-beagle: " Laurent Pinchart
@ 2015-10-12 21:13 ` Laurent Pinchart
  2015-10-12 21:13 ` [PATCH 33/37] ARM: dts: omap3-tao3530: " Laurent Pinchart
       [not found] ` <1444684386-17094-1-git-send-email-laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:13 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The enable GPIO is active low, but is flagged as active high in the gpio
property. As the gpio property flags are currently unused by the driver
this doesn't cause any issue for now, but will break later if the driver
starts making use of the flags. Fix it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/omap3-overo-base.dtsi | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/omap3-overo-base.dtsi b/arch/arm/boot/dts/omap3-overo-base.dtsi
index 18e1649681c1..1fa59d0e1e8a 100644
--- a/arch/arm/boot/dts/omap3-overo-base.dtsi
+++ b/arch/arm/boot/dts/omap3-overo-base.dtsi
@@ -65,7 +65,7 @@
 		regulator-name = "regulator-w3cbw003c-wifi-nreset";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
-		gpio = <&gpio1 16 GPIO_ACTIVE_HIGH>;		/* gpio_16: WiFi nReset */
+		gpio = <&gpio1 16 GPIO_ACTIVE_LOW>;		/* gpio_16: WiFi nReset */
 		startup-delay-us = <10000>;
 	};
 
@@ -75,7 +75,7 @@
 		regulator-name = "regulator-w3cbw003c-bt-nreset";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
-		gpio = <&gpio6 4 GPIO_ACTIVE_HIGH>;		/* gpio_164: BT nReset */
+		gpio = <&gpio6 4 GPIO_ACTIVE_LOW>;		/* gpio_164: BT nReset */
 		startup-delay-us = <10000>;
 	};
 };
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 33/37] ARM: dts: omap3-tao3530: Fix regulator enable GPIO polarity
  2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
                   ` (8 preceding siblings ...)
  2015-10-12 21:13 ` [PATCH 32/37] ARM: dts: omap3-overo-base: " Laurent Pinchart
@ 2015-10-12 21:13 ` Laurent Pinchart
       [not found] ` <1444684386-17094-1-git-send-email-laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
  10 siblings, 0 replies; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 21:13 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, Benoit Cousson

The enable GPIO is active low, but is flagged as active high in the gpio
property. As the gpio property flags are currently unused by the driver
this doesn't cause any issue for now, but will break later if the driver
starts making use of the flags. Fix it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 arch/arm/boot/dts/omap3-tao3530.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Cc: linux-omap@vger.kernel.org
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/boot/dts/omap3-tao3530.dtsi b/arch/arm/boot/dts/omap3-tao3530.dtsi
index a520b4fdcf20..68f75be5d99a 100644
--- a/arch/arm/boot/dts/omap3-tao3530.dtsi
+++ b/arch/arm/boot/dts/omap3-tao3530.dtsi
@@ -37,7 +37,7 @@
 		regulator-name = "hsusb2_vbus";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
-		gpio = <&twl_gpio 18 0>;	/* GPIO LEDA */
+		gpio = <&twl_gpio 18 GPIO_ACTIVE_LOW>;	/* GPIO LEDA */
 		startup-delay-us = <70000>;
 	};
 
-- 
2.4.9

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
       [not found] ` <1444684386-17094-1-git-send-email-laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
@ 2015-10-12 21:46   ` Tony Lindgren
  2015-10-12 22:19     ` Javier Martinez Canillas
  2015-10-13  6:19   ` Sascha Hauer
  2015-10-13 14:09   ` Shawn Guo
  2 siblings, 1 reply; 19+ messages in thread
From: Tony Lindgren @ 2015-10-12 21:46 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-omap-u79uwXL29TY76Z2rM5mHXA,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	linux-gpio-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Benoit Cousson, Jason Cooper,
	Andrew Lunn, Gregory Clement, Sebastian Hesselbarth, Kukjin Kim,
	Krzysztof Kozlowski, Shawn Guo, Sascha Hauer, Stephen Warren,
	Thierry Reding, Alexandre Courbot, Liam Girdwood, Mark Brown,
	Linus Walleij, Javier Martinez Canillas

* Laurent Pinchart <laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org> [151012 14:17]:
> Hello,
> 
> While working on regulators, GPIOs and DT I noticed that many of our DT source
> files incorrectly describe fixed regulators. The common error patterns are
> 
> - Usage of the undefined (and never parsed) enable-active-low property
> - Usage of the enable-active-high property without specifying an enable GPIO
> - Typos in the enabl GPIO property name (gpios instead of gpio)
> - Mismatch between the enable-active-high property (or the lack thereof) and
>   the enable GPIO flags
> 
> This patch series fixes those issues in all the DT sources after locating the
> errors using the following script.
> 
> ------------------------------------------------------------------------------
> #!/bin/sh
> 
> echo $1
> cat $1 | awk '
> BEGIN {
> 	open_drain = 0;
> 	active_high = 0;
> 	gpio = 0;
> 	flags = 0;
> }
> 
> match($0, /([a-zA-Z0-9@_-]*) {/, ary) {
> 	name = ary[1];
> }
> 
> /compatible.*"regulator-fixed"/ {
> 	found = 1;
> }
> 
> /enable-active-high/ {
> 	active_high = 1;
> }
> 
> /gpio-open-drain/ {
> 	open_drain = 1;
> }
> 
> match($0, /gpio += <.* ([^ ]*)>/, ary) {
> 	gpio = 1;
> 	flags = ary[1];
> 	if (flags == 0)
> 		flags = "GPIO_ACTIVE_HIGH";
> }
> 
> /}/ {
> 	if (found) {
> 		if (gpio) {
> 			print "\t" name ": active high " active_high " " flags " open drain " open_drain;
> 			if ((active_high && flags == "GPIO_ACTIVE_LOW") ||
> 			    (!active_high && flags == "GPIO_ACTIVE_HIGH"))
> 				print "WARNING: enable-active-high and flags do not match"
> 		} else {
> 			if (active_high)
> 				print "WARNING: active high without GPIO"
> 			if (open_drain)
> 				print "WARNING: open drain without GPIO"
> 		}
> 	}
> 
> 	gpio = 0;
> 	found = 0;
> 	active_high = 0;
> 	open_drain = 0;
> 	flags = 0;
> }
> '
> ------------------------------------------------------------------------------
> 
> All patches except for the ones touching omap3-beagle-xm and omap3-overo-base
> are untested as I lack test hardware.
> 
> As there's no dependency between the patches touching different source files
> the appropriate maintainers could take their share of the patches in their
> tree. Alternatively I could send a single pull request after collecting all
> acks but that might be more complex.

Nice clean-up. For omaps, there's an earlier patch posted by
Javier Martinez Canillas <javier-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org> as "[PATCH] ARM: dts: Use
defined GPIO constants in flags cell for OMAP2+ boards". Can you guys do some
cross checking and let me know which combination I should appluy for omaps?

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
  2015-10-12 21:46   ` [PATCH 00/37] ARM: dts: Fix fixed regulators " Tony Lindgren
@ 2015-10-12 22:19     ` Javier Martinez Canillas
  2015-10-12 22:22       ` Laurent Pinchart
  0 siblings, 1 reply; 19+ messages in thread
From: Javier Martinez Canillas @ 2015-10-12 22:19 UTC (permalink / raw)
  To: Tony Lindgren, Laurent Pinchart
  Cc: linux-arm-kernel, devicetree, linux-omap, linux-samsung-soc,
	linux-tegra, linux-gpio, linux-kernel, Benoit Cousson,
	Jason Cooper, Andrew Lunn, Gregory Clement, Sebastian Hesselbarth,
	Kukjin Kim, Krzysztof Kozlowski, Shawn Guo, Sascha Hauer,
	Stephen Warren, Thierry Reding, Alexandre Courbot, Liam Girdwood,
	Mark Brown, Linus Walleij

Hello Tony,

On 10/12/2015 11:46 PM, Tony Lindgren wrote:
> * Laurent Pinchart <laurent.pinchart@ideasonboard.com> [151012 14:17]:
>> Hello,
>>
>> While working on regulators, GPIOs and DT I noticed that many of our DT source
>> files incorrectly describe fixed regulators. The common error patterns are
>>
>> - Usage of the undefined (and never parsed) enable-active-low property
>> - Usage of the enable-active-high property without specifying an enable GPIO
>> - Typos in the enabl GPIO property name (gpios instead of gpio)
>> - Mismatch between the enable-active-high property (or the lack thereof) and
>>   the enable GPIO flags
>>
>> This patch series fixes those issues in all the DT sources after locating the
>> errors using the following script.
>>
>> ------------------------------------------------------------------------------
>> #!/bin/sh
>>
>> echo $1
>> cat $1 | awk '
>> BEGIN {
>> 	open_drain = 0;
>> 	active_high = 0;
>> 	gpio = 0;
>> 	flags = 0;
>> }
>>
>> match($0, /([a-zA-Z0-9@_-]*) {/, ary) {
>> 	name = ary[1];
>> }
>>
>> /compatible.*"regulator-fixed"/ {
>> 	found = 1;
>> }
>>
>> /enable-active-high/ {
>> 	active_high = 1;
>> }
>>
>> /gpio-open-drain/ {
>> 	open_drain = 1;
>> }
>>
>> match($0, /gpio += <.* ([^ ]*)>/, ary) {
>> 	gpio = 1;
>> 	flags = ary[1];
>> 	if (flags == 0)
>> 		flags = "GPIO_ACTIVE_HIGH";
>> }
>>
>> /}/ {
>> 	if (found) {
>> 		if (gpio) {
>> 			print "\t" name ": active high " active_high " " flags " open drain " open_drain;
>> 			if ((active_high && flags == "GPIO_ACTIVE_LOW") ||
>> 			    (!active_high && flags == "GPIO_ACTIVE_HIGH"))
>> 				print "WARNING: enable-active-high and flags do not match"
>> 		} else {
>> 			if (active_high)
>> 				print "WARNING: active high without GPIO"
>> 			if (open_drain)
>> 				print "WARNING: open drain without GPIO"
>> 		}
>> 	}
>>
>> 	gpio = 0;
>> 	found = 0;
>> 	active_high = 0;
>> 	open_drain = 0;
>> 	flags = 0;
>> }
>> '
>> ------------------------------------------------------------------------------
>>
>> All patches except for the ones touching omap3-beagle-xm and omap3-overo-base
>> are untested as I lack test hardware.
>>
>> As there's no dependency between the patches touching different source files
>> the appropriate maintainers could take their share of the patches in their
>> tree. Alternatively I could send a single pull request after collecting all
>> acks but that might be more complex.
> 
> Nice clean-up. For omaps, there's an earlier patch posted by
> Javier Martinez Canillas <javier@osg.samsung.com> as "[PATCH] ARM: dts: Use
> defined GPIO constants in flags cell for OMAP2+ boards". Can you guys do some
> cross checking and let me know which combination I should appluy for omaps?
>

Since Laurent's changes for OMAP are part of a bigger series and my patch
was only for OMAP, probably makes sense for you to pick his patches and I
can re-spin mine on top of that.

BTW, I posted as a single patch since the changes were trivial but maybe
that made handling these conflicts harder and I should split the changes
instead, since I'll resend anyways.

What do you prefer? a patch per SoC family (i.e: OMAP{2,3,4,5}) or patch
per board DTS?
 
> Regards,
> 
> Tony
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
  2015-10-12 22:19     ` Javier Martinez Canillas
@ 2015-10-12 22:22       ` Laurent Pinchart
  2015-10-12 22:24         ` Tony Lindgren
  0 siblings, 1 reply; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-12 22:22 UTC (permalink / raw)
  To: Javier Martinez Canillas
  Cc: Tony Lindgren, linux-arm-kernel, devicetree, linux-omap,
	linux-samsung-soc, linux-tegra, linux-gpio, linux-kernel,
	Benoit Cousson, Jason Cooper, Andrew Lunn, Gregory Clement,
	Sebastian Hesselbarth, Kukjin Kim, Krzysztof Kozlowski, Shawn Guo,
	Sascha Hauer, Stephen Warren, Thierry Reding, Alexandre Courbot,
	Liam Girdwood, Mark Brown, Linus Walleij

Hi Javier,

On Tuesday 13 October 2015 00:19:20 Javier Martinez Canillas wrote:
> On 10/12/2015 11:46 PM, Tony Lindgren wrote:
> > * Laurent Pinchart <laurent.pinchart@ideasonboard.com> [151012 14:17]:
> >> Hello,
> >> 
> >> While working on regulators, GPIOs and DT I noticed that many of our DT
> >> source files incorrectly describe fixed regulators. The common error
> >> patterns are
> >> 
> >> - Usage of the undefined (and never parsed) enable-active-low property
> >> - Usage of the enable-active-high property without specifying an enable
> >>   GPIO
> >> - Typos in the enabl GPIO property name (gpios instead of gpio)
> >> - Mismatch between the enable-active-high property (or the lack thereof)
> >>   and the enable GPIO flags
> >> 
> >> This patch series fixes those issues in all the DT sources after locating
> >> the errors using the following script.
> >> 
> >> -------------------------------------------------------------------------
> >> !/bin/sh
> >> 
> >> echo $1
> >> cat $1 | awk '
> >> BEGIN {
> >> 	open_drain = 0;
> >> 	active_high = 0;
> >> 	gpio = 0;
> >> 	flags = 0;
> >> }
> >> 
> >> match($0, /([a-zA-Z0-9@_-]*) {/, ary) {
> >> 	name = ary[1];
> >> }
> >> 
> >> /compatible.*"regulator-fixed"/ {
> >> 	found = 1;
> >> }
> >> 
> >> /enable-active-high/ {
> >> 	active_high = 1;
> >> }
> >> 
> >> /gpio-open-drain/ {
> >> 	open_drain = 1;
> >> }
> >> 
> >> match($0, /gpio += <.* ([^ ]*)>/, ary) {
> >> 	gpio = 1;
> >> 	flags = ary[1];
> >> 	if (flags == 0)
> >> 		flags = "GPIO_ACTIVE_HIGH";
> >> }
> >> 
> >> /}/ {
> >> 	if (found) {
> >> 		if (gpio) {
> >> 			print "\t" name ": active high " active_high " " flags " open 
drain "
> >> 			open_drain;
> >> 			if ((active_high && flags == "GPIO_ACTIVE_LOW") ||
> >> 			    (!active_high && flags == "GPIO_ACTIVE_HIGH"))
> >> 				print "WARNING: enable-active-high and flags do not 
match"
> >> 		} else {
> >> 			if (active_high)
> >> 				print "WARNING: active high without GPIO"
> >> 			if (open_drain)
> >> 				print "WARNING: open drain without GPIO"
> >> 		}
> >> 	}
> >> 	
> >> 	gpio = 0;
> >> 	found = 0;
> >> 	active_high = 0;
> >> 	open_drain = 0;
> >> 	flags = 0;
> >> }
> >> '
> >> -------------------------------------------------------------------------
> >> 
> >> All patches except for the ones touching omap3-beagle-xm and
> >> omap3-overo-base are untested as I lack test hardware.
> >> 
> >> As there's no dependency between the patches touching different source
> >> files the appropriate maintainers could take their share of the patches
> >> in their tree. Alternatively I could send a single pull request after
> >> collecting all acks but that might be more complex.
> > 
> > Nice clean-up. For omaps, there's an earlier patch posted by
> > Javier Martinez Canillas <javier@osg.samsung.com> as "[PATCH] ARM: dts:
> > Use defined GPIO constants in flags cell for OMAP2+ boards". Can you guys
> > do some cross checking and let me know which combination I should appluy
> > for omaps?
>
> Since Laurent's changes for OMAP are part of a bigger series and my patch
> was only for OMAP, probably makes sense for you to pick his patches and I
> can re-spin mine on top of that.
> 
> BTW, I posted as a single patch since the changes were trivial but maybe
> that made handling these conflicts harder and I should split the changes
> instead, since I'll resend anyways.
> 
> What do you prefer? a patch per SoC family (i.e: OMAP{2,3,4,5}) or patch
> per board DTS?

My series will likely miss the next merge window as more discussion is needed. 
I'll thus respin the patches on top of yours, please proceed without caring 
about this.

-- 
Regards,

Laurent Pinchart

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
  2015-10-12 22:22       ` Laurent Pinchart
@ 2015-10-12 22:24         ` Tony Lindgren
  0 siblings, 0 replies; 19+ messages in thread
From: Tony Lindgren @ 2015-10-12 22:24 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: Javier Martinez Canillas,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-omap-u79uwXL29TY76Z2rM5mHXA,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	linux-gpio-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Benoit Cousson, Jason Cooper,
	Andrew Lunn, Gregory Clement, Sebastian Hesselbarth, Kukjin Kim,
	Krzysztof Kozlowski, Shawn Guo, Sascha Hauer, Stephen Warren,
	Thierry Reding, Alexandre Courbot, Liam Girdwood, Mark Brown,
	Linus Walleij

* Laurent Pinchart <laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org> [151012 15:26]:
> Hi Javier,
> 
> On Tuesday 13 October 2015 00:19:20 Javier Martinez Canillas wrote:
> > On 10/12/2015 11:46 PM, Tony Lindgren wrote:
> > > * Laurent Pinchart <laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org> [151012 14:17]:
> > >> Hello,
> > >> 
> > >> While working on regulators, GPIOs and DT I noticed that many of our DT
> > >> source files incorrectly describe fixed regulators. The common error
> > >> patterns are
> > >> 
> > >> - Usage of the undefined (and never parsed) enable-active-low property
> > >> - Usage of the enable-active-high property without specifying an enable
> > >>   GPIO
> > >> - Typos in the enabl GPIO property name (gpios instead of gpio)
> > >> - Mismatch between the enable-active-high property (or the lack thereof)
> > >>   and the enable GPIO flags
> > >> 
> > >> This patch series fixes those issues in all the DT sources after locating
> > >> the errors using the following script.
> > >> 
> > >> -------------------------------------------------------------------------
> > >> !/bin/sh
> > >> 
> > >> echo $1
> > >> cat $1 | awk '
> > >> BEGIN {
> > >> 	open_drain = 0;
> > >> 	active_high = 0;
> > >> 	gpio = 0;
> > >> 	flags = 0;
> > >> }
> > >> 
> > >> match($0, /([a-zA-Z0-9@_-]*) {/, ary) {
> > >> 	name = ary[1];
> > >> }
> > >> 
> > >> /compatible.*"regulator-fixed"/ {
> > >> 	found = 1;
> > >> }
> > >> 
> > >> /enable-active-high/ {
> > >> 	active_high = 1;
> > >> }
> > >> 
> > >> /gpio-open-drain/ {
> > >> 	open_drain = 1;
> > >> }
> > >> 
> > >> match($0, /gpio += <.* ([^ ]*)>/, ary) {
> > >> 	gpio = 1;
> > >> 	flags = ary[1];
> > >> 	if (flags == 0)
> > >> 		flags = "GPIO_ACTIVE_HIGH";
> > >> }
> > >> 
> > >> /}/ {
> > >> 	if (found) {
> > >> 		if (gpio) {
> > >> 			print "\t" name ": active high " active_high " " flags " open 
> drain "
> > >> 			open_drain;
> > >> 			if ((active_high && flags == "GPIO_ACTIVE_LOW") ||
> > >> 			    (!active_high && flags == "GPIO_ACTIVE_HIGH"))
> > >> 				print "WARNING: enable-active-high and flags do not 
> match"
> > >> 		} else {
> > >> 			if (active_high)
> > >> 				print "WARNING: active high without GPIO"
> > >> 			if (open_drain)
> > >> 				print "WARNING: open drain without GPIO"
> > >> 		}
> > >> 	}
> > >> 	
> > >> 	gpio = 0;
> > >> 	found = 0;
> > >> 	active_high = 0;
> > >> 	open_drain = 0;
> > >> 	flags = 0;
> > >> }
> > >> '
> > >> -------------------------------------------------------------------------
> > >> 
> > >> All patches except for the ones touching omap3-beagle-xm and
> > >> omap3-overo-base are untested as I lack test hardware.
> > >> 
> > >> As there's no dependency between the patches touching different source
> > >> files the appropriate maintainers could take their share of the patches
> > >> in their tree. Alternatively I could send a single pull request after
> > >> collecting all acks but that might be more complex.
> > > 
> > > Nice clean-up. For omaps, there's an earlier patch posted by
> > > Javier Martinez Canillas <javier-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org> as "[PATCH] ARM: dts:
> > > Use defined GPIO constants in flags cell for OMAP2+ boards". Can you guys
> > > do some cross checking and let me know which combination I should appluy
> > > for omaps?
> >
> > Since Laurent's changes for OMAP are part of a bigger series and my patch
> > was only for OMAP, probably makes sense for you to pick his patches and I
> > can re-spin mine on top of that.
> > 
> > BTW, I posted as a single patch since the changes were trivial but maybe
> > that made handling these conflicts harder and I should split the changes
> > instead, since I'll resend anyways.
> > 
> > What do you prefer? a patch per SoC family (i.e: OMAP{2,3,4,5}) or patch
> > per board DTS?
> 
> My series will likely miss the next merge window as more discussion is needed. 
> I'll thus respin the patches on top of yours, please proceed without caring 
> about this.

OK applying Javier's patch into omap-for-v4.4/dt then.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
       [not found] ` <1444684386-17094-1-git-send-email-laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
  2015-10-12 21:46   ` [PATCH 00/37] ARM: dts: Fix fixed regulators " Tony Lindgren
@ 2015-10-13  6:19   ` Sascha Hauer
  2015-10-13 14:09   ` Shawn Guo
  2 siblings, 0 replies; 19+ messages in thread
From: Sascha Hauer @ 2015-10-13  6:19 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Andrew Lunn,
	Krzysztof Kozlowski, Tony Lindgren, Linus Walleij, Liam Girdwood,
	Gregory Clement, Thierry Reding, Alexandre Courbot,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA, Kukjin Kim,
	Sebastian Hesselbarth, devicetree-u79uwXL29TY76Z2rM5mHXA,
	Jason Cooper, Stephen Warren, linux-gpio-u79uwXL29TY76Z2rM5mHXA,
	Mark Brown, linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	linux-omap-u79uwXL29TY76Z2rM5mHXA, Sascha Hauer,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Benoit Cousson, Shawn Guo

On Tue, Oct 13, 2015 at 12:12:29AM +0300, Laurent Pinchart wrote:
> Hello,
> 
> While working on regulators, GPIOs and DT I noticed that many of our DT source
> files incorrectly describe fixed regulators. The common error patterns are
> 
> - Usage of the undefined (and never parsed) enable-active-low property
> - Usage of the enable-active-high property without specifying an enable GPIO
> - Typos in the enabl GPIO property name (gpios instead of gpio)
> - Mismatch between the enable-active-high property (or the lack thereof) and
>   the enable GPIO flags
> 
> This patch series fixes those issues in all the DT sources after locating the
> errors using the following script.

Nice. For the i.MX boards:

Reviewed-by: Sascha Hauer <s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>

Sascha


-- 
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 |
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
       [not found] ` <1444684386-17094-1-git-send-email-laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
  2015-10-12 21:46   ` [PATCH 00/37] ARM: dts: Fix fixed regulators " Tony Lindgren
  2015-10-13  6:19   ` Sascha Hauer
@ 2015-10-13 14:09   ` Shawn Guo
  2015-10-13 14:17     ` Laurent Pinchart
  2 siblings, 1 reply; 19+ messages in thread
From: Shawn Guo @ 2015-10-13 14:09 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-omap-u79uwXL29TY76Z2rM5mHXA,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	linux-gpio-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Benoit Cousson,
	Tony Lindgren, Jason Cooper, Andrew Lunn, Gregory Clement,
	Sebastian Hesselbarth, Kukjin Kim, Krzysztof Kozlowski,
	Sascha Hauer, Stephen Warren, Thierry Reding, Alexandre Courbot,
	Liam Girdwood, Mark Brown, Linus Walleij

On Tue, Oct 13, 2015 at 12:12:29AM +0300, Laurent Pinchart wrote:
> Laurent Pinchart (37):
...
>   ARM: imx6sx-sdb: Fix typo in regulator enable GPIO property
...
>   ARM: dts: imx6qdl-tx6: Fix regulator enable GPIO polarity
...
>   ARM: dts: imx23-evk: Fix regulator enable GPIO polarity
>   ARM: dts: imx23-stmp378x_devb: Fix regulator enable GPIO polarity
>   ARM: dts: imx25-pdk: Fix regulator enable GPIO polarity
>   ARM: dts: imx28-cfa10036: Fix regulator enable GPIO polarity
>   ARM: dts: imx28-evk: Fix regulator enable GPIO polarity
>   ARM: dts: imx28-m28cu3: Fix regulator enable GPIO polarity
>   ARM: dts: imx28-m28evk: Fix regulator enable GPIO polarity
>   ARM: dts: imx28-sps1: Fix regulator enable GPIO polarity
>   ARM: dts: imx28-tx28: Fix regulator enable GPIO polarity
>   ARM: dts: imx53-m53evk: Fix regulator enable GPIO polarity
>   ARM: dts: imx53-mba53: Fix regulator enable GPIO polarity
>   ARM: dts: imx53-tx53: Fix regulator enable GPIO polarity
>   ARM: dts: imx6q-dmo-edmqmx6: Fix regulator enable GPIO polarity

Applied these 15 patches, thanks.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
  2015-10-13 14:09   ` Shawn Guo
@ 2015-10-13 14:17     ` Laurent Pinchart
  2015-10-13 15:09       ` Shawn Guo
  0 siblings, 1 reply; 19+ messages in thread
From: Laurent Pinchart @ 2015-10-13 14:17 UTC (permalink / raw)
  To: Shawn Guo
  Cc: linux-arm-kernel, devicetree, linux-omap, linux-samsung-soc,
	linux-tegra, linux-gpio, linux-kernel, Benoit Cousson,
	Tony Lindgren, Jason Cooper, Andrew Lunn, Gregory Clement,
	Sebastian Hesselbarth, Kukjin Kim, Krzysztof Kozlowski,
	Sascha Hauer, Stephen Warren, Thierry Reding, Alexandre Courbot,
	Liam Girdwood, Mark Brown, Linus Walleij

Hi Shawn,

On Tuesday 13 October 2015 22:09:46 Shawn Guo wrote:
> On Tue, Oct 13, 2015 at 12:12:29AM +0300, Laurent Pinchart wrote:
> > Laurent Pinchart (37):
> ...
> 
> >   ARM: imx6sx-sdb: Fix typo in regulator enable GPIO property
> 
> ...
> 
> >   ARM: dts: imx6qdl-tx6: Fix regulator enable GPIO polarity
> 
> ...
> 
> >   ARM: dts: imx23-evk: Fix regulator enable GPIO polarity
> >   ARM: dts: imx23-stmp378x_devb: Fix regulator enable GPIO polarity
> >   ARM: dts: imx25-pdk: Fix regulator enable GPIO polarity
> >   ARM: dts: imx28-cfa10036: Fix regulator enable GPIO polarity
> >   ARM: dts: imx28-evk: Fix regulator enable GPIO polarity
> >   ARM: dts: imx28-m28cu3: Fix regulator enable GPIO polarity
> >   ARM: dts: imx28-m28evk: Fix regulator enable GPIO polarity
> >   ARM: dts: imx28-sps1: Fix regulator enable GPIO polarity
> >   ARM: dts: imx28-tx28: Fix regulator enable GPIO polarity
> >   ARM: dts: imx53-m53evk: Fix regulator enable GPIO polarity
> >   ARM: dts: imx53-mba53: Fix regulator enable GPIO polarity
> >   ARM: dts: imx53-tx53: Fix regulator enable GPIO polarity
> >   ARM: dts: imx6q-dmo-edmqmx6: Fix regulator enable GPIO polarity
> 
> Applied these 15 patches, thanks.

There's ongoing discussions regarding whether this is the right thing to do. 
Please see http://www.spinics.net/lists/arm-kernel/msg451724.html. It's thus a 
bit early to apply the patches at this point I'm afraid.

-- 
Regards,

Laurent Pinchart


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity
  2015-10-13 14:17     ` Laurent Pinchart
@ 2015-10-13 15:09       ` Shawn Guo
  0 siblings, 0 replies; 19+ messages in thread
From: Shawn Guo @ 2015-10-13 15:09 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: linux-arm-kernel, devicetree, linux-omap, linux-samsung-soc,
	linux-tegra, linux-gpio, linux-kernel, Benoit Cousson,
	Tony Lindgren, Jason Cooper, Andrew Lunn, Gregory Clement,
	Sebastian Hesselbarth, Kukjin Kim, Krzysztof Kozlowski,
	Sascha Hauer, Stephen Warren, Thierry Reding, Alexandre Courbot,
	Liam Girdwood, Mark Brown, Linus Walleij

On Tue, Oct 13, 2015 at 05:17:24PM +0300, Laurent Pinchart wrote:
> Hi Shawn,
> 
> On Tuesday 13 October 2015 22:09:46 Shawn Guo wrote:
> > On Tue, Oct 13, 2015 at 12:12:29AM +0300, Laurent Pinchart wrote:
> > > Laurent Pinchart (37):
> > ...
> > 
> > >   ARM: imx6sx-sdb: Fix typo in regulator enable GPIO property
> > 
> > ...
> > 
> > >   ARM: dts: imx6qdl-tx6: Fix regulator enable GPIO polarity
> > 
> > ...
> > 
> > >   ARM: dts: imx23-evk: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx23-stmp378x_devb: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx25-pdk: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx28-cfa10036: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx28-evk: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx28-m28cu3: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx28-m28evk: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx28-sps1: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx28-tx28: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx53-m53evk: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx53-mba53: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx53-tx53: Fix regulator enable GPIO polarity
> > >   ARM: dts: imx6q-dmo-edmqmx6: Fix regulator enable GPIO polarity
> > 
> > Applied these 15 patches, thanks.
> 
> There's ongoing discussions regarding whether this is the right thing to do. 
> Please see http://www.spinics.net/lists/arm-kernel/msg451724.html. It's thus a 
> bit early to apply the patches at this point I'm afraid.

Okay, dropped them except the first one which fixes a typo for
imx6sx-sdb.

Shawn

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2015-10-13 15:09 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-12 21:12 [PATCH 00/37] ARM: dts: Fix fixed regulators enable GPIO polarity Laurent Pinchart
2015-10-12 21:12 ` [PATCH 01/37] ARM: dts: am437x-gp-evm: Remove unneeded regulator property Laurent Pinchart
2015-10-12 21:12 ` [PATCH 02/37] ARM: dts: am43xx-epos-evm: " Laurent Pinchart
2015-10-12 21:12 ` [PATCH 07/37] ARM: dts: omap3-evm: Remove invalid enable-active-low " Laurent Pinchart
2015-10-12 21:12 ` [PATCH 08/37] ARM: dts: omap3-sb-t35: " Laurent Pinchart
2015-10-12 21:12 ` [PATCH 09/37] ARM: dts: omap3-tao3530: " Laurent Pinchart
2015-10-12 21:12 ` [PATCH 28/37] ARM: dts: omap4-duovero: Fix regulator enable GPIO polarity Laurent Pinchart
2015-10-12 21:12 ` [PATCH 30/37] ARM: dts: omap3-beagle-xm: " Laurent Pinchart
2015-10-12 21:13 ` [PATCH 31/37] ARM: dts: omap3-beagle: " Laurent Pinchart
2015-10-12 21:13 ` [PATCH 32/37] ARM: dts: omap3-overo-base: " Laurent Pinchart
2015-10-12 21:13 ` [PATCH 33/37] ARM: dts: omap3-tao3530: " Laurent Pinchart
     [not found] ` <1444684386-17094-1-git-send-email-laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
2015-10-12 21:46   ` [PATCH 00/37] ARM: dts: Fix fixed regulators " Tony Lindgren
2015-10-12 22:19     ` Javier Martinez Canillas
2015-10-12 22:22       ` Laurent Pinchart
2015-10-12 22:24         ` Tony Lindgren
2015-10-13  6:19   ` Sascha Hauer
2015-10-13 14:09   ` Shawn Guo
2015-10-13 14:17     ` Laurent Pinchart
2015-10-13 15:09       ` 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).