@@ -781,6 +781,41 @@ const __u8 uclogic_rdesc_ugee_g5_frame_arr[] = {
781781const size_t uclogic_rdesc_ugee_g5_frame_size =
782782 sizeof (uclogic_rdesc_ugee_g5_frame_arr );
783783
784+ /* Fixed report descriptor for XP-Pen Deco 01 frame controls */
785+ const __u8 uclogic_rdesc_xppen_deco01_frame_arr [] = {
786+ 0x05 , 0x01 , /* Usage Page (Desktop), */
787+ 0x09 , 0x07 , /* Usage (Keypad), */
788+ 0xA1 , 0x01 , /* Collection (Application), */
789+ 0x85 , 0x06 , /* Report ID (6), */
790+ 0x14 , /* Logical Minimum (0), */
791+ 0x25 , 0x01 , /* Logical Maximum (1), */
792+ 0x75 , 0x01 , /* Report Size (1), */
793+ 0x05 , 0x0D , /* Usage Page (Digitizer), */
794+ 0x09 , 0x39 , /* Usage (Tablet Function Keys), */
795+ 0xA0 , /* Collection (Physical), */
796+ 0x05 , 0x09 , /* Usage Page (Button), */
797+ 0x19 , 0x01 , /* Usage Minimum (01h), */
798+ 0x29 , 0x08 , /* Usage Maximum (08h), */
799+ 0x95 , 0x08 , /* Report Count (8), */
800+ 0x81 , 0x02 , /* Input (Variable), */
801+ 0x05 , 0x0D , /* Usage Page (Digitizer), */
802+ 0x09 , 0x44 , /* Usage (Barrel Switch), */
803+ 0x95 , 0x01 , /* Report Count (1), */
804+ 0x81 , 0x02 , /* Input (Variable), */
805+ 0x05 , 0x01 , /* Usage Page (Desktop), */
806+ 0x09 , 0x30 , /* Usage (X), */
807+ 0x09 , 0x31 , /* Usage (Y), */
808+ 0x95 , 0x02 , /* Report Count (2), */
809+ 0x81 , 0x02 , /* Input (Variable), */
810+ 0x95 , 0x15 , /* Report Count (21), */
811+ 0x81 , 0x01 , /* Input (Constant), */
812+ 0xC0 , /* End Collection, */
813+ 0xC0 /* End Collection */
814+ };
815+
816+ const size_t uclogic_rdesc_xppen_deco01_frame_size =
817+ sizeof (uclogic_rdesc_xppen_deco01_frame_arr );
818+
784819/**
785820 * uclogic_rdesc_template_apply() - apply report descriptor parameters to a
786821 * report descriptor template, creating a report descriptor. Copies the
0 commit comments