ARM: dts: exynos: Fix GPIO polarity for thr GalaxyS3 CM36651 sensor's bus
diff mbox series

Message ID 20200326142037.20418-1-m.szyprowski@samsung.com
State Accepted
Commit abe9a2c8e13c604f559d99bd925b0a4451e22735
Headers show
Series
  • ARM: dts: exynos: Fix GPIO polarity for thr GalaxyS3 CM36651 sensor's bus
Related show

Commit Message

Marek Szyprowski March 26, 2020, 2:20 p.m. UTC
GPIO lines for the CM36651 sensor I2C bus use the normal not the inverted
polarity. This bug has been there since adding the CM36651 sensor by
commit 85cb4e0bd2294, but went unnoticed because the "i2c-gpio" driver
ignored the GPIO polarity specified in the device-tree.

The recent conversion of "i2c-gpio" driver to the new, descriptor based
GPIO API, automatically made it the DT-specified polarity aware, what
broke the CM36651 sensor operation.

Fixes: c769eaf7a85d ("ARM: dts: exynos: Split Trats2 DTS in preparation for Midas boards")
Fixes: c10d3290cbde ("ARM: dts: Use GPIO constants for flags cells in exynos4412 boards")
Fixes: 85cb4e0bd229 ("ARM: dts: add cm36651 light/proximity sensor node for exynos4412-trats2")
CC: stable@vger.kernel.org # 4.16+
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
---
 arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Krzysztof Kozlowski March 27, 2020, 12:28 p.m. UTC | #1
On Thu, Mar 26, 2020 at 03:20:37PM +0100, Marek Szyprowski wrote:
> GPIO lines for the CM36651 sensor I2C bus use the normal not the inverted
> polarity. This bug has been there since adding the CM36651 sensor by
> commit 85cb4e0bd2294, but went unnoticed because the "i2c-gpio" driver
> ignored the GPIO polarity specified in the device-tree.
> 
> The recent conversion of "i2c-gpio" driver to the new, descriptor based
> GPIO API, automatically made it the DT-specified polarity aware, what
> broke the CM36651 sensor operation.
> 
> Fixes: c769eaf7a85d ("ARM: dts: exynos: Split Trats2 DTS in preparation for Midas boards")
> Fixes: c10d3290cbde ("ARM: dts: Use GPIO constants for flags cells in exynos4412 boards")
> Fixes: 85cb4e0bd229 ("ARM: dts: add cm36651 light/proximity sensor node for exynos4412-trats2")

Thanks, applied. I kept only last Fixes as this is the original error.
All later were just refactorings of the same bug.

Best regards,
Krzysztof

Patch
diff mbox series

diff --git a/arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi b/arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi
index 44f97546dd0a..f910aa924bfb 100644
--- a/arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi
+++ b/arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi
@@ -68,7 +68,7 @@ 
 
 	i2c_cm36651: i2c-gpio-2 {
 		compatible = "i2c-gpio";
-		gpios = <&gpf0 0 GPIO_ACTIVE_LOW>, <&gpf0 1 GPIO_ACTIVE_LOW>;
+		gpios = <&gpf0 0 GPIO_ACTIVE_HIGH>, <&gpf0 1 GPIO_ACTIVE_HIGH>;
 		i2c-gpio,delay-us = <2>;
 		#address-cells = <1>;
 		#size-cells = <0>;