summarylogtreecommitdiffstats
path: root/0021-HID-add-Lenovo-Yoga-C630-battery-quirk.patch
diff options
context:
space:
mode:
Diffstat (limited to '0021-HID-add-Lenovo-Yoga-C630-battery-quirk.patch')
-rw-r--r--0021-HID-add-Lenovo-Yoga-C630-battery-quirk.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/0021-HID-add-Lenovo-Yoga-C630-battery-quirk.patch b/0021-HID-add-Lenovo-Yoga-C630-battery-quirk.patch
new file mode 100644
index 000000000000..13763c3e3255
--- /dev/null
+++ b/0021-HID-add-Lenovo-Yoga-C630-battery-quirk.patch
@@ -0,0 +1,50 @@
+From 4af0f12367b2cdf687e58044a71916edb60b0f4d Mon Sep 17 00:00:00 2001
+From: Steev Klimaszewski <steev@kali.org>
+Date: Thu, 18 Aug 2022 21:39:24 -0500
+Subject: [PATCH 21/73] HID: add Lenovo Yoga C630 battery quirk
+
+commit 3a47fa7b14c7d9613909a844aba27f99d3c58634 upstream.
+
+Similar to the Surface Go devices, the Elantech touchscreen/digitizer in
+the Lenovo Yoga C630 mistakenly reports the battery of the stylus, and
+always reports an empty battery.
+
+Apply the HID_BATTERY_QUIRK_IGNORE quirk to ignore this battery and
+prevent the erroneous low battery warnings.
+
+Signed-off-by: Steev Klimaszewski <steev@kali.org>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/hid/hid-ids.h | 1 +
+ drivers/hid/hid-input.c | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
+index 9c4e92a9c646..f7e4a0d06fb8 100644
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -414,6 +414,7 @@
+ #define USB_DEVICE_ID_ASUS_UX550_TOUCHSCREEN 0x2706
+ #define I2C_DEVICE_ID_SURFACE_GO_TOUCHSCREEN 0x261A
+ #define I2C_DEVICE_ID_SURFACE_GO2_TOUCHSCREEN 0x2A1C
++#define I2C_DEVICE_ID_LENOVO_YOGA_C630_TOUCHSCREEN 0x279F
+
+ #define USB_VENDOR_ID_ELECOM 0x056e
+ #define USB_DEVICE_ID_ELECOM_BM084 0x0061
+diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c
+index 871a185a0f1f..859aeb07542e 100644
+--- a/drivers/hid/hid-input.c
++++ b/drivers/hid/hid-input.c
+@@ -383,6 +383,8 @@ static const struct hid_device_id hid_battery_quirks[] = {
+ HID_BATTERY_QUIRK_IGNORE },
+ { HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, I2C_DEVICE_ID_SURFACE_GO2_TOUCHSCREEN),
+ HID_BATTERY_QUIRK_IGNORE },
++ { HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, I2C_DEVICE_ID_LENOVO_YOGA_C630_TOUCHSCREEN),
++ HID_BATTERY_QUIRK_IGNORE },
+ {}
+ };
+
+--
+2.37.3
+