WIP: HID: transport: spi: add Apple SPI transport
authorJanne Grunau <j@jannau.net>
Fri, 10 Dec 2021 18:38:43 +0000 (19:38 +0100)
committerHector Martin <marcan@marcan.st>
Sat, 19 Feb 2022 08:37:51 +0000 (17:37 +0900)
commit6503ad96bc85209be90119188ff30d21612bbbf8
treed414ebaff1ce1a9365c3ce104dc1fd69d0f460ed
parent1831e5af2cd9d0fb62fc573a4ac553433457e4d2
WIP: HID: transport: spi: add Apple SPI transport

Keyboard and trackpad of Apple Sillicon SoCs (M1, M1 Pro/Max) laptops
are are HID devices connected via SPI.

This is the same protocol as implemented by applespi.c. It was not
noticed that protocol is a transport for HID. Adding support for ACPI
based Intel MacBooks will be done in a separate commit.

How HID is mapped in this protocol is not yet fully understood.

Microsoft has a specification for HID over SPI [1] incompatible with the
transport protocol used by Apple.

[1] https://docs.microsoft.com/en-us/windows-hardware/drivers/hid/hid-over-spi

Signed-off-by: Janne Grunau <j@jannau.net>
drivers/hid/Kconfig
drivers/hid/Makefile
drivers/hid/spi-hid/Kconfig [new file with mode: 0644]
drivers/hid/spi-hid/Makefile [new file with mode: 0644]
drivers/hid/spi-hid/spi-hid-apple-core.c [new file with mode: 0644]
drivers/hid/spi-hid/spi-hid-apple-of.c [new file with mode: 0644]
drivers/hid/spi-hid/spi-hid-apple.h [new file with mode: 0644]