Message ID | 20220929011557.4165216-1-dmitry.torokhov@gmail.com |
---|---|
State | New |
Headers | show |
Series | [1/3] arm64: dts: exynos: fix polarity of "enable" line of NFC chip | expand |
On Wed, 28 Sep 2022 18:15:55 -0700, Dmitry Torokhov wrote: > According to s3fwrn5 driver code the "enable" GPIO line is driven "high" > when chip is not in use (mode is S3FWRN5_MODE_COLD), and is driven "low" > when chip is in use. > > s3fwrn5_phy_power_ctrl(): > > ... > gpio_set_value(phy->gpio_en, 1); > ... > if (mode != S3FWRN5_MODE_COLD) { > msleep(S3FWRN5_EN_WAIT_TIME); > gpio_set_value(phy->gpio_en, 0); > msleep(S3FWRN5_EN_WAIT_TIME); > } > > [...] Applied, thanks! [1/3] arm64: dts: exynos: fix polarity of "enable" line of NFC chip https://git.kernel.org/krzk/linux/c/bd1a665a01b4d65fd8dc6fece4b376fa5c8c55bb Best regards,
On Wed, 28 Sep 2022 18:15:55 -0700, Dmitry Torokhov wrote: > According to s3fwrn5 driver code the "enable" GPIO line is driven "high" > when chip is not in use (mode is S3FWRN5_MODE_COLD), and is driven "low" > when chip is in use. > > s3fwrn5_phy_power_ctrl(): > > ... > gpio_set_value(phy->gpio_en, 1); > ... > if (mode != S3FWRN5_MODE_COLD) { > msleep(S3FWRN5_EN_WAIT_TIME); > gpio_set_value(phy->gpio_en, 0); > msleep(S3FWRN5_EN_WAIT_TIME); > } > > [...] Applied, thanks! [2/3] arm64: dts: qcom: msm8916-samsung-a2015: fix polarity of "enable" line of NFC chip commit: 978bc4c578a6d7baffc5646b0f327da036b3051b Best regards,
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi index 91c9bd1b47dd..bde6a6bb8dfc 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi @@ -795,7 +795,7 @@ s3fwrn5: nfc@27 { reg = <0x27>; interrupt-parent = <&gpa1>; interrupts = <3 IRQ_TYPE_EDGE_RISING>; - en-gpios = <&gpf1 4 GPIO_ACTIVE_HIGH>; + en-gpios = <&gpf1 4 GPIO_ACTIVE_LOW>; wake-gpios = <&gpj0 2 GPIO_ACTIVE_HIGH>; }; };
According to s3fwrn5 driver code the "enable" GPIO line is driven "high" when chip is not in use (mode is S3FWRN5_MODE_COLD), and is driven "low" when chip is in use. s3fwrn5_phy_power_ctrl(): ... gpio_set_value(phy->gpio_en, 1); ... if (mode != S3FWRN5_MODE_COLD) { msleep(S3FWRN5_EN_WAIT_TIME); gpio_set_value(phy->gpio_en, 0); msleep(S3FWRN5_EN_WAIT_TIME); } Therefore the line described by "en-gpios" property should be annotated as "active low". The wakeup gpio appears to have correct polarity (active high). Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> --- arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)