* [PATCH v2 0/2] arm64: dts: glymur-crd: Add reset GPIO to touchscreen
@ 2026-05-22 19:55 Pradyot Kumar Nayak
2026-05-22 19:55 ` [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property Pradyot Kumar Nayak
2026-05-22 19:55 ` [PATCH v2 2/2] arm64: dts: glymur-crd: Add reset GPIO to touchscreen node Pradyot Kumar Nayak
0 siblings, 2 replies; 6+ messages in thread
From: Pradyot Kumar Nayak @ 2026-05-22 19:55 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Abel Vesa, Dmitry Baryshkov, Benjamin Tissoires,
Jiri Kosina
Cc: linux-arm-msm, linux-input, Konrad Dybcio, devicetree,
linux-kernel,
20260519-glymur-mahua-common-nodes-v2-1-9f1b89a3f398,
Pradyot Kumar Nayak
The touchscreen on Glymur/Mahua CRDs has a dedicated GPIO reset line that must
be explicitly modeled in DT so the i2c-hid driver can deassert it on resume.
Without this, the device stays offline after suspend/resume and all I2C
transactions fail with -ENXIO.
Patch 1 adds reset-gpios to the hid-over-i2c binding.
Patch 2 wires the GPIO in the Glymur CRD DTSI.
prerequisite-message-id: 20260519-glymur-mahua-common-nodes-v2-1-9f1b89a3f398@oss.qualcomm.com
Signed-off-by: Pradyot Kumar Nayak <pradyot.nayak@oss.qualcomm.com>
---
Changes in v2:
- Add dt-bindings patch to document reset-gpios in hid-over-i2c schema
(flagged by dtbs_check on v1)
- No change to the DTS patch itself
- Link to v1: https://lore.kernel.org/r/20260522-arm64-dts-glymur-crd-add-reset-gpio-to-touchscreen-v1-1-c7653924acdc@oss.qualcomm.com
---
Pradyot Kumar Nayak (2):
dt-bindings: input: hid-over-i2c: Add reset-gpios property
arm64: dts: glymur-crd: Add reset GPIO to touchscreen node
Documentation/devicetree/bindings/input/hid-over-i2c.yaml | 4 ++++
arch/arm64/boot/dts/qcom/glymur-crd.dtsi | 2 ++
2 files changed, 6 insertions(+)
---
base-commit: 1d376e58cb4a94f89de0fa9195d583ad6b86eb89
change-id: 20260522-arm64-dts-glymur-crd-add-reset-gpio-to-touchscreen-5892beded29b
Best regards,
--
Pradyot Kumar Nayak <pradyot.nayak@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property
2026-05-22 19:55 [PATCH v2 0/2] arm64: dts: glymur-crd: Add reset GPIO to touchscreen Pradyot Kumar Nayak
@ 2026-05-22 19:55 ` Pradyot Kumar Nayak
2026-05-25 16:24 ` Conor Dooley
` (2 more replies)
2026-05-22 19:55 ` [PATCH v2 2/2] arm64: dts: glymur-crd: Add reset GPIO to touchscreen node Pradyot Kumar Nayak
1 sibling, 3 replies; 6+ messages in thread
From: Pradyot Kumar Nayak @ 2026-05-22 19:55 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Abel Vesa, Dmitry Baryshkov, Benjamin Tissoires,
Jiri Kosina
Cc: linux-arm-msm, linux-input, Konrad Dybcio, devicetree,
linux-kernel,
20260519-glymur-mahua-common-nodes-v2-1-9f1b89a3f398,
Pradyot Kumar Nayak
Document reset-gpios property for devices that explicitly require
the reset line to be de-asserted during power up.
Signed-off-by: Pradyot Kumar Nayak <pradyot.nayak@oss.qualcomm.com>
---
Documentation/devicetree/bindings/input/hid-over-i2c.yaml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/input/hid-over-i2c.yaml b/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
index 138caad96a29..fe0ec4fce673 100644
--- a/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
+++ b/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
@@ -50,6 +50,10 @@ properties:
description: Time required by the device after enabling its regulators
or powering it on, before it is ready for communication.
+ reset-gpios:
+ maxItems: 1
+ description: GPIO line used to reset the device.
+
touchscreen-inverted-x: true
touchscreen-inverted-y: true
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH v2 2/2] arm64: dts: glymur-crd: Add reset GPIO to touchscreen node
2026-05-22 19:55 [PATCH v2 0/2] arm64: dts: glymur-crd: Add reset GPIO to touchscreen Pradyot Kumar Nayak
2026-05-22 19:55 ` [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property Pradyot Kumar Nayak
@ 2026-05-22 19:55 ` Pradyot Kumar Nayak
1 sibling, 0 replies; 6+ messages in thread
From: Pradyot Kumar Nayak @ 2026-05-22 19:55 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Abel Vesa, Dmitry Baryshkov, Benjamin Tissoires,
Jiri Kosina
Cc: linux-arm-msm, linux-input, Konrad Dybcio, devicetree,
linux-kernel,
20260519-glymur-mahua-common-nodes-v2-1-9f1b89a3f398,
Pradyot Kumar Nayak
The touchscreen module on Glymur/Mahua CRDs is different from the one
used on Hamoa CRDs and requires the reset-gpios to be wired to the device.
Without this in place the reset line will remain permanently asserted
during resume leaving the device offline and causing all I2C transactions
to fail with -ENXIO.
Error Logs:
i2c_hid_of 3-0038: failed to change power setting.
i2c_hid_of 3-0038: PM: dpm_run_callback(): i2c_hid_core_pm_resume [i2c_hid] returns -6
i2c_hid_of 3-0038: PM: failed to resume async: error -6
Add the reset GPIO so the driver can deassert the line on resume,
restoring I2C communication with the device.
Fixes: e6bf559f7eb9 ("arm64: dts: qcom: glymur-crd: Enable keyboard, trackpad and touchscreen")
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Pradyot Kumar Nayak <pradyot.nayak@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/glymur-crd.dtsi | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
index 1de3a49f49e4..2259577b9ae1 100644
--- a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
+++ b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
@@ -623,6 +623,8 @@ touchscreen@38 {
vdd-supply = <&vreg_misc_3p3>;
vddl-supply = <&vreg_l15b_e0_1p8>;
+ reset-gpios = <&tlmm 48 GPIO_ACTIVE_LOW>;
+
pinctrl-0 = <&ts0_default>;
pinctrl-names = "default";
};
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property
2026-05-22 19:55 ` [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property Pradyot Kumar Nayak
@ 2026-05-25 16:24 ` Conor Dooley
2026-05-25 19:22 ` Dmitry Baryshkov
2026-05-26 8:55 ` Hans de Goede
2 siblings, 0 replies; 6+ messages in thread
From: Conor Dooley @ 2026-05-25 16:24 UTC (permalink / raw)
To: Pradyot Kumar Nayak
Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Abel Vesa, Dmitry Baryshkov, Benjamin Tissoires,
Jiri Kosina, linux-arm-msm, linux-input, Konrad Dybcio,
devicetree, linux-kernel,
20260519-glymur-mahua-common-nodes-v2-1-9f1b89a3f398
[-- Attachment #1: Type: text/plain, Size: 1289 bytes --]
On Sat, May 23, 2026 at 01:25:37AM +0530, Pradyot Kumar Nayak wrote:
> Document reset-gpios property for devices that explicitly require
> the reset line to be de-asserted during power up.
If there are devices that require this, it seems short-sighted to not
add their compatibles to hid-over-i2c.yaml and make the property
required for them.
pw-bot: changes-requested
Cheers,
Conor.
>
> Signed-off-by: Pradyot Kumar Nayak <pradyot.nayak@oss.qualcomm.com>
> ---
> Documentation/devicetree/bindings/input/hid-over-i2c.yaml | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/input/hid-over-i2c.yaml b/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> index 138caad96a29..fe0ec4fce673 100644
> --- a/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> +++ b/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> @@ -50,6 +50,10 @@ properties:
> description: Time required by the device after enabling its regulators
> or powering it on, before it is ready for communication.
>
> + reset-gpios:
> + maxItems: 1
> + description: GPIO line used to reset the device.
> +
> touchscreen-inverted-x: true
>
> touchscreen-inverted-y: true
>
> --
> 2.43.0
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property
2026-05-22 19:55 ` [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property Pradyot Kumar Nayak
2026-05-25 16:24 ` Conor Dooley
@ 2026-05-25 19:22 ` Dmitry Baryshkov
2026-05-26 8:55 ` Hans de Goede
2 siblings, 0 replies; 6+ messages in thread
From: Dmitry Baryshkov @ 2026-05-25 19:22 UTC (permalink / raw)
To: Pradyot Kumar Nayak
Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Abel Vesa, Benjamin Tissoires, Jiri Kosina,
linux-arm-msm, linux-input, Konrad Dybcio, devicetree,
linux-kernel,
20260519-glymur-mahua-common-nodes-v2-1-9f1b89a3f398
On Sat, May 23, 2026 at 01:25:37AM +0530, Pradyot Kumar Nayak wrote:
> Document reset-gpios property for devices that explicitly require
> the reset line to be de-asserted during power up.
>
> Signed-off-by: Pradyot Kumar Nayak <pradyot.nayak@oss.qualcomm.com>
> ---
> Documentation/devicetree/bindings/input/hid-over-i2c.yaml | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/input/hid-over-i2c.yaml b/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> index 138caad96a29..fe0ec4fce673 100644
> --- a/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> +++ b/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> @@ -50,6 +50,10 @@ properties:
> description: Time required by the device after enabling its regulators
> or powering it on, before it is ready for communication.
>
> + reset-gpios:
> + maxItems: 1
> + description: GPIO line used to reset the device.
> +
If you are extending the schema, where are the driver changes?
> touchscreen-inverted-x: true
>
> touchscreen-inverted-y: true
>
> --
> 2.43.0
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property
2026-05-22 19:55 ` [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property Pradyot Kumar Nayak
2026-05-25 16:24 ` Conor Dooley
2026-05-25 19:22 ` Dmitry Baryshkov
@ 2026-05-26 8:55 ` Hans de Goede
2 siblings, 0 replies; 6+ messages in thread
From: Hans de Goede @ 2026-05-26 8:55 UTC (permalink / raw)
To: Pradyot Kumar Nayak, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Abel Vesa, Dmitry Baryshkov,
Benjamin Tissoires, Jiri Kosina
Cc: linux-arm-msm, linux-input, Konrad Dybcio, devicetree,
linux-kernel,
20260519-glymur-mahua-common-nodes-v2-1-9f1b89a3f398
Hi,
On 22-May-26 21:55, Pradyot Kumar Nayak wrote:
> Document reset-gpios property for devices that explicitly require
> the reset line to be de-asserted during power up.
>
> Signed-off-by: Pradyot Kumar Nayak <pradyot.nayak@oss.qualcomm.com>
> ---
> Documentation/devicetree/bindings/input/hid-over-i2c.yaml | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/input/hid-over-i2c.yaml b/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> index 138caad96a29..fe0ec4fce673 100644
> --- a/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> +++ b/Documentation/devicetree/bindings/input/hid-over-i2c.yaml
> @@ -50,6 +50,10 @@ properties:
> description: Time required by the device after enabling its regulators
> or powering it on, before it is ready for communication.
>
> + reset-gpios:
> + maxItems: 1
> + description: GPIO line used to reset the device.
> +
For I2C HID devices which need a reset, we typically also
need reset timings, trying to do I2C transfers to the device directly
after the reset has been de-asserted typically will not work and
some touchscreen-model specific delay is necessary.
So far in the DT world this has been handled by touchscreen
vendor specific bindings:
Documentation/devicetree/bindings/input/elan,ekth6915.yaml
Documentation/devicetree/bindings/input/focaltech,ft8112.yaml
Documentation/devicetree/bindings/input/ilitek,ili9882t.yaml
Which are all 3 handled by:
drivers/hid/i2c-hid/i2c-hid-of-elan.c
Which has per compatible match-data with the reset timings.
You should probably extend drivers/hid/i2c-hid/i2c-hid-of-elan.c
with support for the CRD touchscreen and either add a new
compatible to one of the existing 3 bindings; or if the touchscreen
controller IC is from a vendor without a binding yet maybe add
a new bindings file?
There also is:
Documentation/devicetree/bindings/input/goodix,gt7375p.yaml
which is handled by:
drivers/hid/i2c-hid/i2c-hid-of-goodix.c
and is special in its own way.
Regards,
Hans
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2026-05-26 8:55 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-22 19:55 [PATCH v2 0/2] arm64: dts: glymur-crd: Add reset GPIO to touchscreen Pradyot Kumar Nayak
2026-05-22 19:55 ` [PATCH v2 1/2] dt-bindings: input: hid-over-i2c: Add reset-gpios property Pradyot Kumar Nayak
2026-05-25 16:24 ` Conor Dooley
2026-05-25 19:22 ` Dmitry Baryshkov
2026-05-26 8:55 ` Hans de Goede
2026-05-22 19:55 ` [PATCH v2 2/2] arm64: dts: glymur-crd: Add reset GPIO to touchscreen node Pradyot Kumar Nayak
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox