summarylogtreecommitdiffstats
path: root/0005-hid.patch
blob: 89187711288ecbce7ec32b5cf4c123d97599ac5f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
diff --git a/drivers//hid/hid-ids.h b/drivers//hid/hid-ids.h
index 4f9a3938..07a0be0d 100644
--- a/drivers//hid/hid-ids.h
+++ b/drivers//hid/hid-ids.h
@@ -741,11 +741,19 @@
 #define USB_DEVICE_ID_MS_DIGITAL_MEDIA_3KV1 0x0732
 #define USB_DEVICE_ID_MS_DIGITAL_MEDIA_600  0x0750
 #define USB_DEVICE_ID_MS_COMFORT_MOUSE_4500	0x076c
-#define USB_DEVICE_ID_MS_COMFORT_KEYBOARD 0x00e3
-#define USB_DEVICE_ID_MS_SURFACE_PRO_2   0x0799
-#define USB_DEVICE_ID_MS_TOUCH_COVER_2   0x07a7
-#define USB_DEVICE_ID_MS_TYPE_COVER_2    0x07a9
-#define USB_DEVICE_ID_MS_POWER_COVER     0x07da
+#define USB_DEVICE_ID_MS_COMFORT_KEYBOARD	0x00e3
+#define USB_DEVICE_ID_MS_SURFACE_PRO_2		0x0799
+#define USB_DEVICE_ID_MS_TOUCH_COVER_2		0x07a7
+#define USB_DEVICE_ID_MS_TYPE_COVER_2		0x07a9
+#define USB_DEVICE_ID_MS_TYPE_COVER_3		0x07de
+#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3	0x07dc
+#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_1	0x07de
+#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2	0x07e2
+#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP	0x07dd
+#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4	0x07e8
+#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_1	0x07e4
+#define USB_DEVICE_ID_MS_SURFACE_BOOK		0x07cd
+#define USB_DEVICE_ID_MS_POWER_COVER		0x07da
 
 #define USB_VENDOR_ID_MOJO		0x8282
 #define USB_DEVICE_ID_RETRO_ADAPTER	0x3201
diff --git a/drivers//hid/hid-multitouch.c b/drivers//hid/hid-multitouch.c
index 937a7084..6af8baf3 100644
--- a/drivers//hid/hid-multitouch.c
+++ b/drivers//hid/hid-multitouch.c
@@ -1454,6 +1454,47 @@ static const struct hid_device_id mt_devices[] = {
 		HID_USB_DEVICE(USB_VENDOR_ID_LG,
 			USB_DEVICE_ID_LG_MELFAS_MT) },
 
+	/* Microsoft Touch Cover */
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+		USB_DEVICE_ID_MS_TOUCH_COVER_2) },
+
+	/* Microsoft Type Cover */
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+			USB_DEVICE_ID_MS_TYPE_COVER_2) },
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+			USB_DEVICE_ID_MS_TYPE_COVER_3) },
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+			USB_DEVICE_ID_MS_TYPE_COVER_PRO_3) },
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+			USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_1) },
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+			USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2) },
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+			USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP) },
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+			USB_DEVICE_ID_MS_TYPE_COVER_PRO_4) },
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+			USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_1) },
+
+	/* Microsoft Surface Book */
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+		USB_DEVICE_ID_MS_SURFACE_BOOK) },
+
+	/* Microsoft Power Cover */
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+		USB_DEVICE_ID_MS_POWER_COVER) },
+
 	/* MosArt panels */
 	{ .driver_data = MT_CLS_CONFIDENCE_MINUS_ONE,
 		MT_USB_DEVICE(USB_VENDOR_ID_ASUS,
diff --git a/drivers//hid/usbhid/hid-quirks.c b/drivers//hid/usbhid/hid-quirks.c
index a88e7c7b..1e1e3d97 100644
--- a/drivers//hid/usbhid/hid-quirks.c
+++ b/drivers//hid/usbhid/hid-quirks.c
@@ -106,8 +106,16 @@ static const struct hid_blacklist {
 	{ USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOUSE_C06A, HID_QUIRK_ALWAYS_POLL },
 	{ USB_VENDOR_ID_MGE, USB_DEVICE_ID_MGE_UPS, HID_QUIRK_NOGET },
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_SURFACE_PRO_2, HID_QUIRK_NO_INIT_REPORTS },
-	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_2, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TOUCH_COVER_2, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_2, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_1, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_1, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_SURFACE_BOOK, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_MSI, USB_DEVICE_ID_MSI_GT683R_LED_PANEL, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_NEXIO, USB_DEVICE_ID_NEXIO_MULTITOUCH_PTI0750, HID_QUIRK_NO_INIT_REPORTS },
diff --git a/drivers//hid/hid-ids.h b/drivers//hid/hid-ids.h
index 07a0be0d..a58844b7 100644
--- a/drivers//hid/hid-ids.h
+++ b/drivers//hid/hid-ids.h
@@ -753,6 +753,7 @@
 #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4	0x07e8
 #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_1	0x07e4
 #define USB_DEVICE_ID_MS_SURFACE_BOOK		0x07cd
+#define USB_DEVICE_ID_MS_SURFACE_LAPTOP		0x07f8
 #define USB_DEVICE_ID_MS_POWER_COVER		0x07da
 
 #define USB_VENDOR_ID_MOJO		0x8282
diff --git a/drivers//hid/hid-multitouch.c b/drivers//hid/hid-multitouch.c
index 6af8baf3..09f1cd60 100644
--- a/drivers//hid/hid-multitouch.c
+++ b/drivers//hid/hid-multitouch.c
@@ -1490,6 +1490,11 @@ static const struct hid_device_id mt_devices[] = {
 		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
 		USB_DEVICE_ID_MS_SURFACE_BOOK) },
 
+	/* Microsoft Surface Laptop */
+	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
+		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
+		USB_DEVICE_ID_MS_SURFACE_LAPTOP) },
+
 	/* Microsoft Power Cover */
 	{ .driver_data = MT_CLS_EXPORT_ALL_INPUTS,
 		MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT,
diff --git a/drivers//hid/usbhid/hid-quirks.c b/drivers//hid/usbhid/hid-quirks.c
index 1e1e3d97..925ec6a4 100644
--- a/drivers//hid/usbhid/hid-quirks.c
+++ b/drivers//hid/usbhid/hid-quirks.c
@@ -116,6 +116,7 @@ static const struct hid_blacklist {
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_1, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_SURFACE_BOOK, HID_QUIRK_NO_INIT_REPORTS },
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_SURFACE_LAPTOP, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_MSI, USB_DEVICE_ID_MSI_GT683R_LED_PANEL, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_NEXIO, USB_DEVICE_ID_NEXIO_MULTITOUCH_PTI0750, HID_QUIRK_NO_INIT_REPORTS },
diff --git a/drivers//hid/hid-ids.h b/drivers//hid/hid-ids.h
index a58844b7..2cecb040 100644
--- a/drivers//hid/hid-ids.h
+++ b/drivers//hid/hid-ids.h
@@ -753,7 +753,7 @@
 #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4	0x07e8
 #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_1	0x07e4
 #define USB_DEVICE_ID_MS_SURFACE_BOOK		0x07cd
-#define USB_DEVICE_ID_MS_SURFACE_LAPTOP		0x07f8
+#define USB_DEVICE_ID_MS_SURFACE_LAPTOP		0xf001
 #define USB_DEVICE_ID_MS_POWER_COVER		0x07da
 
 #define USB_VENDOR_ID_MOJO		0x8282