From 57c2cc05e27eca8532e75a7e3e15d76f6df1fad7 Mon Sep 17 00:00:00 2001 From: rbandi Date: Mon, 22 Oct 2018 14:51:15 -0700 Subject: [PATCH 1/3] HID: Adding new vendor id for QVR support Adding new vendor id to support additional hardware. Change-Id: I9b37b4dfe0c205428d235ffe1e5f8d8ebe918998 Signed-off-by: rbandi --- drivers/hid/hid-ids.h | 2 ++ drivers/hid/hid-quirks.c | 5 ++++- drivers/hid/hid-qvr.c | 5 ++++- drivers/hid/hid-qvr.h | 2 -- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 41e6b5d9e62b..4a594977ef83 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -1276,6 +1276,8 @@ #define USB_DEVICE_ID_SIGNOTEC_VIEWSONIC_PD1011 0x0018 #define USB_VENDOR_ID_QVR5 0x045e +#define USB_VENDOR_ID_QVR32A 0x04b4 #define USB_DEVICE_ID_QVR5 0x0659 +#define USB_DEVICE_ID_QVR32A 0x00c3 #endif diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c index a8ed4fc040d8..a7c8efbd66ff 100644 --- a/drivers/hid/hid-quirks.c +++ b/drivers/hid/hid-quirks.c @@ -175,7 +175,9 @@ static const struct hid_device_id hid_quirks[] = { { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP_LTD2, USB_DEVICE_ID_SMARTJOY_DUAL_PLUS), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_QUAD_USB_JOYPAD), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_QVR5, USB_DEVICE_ID_QVR5), - HID_QUIRK_HIDINPUT_FORCE | HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, + HID_QUIRK_HIDINPUT_FORCE | HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, + { HID_USB_DEVICE(USB_VENDOR_ID_QVR32A, USB_DEVICE_ID_QVR32A), + HID_QUIRK_HIDINPUT_FORCE | HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, { 0 } }; @@ -566,6 +568,7 @@ static const struct hid_device_id hid_have_special_driver[] = { #endif #if IS_ENABLED(CONFIG_HID_QVR) { HID_USB_DEVICE(USB_VENDOR_ID_QVR5, USB_DEVICE_ID_QVR5) }, + { HID_USB_DEVICE(USB_VENDOR_ID_QVR32A, USB_DEVICE_ID_QVR32A) }, #endif #if IS_ENABLED(CONFIG_HID_RETRODE) { HID_USB_DEVICE(USB_VENDOR_ID_FUTURE_TECHNOLOGY, USB_DEVICE_ID_RETRODE2) }, diff --git a/drivers/hid/hid-qvr.c b/drivers/hid/hid-qvr.c index 247f52bce591..61ab454df155 100644 --- a/drivers/hid/hid-qvr.c +++ b/drivers/hid/hid-qvr.c @@ -415,7 +415,9 @@ static ssize_t fd_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) { - return snprintf(buf, 16, "%d\n", fd); + struct qvr_external_sensor *sensor = &qvr_external_sensor; + + return scnprintf(buf, 16, "%d\n", sensor->fd); } static ssize_t fd_store(struct kobject *kobj, @@ -619,6 +621,7 @@ static void qvr_external_sensor_device_remove(struct hid_device *hdev) static struct hid_device_id qvr_external_sensor_table[] = { { HID_USB_DEVICE(USB_VENDOR_ID_QVR5, USB_DEVICE_ID_QVR5) }, + { HID_USB_DEVICE(USB_VENDOR_ID_QVR32A, USB_DEVICE_ID_QVR32A) }, { } }; MODULE_DEVICE_TABLE(hid, qvr_external_sensor_table); diff --git a/drivers/hid/hid-qvr.h b/drivers/hid/hid-qvr.h index 72d27da72171..1619e0d826c5 100644 --- a/drivers/hid/hid-qvr.h +++ b/drivers/hid/hid-qvr.h @@ -16,8 +16,6 @@ #ifndef HID_QVR_H_FILE #define HID_QVR_H_FILE -#define USB_VENDOR_ID_QVR5 0x045e -#define USB_DEVICE_ID_QVR5 0x0659 #define QVR_EXTERNAL_SENSOR_REPORT_ID 0x1 //CMD IDs From 50dd94483dfff5f4508a982dc9d3dd73b044f3bb Mon Sep 17 00:00:00 2001 From: rbandi Date: Fri, 27 Sep 2019 15:05:14 -0700 Subject: [PATCH 2/3] HID: Adding new id for hid-qvr support Adding new vendor id and product id to support additional hardware. Change-Id: I777568f1a68b15345695e09d2ad89e9230508886 Signed-off-by: rbandi --- drivers/hid/hid-ids.h | 2 ++ drivers/hid/hid-quirks.c | 3 +++ drivers/hid/hid-qvr.c | 1 + 3 files changed, 6 insertions(+) diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 4a594977ef83..269f82befea7 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -1277,7 +1277,9 @@ #define USB_VENDOR_ID_QVR5 0x045e #define USB_VENDOR_ID_QVR32A 0x04b4 +#define USB_VENDOR_ID_NREAL 0x05a9 #define USB_DEVICE_ID_QVR5 0x0659 #define USB_DEVICE_ID_QVR32A 0x00c3 +#define USB_DEVICE_ID_NREAL 0x0680 #endif diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c index a7c8efbd66ff..5f2e6e31d2dc 100644 --- a/drivers/hid/hid-quirks.c +++ b/drivers/hid/hid-quirks.c @@ -178,6 +178,8 @@ static const struct hid_device_id hid_quirks[] = { HID_QUIRK_HIDINPUT_FORCE | HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, { HID_USB_DEVICE(USB_VENDOR_ID_QVR32A, USB_DEVICE_ID_QVR32A), HID_QUIRK_HIDINPUT_FORCE | HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, + { HID_USB_DEVICE(USB_VENDOR_ID_NREAL, USB_DEVICE_ID_NREAL), + HID_QUIRK_HIDINPUT_FORCE | HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, { 0 } }; @@ -569,6 +571,7 @@ static const struct hid_device_id hid_have_special_driver[] = { #if IS_ENABLED(CONFIG_HID_QVR) { HID_USB_DEVICE(USB_VENDOR_ID_QVR5, USB_DEVICE_ID_QVR5) }, { HID_USB_DEVICE(USB_VENDOR_ID_QVR32A, USB_DEVICE_ID_QVR32A) }, + { HID_USB_DEVICE(USB_VENDOR_ID_NREAL, USB_DEVICE_ID_NREAL) }, #endif #if IS_ENABLED(CONFIG_HID_RETRODE) { HID_USB_DEVICE(USB_VENDOR_ID_FUTURE_TECHNOLOGY, USB_DEVICE_ID_RETRODE2) }, diff --git a/drivers/hid/hid-qvr.c b/drivers/hid/hid-qvr.c index 61ab454df155..ee2c6a61514c 100644 --- a/drivers/hid/hid-qvr.c +++ b/drivers/hid/hid-qvr.c @@ -622,6 +622,7 @@ static void qvr_external_sensor_device_remove(struct hid_device *hdev) static struct hid_device_id qvr_external_sensor_table[] = { { HID_USB_DEVICE(USB_VENDOR_ID_QVR5, USB_DEVICE_ID_QVR5) }, { HID_USB_DEVICE(USB_VENDOR_ID_QVR32A, USB_DEVICE_ID_QVR32A) }, + { HID_USB_DEVICE(USB_VENDOR_ID_NREAL, USB_DEVICE_ID_NREAL) }, { } }; MODULE_DEVICE_TABLE(hid, qvr_external_sensor_table); From b30ed4d29d625748035e647ae3ab5af53dc353df Mon Sep 17 00:00:00 2001 From: Sathish Ambley Date: Mon, 23 Mar 2020 13:35:19 -0700 Subject: [PATCH 3/3] arm64: defconfig: Enable QVR HID driver on Lahaina Enable QVR HID driver on Lahaina. Change-Id: Iee185906c39c7358445af60711176a3f32af7536 Signed-off-by: Sathish Ambley --- arch/arm64/configs/vendor/lahaina_QGKI.config | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/configs/vendor/lahaina_QGKI.config b/arch/arm64/configs/vendor/lahaina_QGKI.config index 811293a26fc2..843da94de484 100644 --- a/arch/arm64/configs/vendor/lahaina_QGKI.config +++ b/arch/arm64/configs/vendor/lahaina_QGKI.config @@ -165,3 +165,4 @@ CONFIG_MMC_SDHCI_MSM=m CONFIG_DUMMY=y CONFIG_IOSCHED_BFQ=y CONFIG_BFQ_GROUP_IOSCHED=y +CONFIG_HID_QVR=y