From: Charles Wang <charles.goodix@gmail.com>
To: krzk@kernel.org, dmitry.torokhov@gmail.com, hbarnor@chromium.org,
dianders@chromium.org, conor.dooley@microchip.com
Cc: jikos@kernel.org, bentiss@kernel.org,
linux-input@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
Charles Wang <charles.goodix@gmail.com>
Subject: [PATCH] dt-bindings: input: Goodix SPI HID Touchscreen
Date: Fri, 18 Oct 2024 10:08:16 +0800 [thread overview]
Message-ID: <20241018020815.3098263-2-charles.goodix@gmail.com> (raw)
The Goodix GT7986U touch controller report touch data according to the
HID protocol through the SPI bus. However, it is incompatible with
Microsoft's HID-over-SPI protocol.
Signed-off-by: Charles Wang <charles.goodix@gmail.com>
---
.../bindings/input/goodix,gt7375p.yaml | 68 ++++++++++++++++---
1 file changed, 58 insertions(+), 10 deletions(-)
diff --git a/Documentation/devicetree/bindings/input/goodix,gt7375p.yaml b/Documentation/devicetree/bindings/input/goodix,gt7375p.yaml
index 358cb8275..184d9c320 100644
--- a/Documentation/devicetree/bindings/input/goodix,gt7375p.yaml
+++ b/Documentation/devicetree/bindings/input/goodix,gt7375p.yaml
@@ -8,27 +8,27 @@ title: Goodix GT7375P touchscreen
maintainers:
- Douglas Anderson <dianders@chromium.org>
+ - Charles Wang <charles.goodix@gmail.com>
description:
- Supports the Goodix GT7375P touchscreen.
- This touchscreen uses the i2c-hid protocol but has some non-standard
- power sequencing required.
-
-allOf:
- - $ref: /schemas/input/touchscreen/touchscreen.yaml#
+ The Goodix GT7375P and GT7986U touchscreens support both SPI and I2C interfaces.
+ With the I2C interface, they use the i2c-hid protocol but require non-standard
+ power sequencing. With the SPI interface, they use a custom HID protocol that
+ is incompatible with Microsoft's HID-over-SPI protocol.
properties:
compatible:
oneOf:
- - const: goodix,gt7375p
+ - items:
+ - const: goodix,gt7375p
- items:
- const: goodix,gt7986u
- const: goodix,gt7375p
+ - items:
+ - const: goodix,gt7986u
reg:
- enum:
- - 0x5d
- - 0x14
+ maxItems: 1
interrupts:
maxItems: 1
@@ -57,6 +57,15 @@ properties:
This property is used to avoid the back-powering issue.
type: boolean
+ goodix,hid-report-addr:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ The register address for retrieving HID report data.
+ This address is related to the device firmware and may
+ change after a firmware update.
+
+ spi-max-frequency: true
+
required:
- compatible
- reg
@@ -64,6 +73,25 @@ required:
- reset-gpios
- vdd-supply
+allOf:
+ - $ref: /schemas/input/touchscreen/touchscreen.yaml#
+ - $ref: /schemas/spi/spi-peripheral-props.yaml#
+
+ - if:
+ properties:
+ compatible:
+ items:
+ - const: goodix,gt7986u
+ then:
+ required:
+ - goodix,hid-report-addr
+ else:
+ properties:
+ goodix,hid-report-addr: false
+ spi-max-frequency: false
+ reg:
+ enum: [0x5d, 0x14]
+
additionalProperties: false
examples:
@@ -87,3 +115,23 @@ examples:
vdd-supply = <&pp3300_ts>;
};
};
+
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+ #include <dt-bindings/gpio/gpio.h>
+
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ touchscreen@0 {
+ compatible = "goodix,gt7986u";
+ reg = <0>;
+ interrupt-parent = <&gpio>;
+ interrupts = <25 IRQ_TYPE_LEVEL_LOW>;
+ reset-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
+ spi-max-frequency = <10000000>;
+ goodix,hid-report-addr = <0x22c8c>;
+ vdd-supply = <&pp3300_ts>;
+ };
+ };
--
2.43.0
next reply other threads:[~2024-10-18 2:09 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-18 2:08 Charles Wang [this message]
2024-10-18 5:59 ` [PATCH] dt-bindings: input: Goodix SPI HID Touchscreen Krzysztof Kozlowski
2024-10-18 11:18 ` Charles Wang
2024-10-18 11:41 ` Krzysztof Kozlowski
2024-10-19 2:46 ` Charles Wang
2024-10-21 9:41 ` Krzysztof Kozlowski
2024-10-18 20:48 ` Doug Anderson
2024-10-19 2:55 ` Charles Wang
2024-10-21 9:43 ` Krzysztof Kozlowski
2024-10-21 15:37 ` Doug Anderson
2024-10-22 7:19 ` Charles Wang
2024-10-22 16:12 ` Doug Anderson
2024-10-23 6:44 ` Charles Wang
2024-10-23 19:35 ` Doug Anderson
2024-10-25 11:33 ` Charles Wang
-- strict thread matches above, loose matches on Subject: below --
2024-10-25 11:46 Charles Wang
2024-10-25 12:03 ` Krzysztof Kozlowski
2024-10-25 15:29 ` Doug Anderson
2024-10-25 15:58 ` Rob Herring
2024-10-25 16:19 ` Doug Anderson
2024-10-25 17:14 ` Dmitry Torokhov
2024-10-30 7:05 ` Charles Wang
2024-10-28 7:17 ` Krzysztof Kozlowski
2024-10-30 6:57 ` Charles Wang
2024-10-30 18:14 ` Doug Anderson
2024-10-31 7:11 ` Charles Wang
2024-10-30 4:34 ` Charles Wang
2024-10-31 2:37 ` Charles Wang
2024-10-31 17:58 ` Doug Anderson
2024-11-01 1:32 ` Charles Wang
2024-11-04 19:36 ` Doug Anderson
2024-11-06 3:20 ` Charles Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241018020815.3098263-2-charles.goodix@gmail.com \
--to=charles.goodix@gmail.com \
--cc=bentiss@kernel.org \
--cc=conor.dooley@microchip.com \
--cc=devicetree@vger.kernel.org \
--cc=dianders@chromium.org \
--cc=dmitry.torokhov@gmail.com \
--cc=hbarnor@chromium.org \
--cc=jikos@kernel.org \
--cc=krzk@kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).