mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v1 1/1] arm64: dts: imx8mn-evk: Pass GPIO_OPEN_DRAIN flag on i2c3 GPIOs
@ 2026-10-15  8:11 Stefano Radaelli
  2026-10-15 11:02 ` Peng Fan
  2026-10-15 13:33 ` Peng Fan
  0 siblings, 2 replies; 5+ messages in thread
From: Stefano Radaelli @ 2026-10-15  8:11 UTC (permalink / raw)
  To: Frank Li, linux-kernel, devicetree, imx, linux-arm-kernel
  Cc: pierluigi.p, Stefano Radaelli, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam

From: Stefano Radaelli <stefano.r@variscite.com>

scl-gpios and sda-gpios need GPIO_OPEN_DRAIN flag, otherwise the
following run-time warning is seen:

gpio-146 (scl): enforced open drain please flag it properly in DT/ACPI DSDT/board file

Signed-off-by: Stefano Radaelli <stefano.r@variscite.com>
---
 arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
index 3e590afa4fab..036afa0f6990 100644
--- a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
@@ -287,8 +287,8 @@ &i2c3 {
 	pinctrl-names = "default", "gpio";
 	pinctrl-0 = <&pinctrl_i2c3>;
 	pinctrl-1 = <&pinctrl_i2c3_gpio>;
-	scl-gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>;
-	sda-gpios = <&gpio5 19 GPIO_ACTIVE_HIGH>;
+	scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+	sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 	status = "okay";
 
 	pca6416: gpio@20 {
-- 
2.47.3


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

* Re: [PATCH v1 1/1] arm64: dts: imx8mn-evk: Pass GPIO_OPEN_DRAIN flag on i2c3 GPIOs
  2026-10-15  8:11 [PATCH v1 1/1] arm64: dts: imx8mn-evk: Pass GPIO_OPEN_DRAIN flag on i2c3 GPIOs Stefano Radaelli
@ 2026-10-15 11:02 ` Peng Fan
  2026-10-15 11:12   ` Stefano Radaelli
  2026-10-15 13:33 ` Peng Fan
  1 sibling, 1 reply; 5+ messages in thread
From: Peng Fan @ 2026-10-15 11:02 UTC (permalink / raw)
  To: Stefano Radaelli
  Cc: Frank Li, linux-kernel, devicetree, imx, linux-arm-kernel,
	pierluigi.p, Stefano Radaelli, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam

On Thu, Oct 15, 2026 at 10:11:49AM +0200, Stefano Radaelli wrote:
>From: Stefano Radaelli <stefano.r@variscite.com>
>
>scl-gpios and sda-gpios need GPIO_OPEN_DRAIN flag, otherwise the
>following run-time warning is seen:
>
>gpio-146 (scl): enforced open drain please flag it properly in DT/ACPI DSDT/board file
>
>Signed-off-by: Stefano Radaelli <stefano.r@variscite.com>
>---
> arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
>diff --git a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
>index 3e590afa4fab..036afa0f6990 100644
>--- a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
>+++ b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
>@@ -287,8 +287,8 @@ &i2c3 {
> 	pinctrl-names = "default", "gpio";
> 	pinctrl-0 = <&pinctrl_i2c3>;
> 	pinctrl-1 = <&pinctrl_i2c3_gpio>;
>-	scl-gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>;
>-	sda-gpios = <&gpio5 19 GPIO_ACTIVE_HIGH>;
>+	scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
>+	sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;

I think ODE should be configured for pinctrl_i2c3_gpio.

Regards
Peng


> 	status = "okay";
> 
> 	pca6416: gpio@20 {
>-- 
>2.47.3
>

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

* Re: [PATCH v1 1/1] arm64: dts: imx8mn-evk: Pass GPIO_OPEN_DRAIN flag on i2c3 GPIOs
  2026-10-15 11:02 ` Peng Fan
@ 2026-10-15 11:12   ` Stefano Radaelli
  2026-10-15 13:32     ` Peng Fan
  0 siblings, 1 reply; 5+ messages in thread
From: Stefano Radaelli @ 2026-10-15 11:12 UTC (permalink / raw)
  To: Peng Fan
  Cc: Frank Li, linux-kernel, devicetree, imx, linux-arm-kernel,
	pierluigi.p, Stefano Radaelli, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam

On Thu, Oct 15, 2026 at 07:02:48PM +0800, Peng Fan wrote:
> On Thu, Oct 15, 2026 at 10:11:49AM +0200, Stefano Radaelli wrote:
> >From: Stefano Radaelli <stefano.r@variscite.com>
> >
> >scl-gpios and sda-gpios need GPIO_OPEN_DRAIN flag, otherwise the
> >following run-time warning is seen:
> >
> >gpio-146 (scl): enforced open drain please flag it properly in DT/ACPI DSDT/board file
> >
> >Signed-off-by: Stefano Radaelli <stefano.r@variscite.com>
> >---
> > arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> >diff --git a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
> >index 3e590afa4fab..036afa0f6990 100644
> >--- a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
> >+++ b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
> >@@ -287,8 +287,8 @@ &i2c3 {
> > 	pinctrl-names = "default", "gpio";
> > 	pinctrl-0 = <&pinctrl_i2c3>;
> > 	pinctrl-1 = <&pinctrl_i2c3_gpio>;
> >-	scl-gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>;
> >-	sda-gpios = <&gpio5 19 GPIO_ACTIVE_HIGH>;
> >+	scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
> >+	sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
> 
> I think ODE should be configured for pinctrl_i2c3_gpio.
> 
> Regards
> Peng

Hi Peng,

I followed the same approach used in commit
2b1d5d054d29e08926f05cfa30e34d149644585e, as well as in the other i.MX
DTS files that use GPIO_OPEN_DRAIN for I2C bus recovery.

Even in imx8mn-evk.dtsi itself, I2C2 uses the same configuration,
with GPIO_OPEN_DRAIN specified in the GPIO properties and without
ODE enabled in the pinctrl.

Wouldn't introducing a different configuration for I2C3 create some
inconsistency and potentially cause confusion?

If enabling ODE in the pinctrl is the preferred approach, wouldn't it
make more sense to address this in a separate follow-up patch, updating
the existing I2C recovery pinctrl configurations consistently across the
affected DTS files?

What do you think?

Best Regards,
Stefano

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

* Re: [PATCH v1 1/1] arm64: dts: imx8mn-evk: Pass GPIO_OPEN_DRAIN flag on i2c3 GPIOs
  2026-10-15 11:12   ` Stefano Radaelli
@ 2026-10-15 13:32     ` Peng Fan
  0 siblings, 0 replies; 5+ messages in thread
From: Peng Fan @ 2026-10-15 13:32 UTC (permalink / raw)
  To: Stefano Radaelli
  Cc: Frank Li, linux-kernel, devicetree, imx, linux-arm-kernel,
	pierluigi.p, Stefano Radaelli, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam

On Thu, Oct 15, 2026 at 01:12:40PM +0200, Stefano Radaelli wrote:
>On Thu, Oct 15, 2026 at 07:02:48PM +0800, Peng Fan wrote:
>> On Thu, Oct 15, 2026 at 10:11:49AM +0200, Stefano Radaelli wrote:
>> >From: Stefano Radaelli <stefano.r@variscite.com>
>> >
>> >scl-gpios and sda-gpios need GPIO_OPEN_DRAIN flag, otherwise the
>> >following run-time warning is seen:
>> >
>> >gpio-146 (scl): enforced open drain please flag it properly in DT/ACPI DSDT/board file
>> >
>> >Signed-off-by: Stefano Radaelli <stefano.r@variscite.com>
>> >---
>> > arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi | 4 ++--
>> > 1 file changed, 2 insertions(+), 2 deletions(-)
>> >
>> >diff --git a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
>> >index 3e590afa4fab..036afa0f6990 100644
>> >--- a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
>> >+++ b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
>> >@@ -287,8 +287,8 @@ &i2c3 {
>> > 	pinctrl-names = "default", "gpio";
>> > 	pinctrl-0 = <&pinctrl_i2c3>;
>> > 	pinctrl-1 = <&pinctrl_i2c3_gpio>;
>> >-	scl-gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>;
>> >-	sda-gpios = <&gpio5 19 GPIO_ACTIVE_HIGH>;
>> >+	scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
>> >+	sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
>> 
>> I think ODE should be configured for pinctrl_i2c3_gpio.
>> 
>> Regards
>> Peng
>
>Hi Peng,
>
>I followed the same approach used in commit
>2b1d5d054d29e08926f05cfa30e34d149644585e, as well as in the other i.MX
>DTS files that use GPIO_OPEN_DRAIN for I2C bus recovery.
>
>Even in imx8mn-evk.dtsi itself, I2C2 uses the same configuration,
>with GPIO_OPEN_DRAIN specified in the GPIO properties and without
>ODE enabled in the pinctrl.
>
>Wouldn't introducing a different configuration for I2C3 create some
>inconsistency and potentially cause confusion?
>
>If enabling ODE in the pinctrl is the preferred approach, wouldn't it
>make more sense to address this in a separate follow-up patch, updating
>the existing I2C recovery pinctrl configurations consistently across the
>affected DTS files?
>
>What do you think?

w/o GPIO_OPEN_DRAIN, there is risk that GPIO emulated I2C is not using
open drain mode.

Enabling ODE in pad will not make the warning disappear (:, so still need
the flag.

It is fine to add the flag in your path.

I will fixes all the wrong usage for the GPIO I2C pad settings.

Regards
Peng

>
>Best Regards,
>Stefano
>
>

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

* Re: [PATCH v1 1/1] arm64: dts: imx8mn-evk: Pass GPIO_OPEN_DRAIN flag on i2c3 GPIOs
  2026-10-15  8:11 [PATCH v1 1/1] arm64: dts: imx8mn-evk: Pass GPIO_OPEN_DRAIN flag on i2c3 GPIOs Stefano Radaelli
  2026-10-15 11:02 ` Peng Fan
@ 2026-10-15 13:33 ` Peng Fan
  1 sibling, 0 replies; 5+ messages in thread
From: Peng Fan @ 2026-10-15 13:33 UTC (permalink / raw)
  To: Stefano Radaelli
  Cc: Frank Li, linux-kernel, devicetree, imx, linux-arm-kernel,
	pierluigi.p, Stefano Radaelli, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam

On Thu, Oct 15, 2026 at 10:11:49AM +0200, Stefano Radaelli wrote:
>From: Stefano Radaelli <stefano.r@variscite.com>
>
>scl-gpios and sda-gpios need GPIO_OPEN_DRAIN flag, otherwise the
>following run-time warning is seen:
>
>gpio-146 (scl): enforced open drain please flag it properly in DT/ACPI DSDT/board file
>
>Signed-off-by: Stefano Radaelli <stefano.r@variscite.com>

Acked-by: Peng Fan <peng.fan@nxp.com>

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

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

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-15  8:11 [PATCH v1 1/1] arm64: dts: imx8mn-evk: Pass GPIO_OPEN_DRAIN flag on i2c3 GPIOs Stefano Radaelli
2026-10-15 11:02 ` Peng Fan
2026-10-15 11:12   ` Stefano Radaelli
2026-10-15 13:32     ` Peng Fan
2026-10-15 13:33 ` Peng Fan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®