Skip to content

Commit 7744ca5

Browse files
JoseExpositoJiri Kosina
authored andcommitted
HID: uclogic: Add support for XP-PEN Deco Pro SW
The XP-PEN Deco Pro SW is a UGEE v2 device with a frame with 8 buttons, a bitmap dial and a mouse; however, the UCLOGIC_MOUSE_FRAME_QUIRK is required because it reports an incorrect frame type. Its pen has 2 buttons, supports tilt and pressure. It can be connected using a USB cable or, to use it in wireless mode, using a USB Bluetooth dongle. When it is connected in wireless mode the device battery is used to power it. All the pieces to support it are already in place. Add its ID and quirks in order to support the device. Signed-off-by: José Expósito <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
1 parent a251d65 commit 7744ca5

File tree

4 files changed

+8
-0
lines changed

4 files changed

+8
-0
lines changed

drivers/hid/hid-ids.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1297,6 +1297,7 @@
12971297
#define USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO01 0x0042
12981298
#define USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_L 0x0935
12991299
#define USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_PRO_S 0x0909
1300+
#define USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_PRO_SW 0x0933
13001301
#define USB_DEVICE_ID_UGEE_XPPEN_TABLET_STAR06 0x0078
13011302
#define USB_DEVICE_ID_UGEE_TABLET_G5 0x0074
13021303
#define USB_DEVICE_ID_UGEE_TABLET_EX07S 0x0071

drivers/hid/hid-input.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,8 @@ static const struct hid_device_id hid_battery_quirks[] = {
376376
HID_BATTERY_QUIRK_IGNORE },
377377
{ HID_USB_DEVICE(USB_VENDOR_ID_UGEE, USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_L),
378378
HID_BATTERY_QUIRK_AVOID_QUERY },
379+
{ HID_USB_DEVICE(USB_VENDOR_ID_UGEE, USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_PRO_SW),
380+
HID_BATTERY_QUIRK_AVOID_QUERY },
379381
{ HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, I2C_DEVICE_ID_HP_ENVY_X360_15),
380382
HID_BATTERY_QUIRK_IGNORE },
381383
{ HID_I2C_DEVICE(USB_VENDOR_ID_ELAN, I2C_DEVICE_ID_HP_ENVY_X360_15T_DR100),

drivers/hid/hid-uclogic-core.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -542,6 +542,9 @@ static const struct hid_device_id uclogic_devices[] = {
542542
USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_L) },
543543
{ HID_USB_DEVICE(USB_VENDOR_ID_UGEE,
544544
USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_PRO_S) },
545+
{ HID_USB_DEVICE(USB_VENDOR_ID_UGEE,
546+
USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_PRO_SW),
547+
.driver_data = UCLOGIC_MOUSE_FRAME_QUIRK | UCLOGIC_BATTERY_QUIRK },
545548
{ HID_USB_DEVICE(USB_VENDOR_ID_UGEE,
546549
USB_DEVICE_ID_UGEE_XPPEN_TABLET_STAR06) },
547550
{ }

drivers/hid/hid-uclogic-params.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1767,6 +1767,8 @@ int uclogic_params_init(struct uclogic_params *params,
17671767
USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_L):
17681768
case VID_PID(USB_VENDOR_ID_UGEE,
17691769
USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_PRO_S):
1770+
case VID_PID(USB_VENDOR_ID_UGEE,
1771+
USB_DEVICE_ID_UGEE_XPPEN_TABLET_DECO_PRO_SW):
17701772
rc = uclogic_params_ugee_v2_init(&p, hdev);
17711773
if (rc != 0)
17721774
goto cleanup;

0 commit comments

Comments
 (0)