This series adds support for the official keyboard case for the Pine64
PinePhone and PinePhone Pro. This accessory contains a keyboard MCU and
an IP5209 power bank IC. The keyboard MCU firmware[0] is free software.
It exposes the keyboard scan matrix over I2C, and also provides commands
for SMBus access to the IP5209. In order to keep the IP5209 driver[1]
generic, this is modeled as an I2C bus child of the keyboard.
[0]: https://megous.com/git/pinephone-keyboard/about/
[1]: https://lore.kernel.org/lkml/20220129222424.45707-1-samuel@sholland.org/T/
Samuel Holland (5):
dt-bindings: input: Add the PinePhone keyboard binding
Input: pinephone-keyboard - Add PinePhone keyboard driver
Input: pinephone-keyboard - Build in the default keymap
Input: pinephone-keyboard - Support the proxied I2C bus
[DO NOT MERGE] arm64: dts: allwinner: pinephone: Add keyboard
.../input/pine64,pinephone-keyboard.yaml | 90 ++++
MAINTAINERS | 6 +
.../dts/allwinner/sun50i-a64-pinephone.dtsi | 18 +
drivers/input/keyboard/Kconfig | 10 +
drivers/input/keyboard/Makefile | 1 +
drivers/input/keyboard/pinephone-keyboard.c | 449 ++++++++++++++++++
6 files changed, 574 insertions(+)
create mode 100644 Documentation/devicetree/bindings/input/pine64,pinephone-keyboard.yaml
create mode 100644 drivers/input/keyboard/pinephone-keyboard.c
--
2.33.1