mbox series

[v4,0/2] Input: cypress-sf - Add support for Cypress Streetfighter touchkeys

Message ID 20210907174341.422013-1-y.oudjana@protonmail.com (mailing list archive)
Headers show
Series Input: cypress-sf - Add support for Cypress Streetfighter touchkeys | expand

Message

Yassine Oudjana Sept. 7, 2021, 5:43 p.m. UTC
This patchset adds support for Cypress StreetFighter touchkeys.

Due to lack of documentation, this driver is entirely based on information
gathered from a driver written for an old Android kernel fork[1][2].

[1] https://github.com/LineageOS/android_kernel_xiaomi_msm8996/blob/lineage-18.1/drivers/input/touchscreen/cyttsp_button.c
[2] https://github.com/LineageOS/android_kernel_xiaomi_msm8996/blob/lineage-18.1/arch/arm/boot/dts/qcom/a4-msm8996-mtp.dtsi#L291-L314

Changes since v3:
 - Use device_property_read_u32_array to read keycodes.
 - Read status register into integer first to check for errors.
 - Use bitmap_xor and for_each_set_bit to check for key state changes.
 - More code style fixes.
 - Add MAINTAINERS entry.
 - Dual-license DT binding.
Changes since v2:
 - Code style fixes.
 - Added copyright statement.
Changes since v1:
 - Changed version variables in probe to int to allow storing error codes.
 - Fixed some issues in dt binding.

Yassine Oudjana (2):
  Input: cypress-sf - Add Cypress StreetFighter touchkey driver
  dt-bindings: input: Add binding for cypress-sf

 .../devicetree/bindings/input/cypress-sf.yaml |  61 +++++
 MAINTAINERS                                   |   7 +
 drivers/input/keyboard/Kconfig                |  10 +
 drivers/input/keyboard/Makefile               |   1 +
 drivers/input/keyboard/cypress-sf.c           | 219 ++++++++++++++++++
 5 files changed, 298 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/cypress-sf.yaml
 create mode 100644 drivers/input/keyboard/cypress-sf.c