WIP: HID: transport: spi: add Apple SPI transport
authorJanne Grunau <j@jannau.net>
Fri, 10 Dec 2021 18:38:43 +0000 (19:38 +0100)
committerJens Axboe <axboe@kernel.dk>
Tue, 1 Mar 2022 17:49:12 +0000 (10:49 -0700)
commitd4cde63b372f182f431d928e9cce861d53b99963
tree5a4bfcfb4d5cc1b05f366f3c0ba80d9be41e0236
parentd5fe1d2d063e60ced57f685191aa583cd4613567
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]