Skip to content

Commit 4cd1715

Browse files
marcanjannau
authored andcommitted
HID: Add Apple DockChannel HID transport driver
Apple M2 devices have an MTP coprocessor embedded in the SoC that handles HID for the integrated touchpad/keyboard, and communicates over the DockChannel interface. This driver implements this new interface. Signed-off-by: Hector Martin <marcan@marcan.st>
1 parent c764407 commit 4cd1715

5 files changed

Lines changed: 1238 additions & 0 deletions

File tree

drivers/hid/Kconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1448,4 +1448,6 @@ source "drivers/hid/usbhid/Kconfig"
14481448

14491449
source "drivers/hid/spi-hid/Kconfig"
14501450

1451+
source "drivers/hid/dockchannel-hid/Kconfig"
1452+
14511453
endif # HID_SUPPORT

drivers/hid/Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,8 +173,12 @@ obj-$(CONFIG_INTEL_ISH_HID) += intel-ish-hid/
173173

174174
obj-$(CONFIG_AMD_SFH_HID) += amd-sfh-hid/
175175

176+
obj-$(CONFIG_HID_DOCKCHANNEL) += dockchannel-hid/
177+
176178
obj-$(CONFIG_SPI_HID_APPLE_CORE) += spi-hid/
177179

180+
obj-$(CONFIG_HID_DOCKCHANNEL) += dockchannel-hid/
181+
178182
obj-$(CONFIG_SURFACE_HID_CORE) += surface-hid/
179183

180184
obj-$(CONFIG_INTEL_THC_HID) += intel-thc-hid/
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR MIT
2+
menu "DockChannel HID support"
3+
depends on APPLE_DOCKCHANNEL
4+
5+
config HID_DOCKCHANNEL
6+
tristate "HID over DockChannel transport layer for Apple Silicon SoCs"
7+
depends on APPLE_DOCKCHANNEL && INPUT && OF && HID
8+
help
9+
Say Y here if you use an M2 or later Apple Silicon based laptop.
10+
The keyboard and touchpad are HID based devices connected via the
11+
proprietary DockChannel interface.
12+
13+
endmenu
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR MIT
2+
#
3+
# Makefile for DockChannel HID transport drivers
4+
#
5+
6+
obj-$(CONFIG_HID_DOCKCHANNEL) += dockchannel-hid.o

0 commit comments

Comments
 (0)