Commit ce240104 authored by Nikolai Kondrashov's avatar Nikolai Kondrashov Committed by Jiri Kosina

HID: uclogic: Specify total report size to buttonpad macro

Simplify the UCLOGIC_RDESC_BUTTONPAD_BYTES macro by passing as param
the size of the report to pad to in bytes.
Signed-off-by: default avatarNikolai Kondrashov <spbnick@gmail.com>
Signed-off-by: default avatarJosé Expósito <jose.exposito89@gmail.com>
Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
parent e6be956f
...@@ -654,10 +654,9 @@ const size_t uclogic_rdesc_pen_v2_template_size = ...@@ -654,10 +654,9 @@ const size_t uclogic_rdesc_pen_v2_template_size =
/* /*
* Expand to the contents of a generic buttonpad report descriptor. * Expand to the contents of a generic buttonpad report descriptor.
* *
* @_padding: Padding from the end of button bits at bit 44, until * @_size: Size of the report to pad to, including report ID, bytes.
* the end of the report, in bits.
*/ */
#define UCLOGIC_RDESC_BUTTONPAD_BYTES(_padding) \ #define UCLOGIC_RDESC_BUTTONPAD_BYTES(_size) \
0x05, 0x01, /* Usage Page (Desktop), */ \ 0x05, 0x01, /* Usage Page (Desktop), */ \
0x09, 0x07, /* Usage (Keypad), */ \ 0x09, 0x07, /* Usage (Keypad), */ \
0xA1, 0x01, /* Collection (Application), */ \ 0xA1, 0x01, /* Collection (Application), */ \
...@@ -692,21 +691,22 @@ const size_t uclogic_rdesc_pen_v2_template_size = ...@@ -692,21 +691,22 @@ const size_t uclogic_rdesc_pen_v2_template_size =
0x29, 0x03, /* Usage Maximum (03h), */ \ 0x29, 0x03, /* Usage Maximum (03h), */ \
0x95, 0x03, /* Report Count (3), */ \ 0x95, 0x03, /* Report Count (3), */ \
0x81, 0x02, /* Input (Variable), */ \ 0x81, 0x02, /* Input (Variable), */ \
0x95, _padding, /* Report Count (_padding), */ \ 0x95, ((_size) * 8 - 45), \
/* Report Count (padding), */ \
0x81, 0x01, /* Input (Constant), */ \ 0x81, 0x01, /* Input (Constant), */ \
0xC0, /* End Collection, */ \ 0xC0, /* End Collection, */ \
0xC0 /* End Collection */ 0xC0 /* End Collection */
/* Fixed report descriptor for (tweaked) v1 buttonpad reports */ /* Fixed report descriptor for (tweaked) v1 buttonpad reports */
const __u8 uclogic_rdesc_buttonpad_v1_arr[] = { const __u8 uclogic_rdesc_buttonpad_v1_arr[] = {
UCLOGIC_RDESC_BUTTONPAD_BYTES(19) UCLOGIC_RDESC_BUTTONPAD_BYTES(8)
}; };
const size_t uclogic_rdesc_buttonpad_v1_size = const size_t uclogic_rdesc_buttonpad_v1_size =
sizeof(uclogic_rdesc_buttonpad_v1_arr); sizeof(uclogic_rdesc_buttonpad_v1_arr);
/* Fixed report descriptor for (tweaked) v2 buttonpad reports */ /* Fixed report descriptor for (tweaked) v2 buttonpad reports */
const __u8 uclogic_rdesc_buttonpad_v2_arr[] = { const __u8 uclogic_rdesc_buttonpad_v2_arr[] = {
UCLOGIC_RDESC_BUTTONPAD_BYTES(51) UCLOGIC_RDESC_BUTTONPAD_BYTES(12)
}; };
const size_t uclogic_rdesc_buttonpad_v2_size = const size_t uclogic_rdesc_buttonpad_v2_size =
sizeof(uclogic_rdesc_buttonpad_v2_arr); sizeof(uclogic_rdesc_buttonpad_v2_arr);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment