quirks: recognize SPI bus
authorGreg V <greg@unrelenting.technology>
Mon, 15 Mar 2021 22:02:54 +0000 (01:02 +0300)
committerPeter Hutterer <peter.hutterer@who-t.net>
Wed, 17 Mar 2021 02:34:30 +0000 (02:34 +0000)
Apple MacBooks (Broadwell/Skylake/Kaby Lake and Apple Silicon)
use SPI to communicate with the keyboard and trackpad.

Signed-off-by: Greg V <greg@unrelenting.technology>
src/quirks.c

index 9d90389..26131a8 100644 (file)
@@ -111,6 +111,7 @@ enum bustype {
        BT_PS2,
        BT_RMI,
        BT_I2C,
+       BT_SPI,
 };
 
 enum udev_type {
@@ -499,6 +500,8 @@ parse_match(struct quirks_context *ctx,
                        s->match.bus = BT_RMI;
                else if (streq(value, "i2c"))
                        s->match.bus = BT_I2C;
+               else if (streq(value, "spi"))
+                       s->match.bus = BT_SPI;
                else
                        goto out;
        } else if (streq(key, "MatchVendor")) {
@@ -1241,6 +1244,10 @@ match_fill_bus_vid_pid(struct match *m,
                m->bus = BT_I2C;
                m->bits |= M_BUS;
                break;
+       case BUS_SPI:
+               m->bus = BT_SPI;
+               m->bits |= M_BUS;
+               break;
        default:
                break;
        }