This should be added for boards where there is no pull-up on the reset pin,
as the driver will otherwise switch the reset signal to high-impedance to
save power, which obviously not safe without pull-up.
Signed-off-by: Esben Haabendal <esben@geanix.com>
---
Documentation/devicetree/bindings/input/touchscreen/goodix.yaml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml
index eb4992f708b70fef93bd4b59b9565123f7c6ad5d..21ac13046b6e021eeb403d854aabc945801dd29f 100644
--- a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml
+++ b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml
@@ -45,6 +45,10 @@ properties:
reset-gpios:
maxItems: 1
+ goodix,no-reset-pull-up:
+ type: boolean
+ description: There is no pull-up on reset pin
+
AVDD28-supply:
description: Analog power supply regulator on AVDD28 pin
--
2.49.0
On Tue, Apr 29, 2025 at 11:56:11AM +0200, Esben Haabendal wrote: > This should be added for boards where there is no pull-up on the reset pin, > as the driver will otherwise switch the reset signal to high-impedance to > save power, which obviously not safe without pull-up. > > Signed-off-by: Esben Haabendal <esben@geanix.com> > --- > Documentation/devicetree/bindings/input/touchscreen/goodix.yaml | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > index eb4992f708b70fef93bd4b59b9565123f7c6ad5d..21ac13046b6e021eeb403d854aabc945801dd29f 100644 > --- a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > +++ b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > @@ -45,6 +45,10 @@ properties: > reset-gpios: > maxItems: 1 > > + goodix,no-reset-pull-up: > + type: boolean > + description: There is no pull-up on reset pin I have to wonder, why are these system using the reset property if the reset is not usable? Shouldn't the property be omitted? > + > AVDD28-supply: > description: Analog power supply regulator on AVDD28 pin > > > -- > 2.49.0 >
Hi, On 29-Apr-25 17:31, Conor Dooley wrote: > On Tue, Apr 29, 2025 at 11:56:11AM +0200, Esben Haabendal wrote: >> This should be added for boards where there is no pull-up on the reset pin, >> as the driver will otherwise switch the reset signal to high-impedance to >> save power, which obviously not safe without pull-up. >> >> Signed-off-by: Esben Haabendal <esben@geanix.com> >> --- >> Documentation/devicetree/bindings/input/touchscreen/goodix.yaml | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> index eb4992f708b70fef93bd4b59b9565123f7c6ad5d..21ac13046b6e021eeb403d854aabc945801dd29f 100644 >> --- a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> +++ b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> @@ -45,6 +45,10 @@ properties: >> reset-gpios: >> maxItems: 1 >> >> + goodix,no-reset-pull-up: >> + type: boolean >> + description: There is no pull-up on reset pin > > I have to wonder, why are these system using the reset property if the > reset is not usable? Shouldn't the property be omitted? The reset is usable, but it lacks an external pull-up resistor, so the driver cannot switch the gpio output on the CPU going to the touchscreen controller to input to save power as it does by default. Regards, Hans > >> + >> AVDD28-supply: >> description: Analog power supply regulator on AVDD28 pin >> >> >> -- >> 2.49.0 >>
On Tue, Apr 29, 2025 at 05:42:46PM +0200, Hans de Goede wrote: > Hi, > > On 29-Apr-25 17:31, Conor Dooley wrote: > > On Tue, Apr 29, 2025 at 11:56:11AM +0200, Esben Haabendal wrote: > >> This should be added for boards where there is no pull-up on the reset pin, > >> as the driver will otherwise switch the reset signal to high-impedance to > >> save power, which obviously not safe without pull-up. > >> > >> Signed-off-by: Esben Haabendal <esben@geanix.com> > >> --- > >> Documentation/devicetree/bindings/input/touchscreen/goodix.yaml | 4 ++++ > >> 1 file changed, 4 insertions(+) > >> > >> diff --git a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> index eb4992f708b70fef93bd4b59b9565123f7c6ad5d..21ac13046b6e021eeb403d854aabc945801dd29f 100644 > >> --- a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> +++ b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> @@ -45,6 +45,10 @@ properties: > >> reset-gpios: > >> maxItems: 1 > >> > >> + goodix,no-reset-pull-up: > >> + type: boolean > >> + description: There is no pull-up on reset pin > > > > I have to wonder, why are these system using the reset property if the > > reset is not usable? Shouldn't the property be omitted? > > The reset is usable, but it lacks an external pull-up resistor, so > the driver cannot switch the gpio output on the CPU going to > the touchscreen controller to input to save power as it does by default. Ah, okay. The patch seems okay then. Acked-by: Conor Dooley <conor.dooley@microchip.com>
"Conor Dooley" <conor@kernel.org> writes: > On Tue, Apr 29, 2025 at 11:56:11AM +0200, Esben Haabendal wrote: >> This should be added for boards where there is no pull-up on the reset pin, >> as the driver will otherwise switch the reset signal to high-impedance to >> save power, which obviously not safe without pull-up. >> >> Signed-off-by: Esben Haabendal <esben@geanix.com> >> --- >> Documentation/devicetree/bindings/input/touchscreen/goodix.yaml | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> index eb4992f708b70fef93bd4b59b9565123f7c6ad5d..21ac13046b6e021eeb403d854aabc945801dd29f 100644 >> --- a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> +++ b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> @@ -45,6 +45,10 @@ properties: >> reset-gpios: >> maxItems: 1 >> >> + goodix,no-reset-pull-up: >> + type: boolean >> + description: There is no pull-up on reset pin > > I have to wonder, why are these system using the reset property if the > reset is not usable? Shouldn't the property be omitted? The reset are fully functional. It just have to be controlled in push-pull mode. Because of the lack of external pull-up, configuring the reset gpio as input (to save power) puts the reset pin in an unknown state. /Esben
On Tue, Apr 29, 2025 at 05:37:34PM +0200, Esben Haabendal wrote: > "Conor Dooley" <conor@kernel.org> writes: > > > On Tue, Apr 29, 2025 at 11:56:11AM +0200, Esben Haabendal wrote: > >> This should be added for boards where there is no pull-up on the reset pin, > >> as the driver will otherwise switch the reset signal to high-impedance to > >> save power, which obviously not safe without pull-up. > >> > >> Signed-off-by: Esben Haabendal <esben@geanix.com> > >> --- > >> Documentation/devicetree/bindings/input/touchscreen/goodix.yaml | 4 ++++ > >> 1 file changed, 4 insertions(+) > >> > >> diff --git a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> index eb4992f708b70fef93bd4b59b9565123f7c6ad5d..21ac13046b6e021eeb403d854aabc945801dd29f 100644 > >> --- a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> +++ b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> @@ -45,6 +45,10 @@ properties: > >> reset-gpios: > >> maxItems: 1 > >> > >> + goodix,no-reset-pull-up: > >> + type: boolean > >> + description: There is no pull-up on reset pin > > > > I have to wonder, why are these system using the reset property if the > > reset is not usable? Shouldn't the property be omitted? > > The reset are fully functional. It just have to be controlled in > push-pull mode. > > Because of the lack of external pull-up, configuring the reset gpio as > input (to save power) puts the reset pin in an unknown state. How much power do we save by doing this? I don't recall other drivers trying to switch reset GPIO into input mode after performing reset... Thanks. -- Dmitry
"Dmitry Torokhov" <dmitry.torokhov@gmail.com> writes: > On Tue, Apr 29, 2025 at 05:37:34PM +0200, Esben Haabendal wrote: >> "Conor Dooley" <conor@kernel.org> writes: >> >> > On Tue, Apr 29, 2025 at 11:56:11AM +0200, Esben Haabendal wrote: >> >> This should be added for boards where there is no pull-up on the reset pin, >> >> as the driver will otherwise switch the reset signal to high-impedance to >> >> save power, which obviously not safe without pull-up. >> >> >> >> Signed-off-by: Esben Haabendal <esben@geanix.com> >> >> --- >> >> Documentation/devicetree/bindings/input/touchscreen/goodix.yaml | 4 ++++ >> >> 1 file changed, 4 insertions(+) >> >> >> >> diff --git a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> >> index eb4992f708b70fef93bd4b59b9565123f7c6ad5d..21ac13046b6e021eeb403d854aabc945801dd29f 100644 >> >> --- a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> >> +++ b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml >> >> @@ -45,6 +45,10 @@ properties: >> >> reset-gpios: >> >> maxItems: 1 >> >> >> >> + goodix,no-reset-pull-up: >> >> + type: boolean >> >> + description: There is no pull-up on reset pin >> > >> > I have to wonder, why are these system using the reset property if the >> > reset is not usable? Shouldn't the property be omitted? >> >> The reset are fully functional. It just have to be controlled in >> push-pull mode. >> >> Because of the lack of external pull-up, configuring the reset gpio as >> input (to save power) puts the reset pin in an unknown state. > > How much power do we save by doing this? I don't recall other drivers > trying to switch reset GPIO into input mode after performing reset... I don't know. I also don't recall seeing this in other drivers. But as not knowing how much power it is, I did not feel comofortable proposing to remove it. /Esben
On Tue, Apr 29, 2025 at 09:02:14PM +0200, Esben Haabendal wrote: > "Dmitry Torokhov" <dmitry.torokhov@gmail.com> writes: > > > On Tue, Apr 29, 2025 at 05:37:34PM +0200, Esben Haabendal wrote: > >> "Conor Dooley" <conor@kernel.org> writes: > >> > >> > On Tue, Apr 29, 2025 at 11:56:11AM +0200, Esben Haabendal wrote: > >> >> This should be added for boards where there is no pull-up on the reset pin, > >> >> as the driver will otherwise switch the reset signal to high-impedance to > >> >> save power, which obviously not safe without pull-up. > >> >> > >> >> Signed-off-by: Esben Haabendal <esben@geanix.com> > >> >> --- > >> >> Documentation/devicetree/bindings/input/touchscreen/goodix.yaml | 4 ++++ > >> >> 1 file changed, 4 insertions(+) > >> >> > >> >> diff --git a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> >> index eb4992f708b70fef93bd4b59b9565123f7c6ad5d..21ac13046b6e021eeb403d854aabc945801dd29f 100644 > >> >> --- a/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> >> +++ b/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml > >> >> @@ -45,6 +45,10 @@ properties: > >> >> reset-gpios: > >> >> maxItems: 1 > >> >> > >> >> + goodix,no-reset-pull-up: > >> >> + type: boolean > >> >> + description: There is no pull-up on reset pin > >> > > >> > I have to wonder, why are these system using the reset property if the > >> > reset is not usable? Shouldn't the property be omitted? > >> > >> The reset are fully functional. It just have to be controlled in > >> push-pull mode. > >> > >> Because of the lack of external pull-up, configuring the reset gpio as > >> input (to save power) puts the reset pin in an unknown state. > > > > How much power do we save by doing this? I don't recall other drivers > > trying to switch reset GPIO into input mode after performing reset... > > I don't know. I also don't recall seeing this in other drivers. But as > not knowing how much power it is, I did not feel comofortable proposing > to remove it. Hmm, setting RESET line to "input" was supposed to be removed in 2015: https://lore.kernel.org/all/1473530257-7495-5-git-send-email-irina.tirdea@intel.com/ And I even said that I applied that patch, but I can't find it. And it's been 10 years so I have no idea... The wording about power savings seem to have come from Hans, maybe he knows/remembers more? But I really wonder if we are not better off keeping reset line in "inactive" output state, like every other driver does. Thanks. -- Dmitry
© 2016 - 2025 Red Hat, Inc.