Input: add Apple SPI keyboard and trackpad driver
authorRonald Tschalär <ronald@innovation.ch>
Mon, 15 Jul 2019 17:30:11 +0000 (10:30 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 19 Jul 2019 08:58:34 +0000 (11:58 +0300)
commit038b1a05eae6666b731920e46f47d8e2332e07ff
tree53ac7b2f4cd7e0b0a36e1e94feb82c2b0b08ccb7
parent7e4935ccc3236751e5fe4bd6846f86e46bb2e427
Input: add Apple SPI keyboard and trackpad driver

The keyboard and trackpad on recent MacBook's (since 8,1) and
MacBookPro's (13,* and 14,*) are attached to an SPI controller instead
of USB, as previously. The higher level protocol is not publicly
documented and hence has been reverse engineered. As a consequence there
are still a number of unknown fields and commands. However, the known
parts have been working well and received extensive testing and use.

In order for this driver to work, the proper SPI drivers need to be
loaded too; for MB8,1 these are spi_pxa2xx_platform and spi_pxa2xx_pci;
for all others they are spi_pxa2xx_platform and intel_lpss_pci.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=99891
Link: https://bugzilla.kernel.org/show_bug.cgi?id=108331
Signed-off-by: Ronald Tschalär <ronald@innovation.ch>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/Kconfig
drivers/input/keyboard/Makefile
drivers/input/keyboard/applespi.c [new file with mode: 0644]
drivers/input/keyboard/applespi.h [new file with mode: 0644]
drivers/input/keyboard/applespi_trace.h [new file with mode: 0644]