Messages in this thread | | | Date | Mon, 23 Oct 2023 17:18:52 +0200 | From | Neil Armstrong <> | Subject | Re: [PATCH v10 0/4] Input: add initial support for Goodix Berlin touchscreen IC |
| |
Hi,
Please ignore this cover letter, gmail's SMTP returned an error while sending it but still sent it....
The properly sent patchset can be found at: https://lore.kernel.org/all/20231023-topic-goodix-berlin-upstream-initial-v10-0-88eec2e51c0b@linaro.org/
Neil
On 23/10/2023 17:03, Neil Armstrong wrote: > These touchscreen ICs support SPI, I2C and I3C interface, up to > 10 finger touch, stylus and gestures events. > > This initial driver is derived from the Goodix goodix_ts_berlin > available at [1] and [2] and only supports the GT9916 IC > present on the Qualcomm SM8550 MTP & QRD touch panel. > > The current implementation only supports BerlinD, aka GT9916. > > Support for advanced features like: > - Firmware & config update > - Stylus events > - Gestures events > - Previous revisions support (BerlinA or BerlinB) > is not included in current version. > > The current support will work with currently flashed firmware > and config, and bail out if firmware or config aren't flashed yet. > > [1] https://github.com/goodix/goodix_ts_berlin > [2] https://git.codelinaro.org/clo/la/platform/vendor/opensource/touch-drivers > > Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> > --- > Changes in v10: > - Fix according to Dmitry's review: > - move goodix_berlin_get_ic_info() afe_data to heap > - merge the goodix_berlin_parse_finger() loops and skip invalid fingers instead of returning > - remove unwanted goodix_berlin_touch_handler() "static" for buffer > - only call goodix_berlin_request_handle_reset() if gpio was provided > - use "error = func(); if(error) return error;" instead of "return func()" when function handles multiple error cases > - Link to v9: https://lore.kernel.org/r/20231021-topic-goodix-berlin-upstream-initial-v9-0-13fb4e887156@linaro.org > > Changes in v9: > - Rebased on next-20231020 > - Link to v8: https://lore.kernel.org/r/20231003-topic-goodix-berlin-upstream-initial-v8-0-171606102ed6@linaro.org > > Changes in v8: > - Add missing bitfield.h include in core > - Link to v7: https://lore.kernel.org/r/20231002-topic-goodix-berlin-upstream-initial-v7-0-792fb91f5e88@linaro.org > > Changes in v7: > - rebased on v6.6-rc3 > - Link to v6: https://lore.kernel.org/r/20230912-topic-goodix-berlin-upstream-initial-v6-0-b4ecfa49fb9d@linaro.org > > Changes in v6: > - rebased on v6.6-rc1 > - changed commit message prefix to match the other Input commits > - Link to v5: https://lore.kernel.org/r/20230801-topic-goodix-berlin-upstream-initial-v5-0-079252935593@linaro.org > > Changes in v5: > - rebased on next-20230801 > - Link to v4: https://lore.kernel.org/r/20230606-topic-goodix-berlin-upstream-initial-v4-0-0947c489be17@linaro.org > > Changes in v4: > - Core updates: > - drop kconfig depends, deps will be handled by _SPI and _I2C > - change power_on() error labels > - print errors on all dev_err() prints > - remove useless default variable initialization > - switch irq touch checksum error to dev_err() > - add Jeff's review tag > - I2C changes > - change REGMAP_I2C Kconfig from depends to select > - add Jeff's review tag > - SPI changes > - add select REGMAP to Kconfig > - added GOODIX_BERLIN_ prefix to defines > - switched from ret to error > - add Jeff's review tag > - Link to v3: https://lore.kernel.org/r/20230606-topic-goodix-berlin-upstream-initial-v3-0-f0577cead709@linaro.org > > Changes in v3: > - Another guge cleanups after Jeff's review: > - appended goodix_berlin_ before all defines > - removed some unused defines > - removed retries on most of read functions, can be added back later > - added __le to ic_info structures > - reworked and simplified irq handling, dropped enum and ts_event structs > - added struct for touch data > - simplified and cleaned goodix_berlin_check_checksum & goodix_berlin_is_dummy_data > - moved touch_data_addr to the end of the main code_data > - reworked probe to get_irq last and right before setip input device > - cleaned probe by removing the "cd->dev" > - added short paragraph to justify new driver for berlin devices > - defined all offsets & masks > - Added bindings review tag > - Link to v2: https://lore.kernel.org/r/20230606-topic-goodix-berlin-upstream-initial-v2-0-26bc8fe1e90e@linaro.org > > Changes in v2: > - Huge cleanups after Jeff's review: > - switch to error instead of ret > - drop dummy vendor/product ids > - drop unused defined/enums > - drop unused ic_info and only keep needes values > - cleanup namings and use goodix_berlin_ everywhere > - fix regulator setup > - fix default variables value when assigned afterwars > - removed indirections > - dropped debugfs > - cleaned input_dev setup > - dropped _remove() > - sync'ed i2c and spi drivers > - fixed yaml bindings > - Link to v1: https://lore.kernel.org/r/20230606-topic-goodix-berlin-upstream-initial-v1-0-4a0741b8aefd@linaro.org > > --- > Neil Armstrong (4): > dt-bindings: input: document Goodix Berlin Touchscreen IC > Input: add core support for Goodix Berlin Touchscreen IC > Input: goodix-berlin - add I2C support for Goodix Berlin Touchscreen IC > Input: goodix-berlin - add SPI support for Goodix Berlin Touchscreen IC > > .../bindings/input/touchscreen/goodix,gt9916.yaml | 95 ++++ > drivers/input/touchscreen/Kconfig | 31 ++ > drivers/input/touchscreen/Makefile | 3 + > drivers/input/touchscreen/goodix_berlin.h | 159 ++++++ > drivers/input/touchscreen/goodix_berlin_core.c | 594 +++++++++++++++++++++ > drivers/input/touchscreen/goodix_berlin_i2c.c | 74 +++ > drivers/input/touchscreen/goodix_berlin_spi.c | 177 ++++++ > 7 files changed, 1133 insertions(+) > --- > base-commit: 2030579113a1b1b5bfd7ff24c0852847836d8fd1 > change-id: 20230606-topic-goodix-berlin-upstream-initial-ba97e8ec8f4c > > Best regards,
| |