Gentle ping... On Tue, Jun 18, 2024 at 04:44:52PM +0800, Charles Wang wrote: > This patch introduces a new driver to support the Goodix GT7986U > touch controller. This device is not compatible with Microsoft's > HID-over-SPI protocol and therefore needs to implement its own > flavor. The data reported is packaged according to the HID > protocol but uses SPI for communication to improve speed. This > enables the device to transmit not only coordinate data but also > corresponding raw data that can be accessed by user-space programs > through the hidraw interface. The raw data can be utilized for > functions like palm rejection, thereby improving the touch experience. > > Key features: > - Device connection confirmation and initialization > - IRQ-based event reporting to the input subsystem > - Support for HIDRAW operations (GET_REPORT and SET_REPORT) > > Signed-off-by: Charles Wang <charles.goodix@xxxxxxxxx> > --- > Changes in v5: > - Add additional descriptive information to the dt-binding file. > - Fixed build warnings reported by kernel test robot. > > Changes in v4: > - Allocate memory based on the report information. > - Added a new function goodix_get_event_report() to retrieve report data, > reducing memory copy operations and avoiding the use of reg_rw_lock. > - Add low power control operations. > - Implemented power management operations. > - Introduced GOODIX_HID_STARTED to record the current device operating state. > - Add OF match table. > > Changes in v3: > - Renamed the driver file to hid-goodix-spi.c. > - Mentioned in the commit message that this implementation is not compatible with > Microsoft's HID-over-SPI protocol. > - Modified the driver to fetch the GOODIX_HID_REPORT_ADDR from device properties. > - Add a lock to prevent concurrent hid feature request operations. > - Optimized the SPI read/write functions by reducing the number of malloc calls. > > Changes in v2: > - Fixed build warnings reported by kernel test robot > > --- > Charles Wang (2): > HID: hid-goodix: Add Goodix HID-over-SPI driver > dt-bindings: input: Goodix SPI HID Touchscreen > > .../bindings/input/goodix,gt7986u.yaml | 72 ++ > drivers/hid/Kconfig | 6 + > drivers/hid/Makefile | 1 + > drivers/hid/hid-goodix-spi.c | 811 ++++++++++++++++++ > 4 files changed, 890 insertions(+) > create mode 100644 Documentation/devicetree/bindings/input/goodix,gt7986u.yaml > create mode 100644 drivers/hid/hid-goodix-spi.c > > -- > 2.43.0 > Thanks Charles