HID: hid-input: add Surface Go battery quirk
authorZoltan Tamas Vajda <zoltan.tamas.vajda@gmail.com>
Thu, 3 Jun 2021 18:58:14 +0000 (20:58 +0200)
committerJiri Kosina <jkosina@suse.cz>
Mon, 14 Jun 2021 13:37:16 +0000 (15:37 +0200)
The Elantech touchscreen/digitizer in the Surface Go mistakenly reports
having a battery. This results in a low battery message every time you
try to use the pen.

This patch adds a quirk to ignore the non-existent battery and
gets rid of the false low battery messages.

Signed-off-by: Zoltan Tamas Vajda <zoltan.tamas.vajda@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-ids.h
drivers/hid/hid-input.c

index b84a0a11e05bf57601b09927c035fcd45d14e7aa..63ca5959dc679c34ed841dc721b9dce2f0655f52 100644 (file)
 #define USB_DEVICE_ID_HP_X2_10_COVER   0x0755
 #define I2C_DEVICE_ID_HP_SPECTRE_X360_15       0x2817
 #define USB_DEVICE_ID_ASUS_UX550_TOUCHSCREEN   0x2706
+#define I2C_DEVICE_ID_SURFACE_GO_TOUCHSCREEN   0x261A
 
 #define USB_VENDOR_ID_ELECOM           0x056e
 #define USB_DEVICE_ID_ELECOM_BM084     0x0061
index abbfa91e73e4307142e184969541f567b991f289..68c8644234a4a06cc1d00a27954ca5e9b67a0161 100644 (file)
@@ -326,6 +326,8 @@ static const struct hid_device_id hid_battery_quirks[] = {
          HID_BATTERY_QUIRK_IGNORE },
        { HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, I2C_DEVICE_ID_HP_SPECTRE_X360_15),
          HID_BATTERY_QUIRK_IGNORE },
+       { HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, I2C_DEVICE_ID_SURFACE_GO_TOUCHSCREEN),
+         HID_BATTERY_QUIRK_IGNORE },
        {}
 };