Re: [PATCH v9 0/4] HID: i2c-hid: Reorganize to allow supporting goodix,gt7375p
From: Benjamin Tissoires
Date: Mon Jan 18 2021 - 11:35:40 EST
On Fri, Jan 15, 2021 at 6:07 PM Douglas Anderson <dianders@xxxxxxxxxxxx> wrote:
> 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 has a Goodix i2c-hid device.
> - Tested on an ACPI device, but an earlier version of the series.
> I believe the plan is for Benjamin to land the whole series. Will
> said this about the arm64 defconfig change (and provided his Ack):
> > ...there are a few things I really care about
> > in defconfig (e.g. things like page size!), generally speaking we don't
> > need to Ack everything that changes in there.
> > That said, might be worth checking whether arm-soc have any defconfig
> > changes queued in -next so you don't end up with conflicts.
> Changes in v9:
> - 120 ms delay => 180 ms delay
> - Local variable in ACPI code "ihid_of" => "ihid_acpi".
> - Squash Benjamin's change for ACPI power on.
> Changes in v8:
> - Mark suspend/resume as static as per patches robot.
> Changes in v7:
> - Rebase atop commit afdd34c5fa40 ("HID: i2c-hid: show the error ...")
> Changes in v6:
> - ACPI probe function should have been "static"
> - Don't export suspend/resume, just export dev_pm_ops from core.
> - Fixed crash in ACPI module (missing init of "client")
> - No need for regulator include in the core.
> - Removed i2c_device_id table from ACPI module.
> - Suspend/resume are no longer exported from the core.
> Changes in v5:
> - Add shutdown_tail op and use it in ACPI.
> - Added mention of i2c-hid in the yaml itself as per Rob.
> - Adjusted subject as per Rob.
> - i2chid_subclass_data => i2chid_ops.
> - power_up_device => power_up (same with power_down).
> - subclass => ops.
> Changes in v4:
> - ("arm64: defconfig: Update config names for i2c-hid rejigger") new for v4.
> - Fully rejigger so ACPI and OF are full subclasses.
> - Totally redid based on the new subclass system.
> Changes in v3:
> - Fixed compatible in example.
> - Removed Benjamin as a maintainer.
> - Rework to use subclassing.
> - Updated description.
> Changes in v2:
> - ("dt-bindings: HID: i2c-hid: Introduce bindings for the Goodix GT7375P") new in v2.
> - Get timings based on the compatible string.
> - Use a separate compatible string for this new touchscreen.
> Douglas Anderson (4):
> HID: i2c-hid: Reorganize so ACPI and OF are separate modules
> arm64: defconfig: Update config names for i2c-hid rejigger
> dt-bindings: input: HID: i2c-hid: Introduce bindings for the Goodix
> HID: i2c-hid: Introduce goodix-i2c-hid using i2c-hid core
> .../bindings/input/goodix,gt7375p.yaml | 65 +++++
> 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 | 143 ++++++++++
> drivers/hid/i2c-hid/i2c-hid-core.c | 252 +++---------------
> drivers/hid/i2c-hid/i2c-hid-of-goodix.c | 116 ++++++++
> drivers/hid/i2c-hid/i2c-hid-of.c | 143 ++++++++++
> drivers/hid/i2c-hid/i2c-hid.h | 22 ++
> include/linux/platform_data/i2c-hid.h | 41 ---
> 11 files changed, 578 insertions(+), 262 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
Many thanks for the wait. I have now scheduled this series in for-5.12/i2c-hid.