e4b3d2e
From b490a8537df60d449199e162417da74ee9262515 Mon Sep 17 00:00:00 2001
e4b3d2e
From: Yuta Kobayashi <alu.ula@outlook.com>
e4b3d2e
Date: Fri, 12 Aug 2016 07:49:17 +0000
e4b3d2e
Subject: [PATCH] HID: microsoft: Add Surface 4 type cover pro 4 (JP)
e4b3d2e
e4b3d2e
Adding support for the Microsoft Surface 4 Type Cover Pro (JP).
e4b3d2e
e4b3d2e
Signed-off-by: Yuta Kobayashi <alu.ula@outlook.com>
e4b3d2e
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
e4b3d2e
---
e4b3d2e
 drivers/hid/hid-core.c          | 2 ++
e4b3d2e
 drivers/hid/hid-ids.h           | 1 +
e4b3d2e
 drivers/hid/hid-microsoft.c     | 2 ++
e4b3d2e
 drivers/hid/usbhid/hid-quirks.c | 1 +
e4b3d2e
 4 files changed, 6 insertions(+)
e4b3d2e
e4b3d2e
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
e4b3d2e
index ed10d4f..45400de 100644
e4b3d2e
--- a/drivers/hid/hid-core.c
e4b3d2e
+++ b/drivers/hid/hid-core.c
e4b3d2e
@@ -727,6 +727,7 @@ static void hid_scan_collection(struct hid_parser *parser, unsigned type)
e4b3d2e
 	    (hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3 ||
e4b3d2e
 	     hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2 ||
e4b3d2e
 	     hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP ||
e4b3d2e
+	     hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP ||
e4b3d2e
 	     hid->product == USB_DEVICE_ID_MS_TYPE_COVER_3 ||
e4b3d2e
 	     hid->product == USB_DEVICE_ID_MS_POWER_COVER) &&
e4b3d2e
 	    hid->group == HID_GROUP_MULTITOUCH)
e4b3d2e
@@ -1982,6 +1983,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3) },
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2) },
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP) },
e4b3d2e
+	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP) },
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3) },
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_7K) },
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_600) },
e4b3d2e
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
e4b3d2e
index da1c58e..3466f0d 100644
e4b3d2e
--- a/drivers/hid/hid-ids.h
e4b3d2e
+++ b/drivers/hid/hid-ids.h
e4b3d2e
@@ -713,6 +713,7 @@
e4b3d2e
 #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3    0x07dc
e4b3d2e
 #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2  0x07e2
e4b3d2e
 #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP 0x07dd
e4b3d2e
+#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP 0x07e9
e4b3d2e
 #define USB_DEVICE_ID_MS_TYPE_COVER_3    0x07de
e4b3d2e
 #define USB_DEVICE_ID_MS_POWER_COVER     0x07da
e4b3d2e
e4b3d2e
diff --git a/drivers/hid/hid-microsoft.c b/drivers/hid/hid-microsoft.c
e4b3d2e
index e924d55..56c586f 100644
e4b3d2e
--- a/drivers/hid/hid-microsoft.c
e4b3d2e
+++ b/drivers/hid/hid-microsoft.c
e4b3d2e
@@ -288,6 +288,8 @@ static const struct hid_device_id ms_devices[] = {
e4b3d2e
 		.driver_data = MS_HIDINPUT },
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP),
e4b3d2e
 		.driver_data = MS_HIDINPUT },
e4b3d2e
+	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP),
e4b3d2e
+		.driver_data = MS_HIDINPUT },
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3),
e4b3d2e
 		.driver_data = MS_HIDINPUT },
e4b3d2e
 	{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER),
e4b3d2e
diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
e4b3d2e
index b4b8c6a..1fccffd 100644
e4b3d2e
--- a/drivers/hid/usbhid/hid-quirks.c
e4b3d2e
+++ b/drivers/hid/usbhid/hid-quirks.c
e4b3d2e
@@ -98,6 +98,7 @@ static const struct hid_blacklist {
e4b3d2e
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3, HID_QUIRK_NO_INIT_REPORTS },
e4b3d2e
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2, HID_QUIRK_NO_INIT_REPORTS },
e4b3d2e
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP, HID_QUIRK_NO_INIT_REPORTS },
e4b3d2e
+	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP, HID_QUIRK_NO_INIT_REPORTS },
e4b3d2e
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3, HID_QUIRK_NO_INIT_REPORTS },
e4b3d2e
 	{ USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER, HID_QUIRK_NO_INIT_REPORTS },
e4b3d2e
 	{ USB_VENDOR_ID_MSI, USB_DEVICE_ID_MSI_GT683R_LED_PANEL, HID_QUIRK_NO_INIT_REPORTS },
e4b3d2e
-- 
e4b3d2e
2.7.4
e4b3d2e