Skip to content

Commit 3a1e4e7

Browse files
harrisonvanderbylBenjamin Tissoires
authored andcommitted
hid: Pen battery quirk for Surface Pro 12in
The pen setup for this device uses bluetooth for communicating battery levels and status instead of reporting it over i2c. Without this quirk, the device either reports an extra, broken phantom battery, or hangs. Signed-off-by: Harrison Vanderbyl <harrison.vanderbyl@gmail.com> Acked-by: Jiri Kosina <jkosina@suse.com> Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
1 parent 34b228b commit 3a1e4e7

2 files changed

Lines changed: 3 additions & 0 deletions

File tree

drivers/hid/hid-ids.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -459,6 +459,7 @@
459459
#define USB_DEVICE_ID_HP_X2 0x074d
460460
#define USB_DEVICE_ID_HP_X2_10_COVER 0x0755
461461
#define I2C_DEVICE_ID_CHROMEBOOK_TROGDOR_POMPOM 0x2F81
462+
#define I2C_DEVICE_ID_SURFACE_PRO_12IN 0x4376
462463

463464
#define USB_VENDOR_ID_ELECOM 0x056e
464465
#define USB_DEVICE_ID_ELECOM_BM084 0x0061

drivers/hid/hid-input.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -395,6 +395,8 @@ static const struct hid_device_id hid_battery_quirks[] = {
395395
HID_BATTERY_QUIRK_AVOID_QUERY },
396396
{ HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, I2C_DEVICE_ID_CHROMEBOOK_TROGDOR_POMPOM),
397397
HID_BATTERY_QUIRK_AVOID_QUERY },
398+
{ HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, I2C_DEVICE_ID_SURFACE_PRO_12IN),
399+
HID_BATTERY_QUIRK_IGNORE },
398400
/*
399401
* Elan HID touchscreens seem to all report a non present battery,
400402
* set HID_BATTERY_QUIRK_IGNORE for all Elan I2C and USB HID devices.

0 commit comments

Comments
 (0)