[PATCH v4 0/4] HID: i2c-hid: Reorganize to allow supporting goodix, gt7375p

Douglas Anderson dianders at chromium.org
Tue Nov 3 20:29:25 EST 2020


The goal of this series is to support the Goodix GT7375P touchscreen.
This touchscreen is special because it has power sequencing
requirements that necessitate driving a reset GPIO.

To do this, we totally rejigger the way i2c-hid is organized so that
it's easier to jam the Goodix support in there.

This series was:
- Tested on a device that uses normal i2c-hid
- Tested on a device that pretended to have a Goodix i2c-hid device on
  it.  I don't have a device with GT7375P setup yet and the person who
  has been testing remotely for me hasn't tested this exact series.  I
  think it should still work, though.
- NOT tested on any ACPI devices (just compile tested).

There are probably still small nits, but hopefully we're getting
closer to something people like.

Changes in v4:
- Fully rejigger so ACPI and OF are full subclasses.
- ("arm64: defconfig: Update config names for i2c-hid rejigger") new for v4.
- Totally redid based on the new subclass system.

Changes in v3:
- Rework to use subclassing.
- Removed Benjamin as a maintainer.
- Fixed compatible in example.
- Updated description.
- Rework to use subclassing.

Changes in v2:
- Use a separate compatible string for this new touchscreen.
- Get timings based on the compatible string.
- ("dt-bindings: HID: i2c-hid: Introduce bindings for the Goodix GT7375P") new in v2.

Douglas Anderson (4):
  HID: i2c-hid: Reorganize so ACPI and OF are subclasses
  arm64: defconfig: Update config names for i2c-hid rejigger
  dt-bindings: HID: i2c-hid: Introduce bindings for the Goodix GT7375P
  HID: i2c-hid: Introduce goodix-i2c-hid as a subclass of i2c-hid

 .../bindings/input/goodix,gt7375p.yaml        |  63 +++++
 arch/arm64/configs/defconfig                  |   3 +-
 drivers/hid/Makefile                          |   2 +-
 drivers/hid/i2c-hid/Kconfig                   |  47 +++-
 drivers/hid/i2c-hid/Makefile                  |   6 +-
 drivers/hid/i2c-hid/i2c-hid-acpi.c            | 167 ++++++++++++
 drivers/hid/i2c-hid/i2c-hid-core.c            | 253 +++---------------
 drivers/hid/i2c-hid/i2c-hid-of-goodix.c       | 120 +++++++++
 drivers/hid/i2c-hid/i2c-hid-of.c              | 149 +++++++++++
 drivers/hid/i2c-hid/i2c-hid.h                 |  24 ++
 include/linux/platform_data/i2c-hid.h         |  41 ---
 11 files changed, 607 insertions(+), 268 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/input/goodix,gt7375p.yaml
 create mode 100644 drivers/hid/i2c-hid/i2c-hid-acpi.c
 create mode 100644 drivers/hid/i2c-hid/i2c-hid-of-goodix.c
 create mode 100644 drivers/hid/i2c-hid/i2c-hid-of.c
 delete mode 100644 include/linux/platform_data/i2c-hid.h

-- 
2.29.1.341.ge80a0c044ae-goog




More information about the linux-arm-kernel mailing list