From b9ef432e2b93c31d2e39be13f22c61f4c2e8b5cb Mon Sep 17 00:00:00 2001 From: Stroopwafe1 <48443491+Stroopwafe1@users.noreply.github.com> Date: Mon, 25 Nov 2024 08:15:40 +0100 Subject: [PATCH 1/2] Update to Linux 6.12 --- hid-kye.c | 2 +- hid-polostar.c | 2 +- hid-uclogic-core.c | 2 +- hid-uclogic-params.c | 2 +- hid-uclogic-rdesc.c | 2 +- hid-viewsonic.c | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/hid-kye.c b/hid-kye.c index 5fde67f..5353405 100644 --- a/hid-kye.c +++ b/hid-kye.c @@ -579,7 +579,7 @@ static __u8 *kye_consumer_control_fixup(struct hid_device *hdev, __u8 *rdesc, return rdesc; } -static __u8 *kye_report_fixup(struct hid_device *hdev, __u8 *rdesc, +static const __u8 *kye_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) { switch (hdev->product) { diff --git a/hid-polostar.c b/hid-polostar.c index ecbe02c..92a0085 100644 --- a/hid-polostar.c +++ b/hid-polostar.c @@ -149,7 +149,7 @@ static __u8 pt1001_rdesc_fixed[] = { 0xC0, /* End Collection */ }; -static __u8 *polostar_report_fixup(struct hid_device *hdev, __u8 *rdesc, +static const __u8 *polostar_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) { struct usb_interface *iface = to_usb_interface(hdev->dev.parent); diff --git a/hid-uclogic-core.c b/hid-uclogic-core.c index 06298ac..efc7575 100644 --- a/hid-uclogic-core.c +++ b/hid-uclogic-core.c @@ -53,7 +53,7 @@ static void uclogic_inrange_timeout(struct timer_list *t) input_sync(input); } -static __u8 *uclogic_report_fixup(struct hid_device *hdev, __u8 *rdesc, +static const __u8 *uclogic_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) { struct uclogic_drvdata *drvdata = hid_get_drvdata(hdev); diff --git a/hid-uclogic-params.c b/hid-uclogic-params.c index 7f7cc36..4b6b08b 100644 --- a/hid-uclogic-params.c +++ b/hid-uclogic-params.c @@ -19,7 +19,7 @@ #include "hid-ids.h" #include #include -#include +#include #include diff --git a/hid-uclogic-rdesc.c b/hid-uclogic-rdesc.c index c26bfb1..4505633 100644 --- a/hid-uclogic-rdesc.c +++ b/hid-uclogic-rdesc.c @@ -16,7 +16,7 @@ #include "hid-uclogic-rdesc.h" #include -#include +#include /* Fixed WP4030U report descriptor */ __u8 uclogic_rdesc_wp4030u_fixed_arr[] = { diff --git a/hid-viewsonic.c b/hid-viewsonic.c index d887ac1..621f11f 100644 --- a/hid-viewsonic.c +++ b/hid-viewsonic.c @@ -71,7 +71,7 @@ static __u8 pd1011_rdesc_fixed[] = { 0xC0 /* End Collection */ }; -static __u8 *viewsonic_report_fixup(struct hid_device *hdev, __u8 *rdesc, +static const __u8 *viewsonic_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) { switch (hdev->product) { From a9f3496b317cf27240533bc51910736d36837d8c Mon Sep 17 00:00:00 2001 From: Stroopwafe1 <48443491+Stroopwafe1@users.noreply.github.com> Date: Mon, 16 Dec 2024 11:55:54 +0100 Subject: [PATCH 2/2] Feat: Implemented feedback on keeping backwards compatibility --- hid-kye.c | 7 +++++++ hid-polostar.c | 6 ++++++ hid-uclogic-core.c | 5 +++++ hid-uclogic-params.c | 7 ++++++- hid-uclogic-rdesc.c | 6 ++++++ hid-viewsonic.c | 6 ++++++ 6 files changed, 36 insertions(+), 1 deletion(-) diff --git a/hid-kye.c b/hid-kye.c index 5353405..ac14d1a 100644 --- a/hid-kye.c +++ b/hid-kye.c @@ -18,6 +18,8 @@ #include #include +#include + #include "hid-ids.h" /* Original EasyPen i405X report descriptor size */ @@ -579,8 +581,13 @@ static __u8 *kye_consumer_control_fixup(struct hid_device *hdev, __u8 *rdesc, return rdesc; } +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 12, 0) +static __u8 *kye_report_fixup(struct hid_device *hdev, __u8 *rdesc, + unsigned int *rsize) +#else static const __u8 *kye_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) +#endif { switch (hdev->product) { case USB_DEVICE_ID_KYE_ERGO_525V: diff --git a/hid-polostar.c b/hid-polostar.c index 92a0085..df51069 100644 --- a/hid-polostar.c +++ b/hid-polostar.c @@ -16,6 +16,7 @@ #include #include #include +#include #include "hid-ids.h" @@ -149,8 +150,13 @@ static __u8 pt1001_rdesc_fixed[] = { 0xC0, /* End Collection */ }; +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 12, 0) +static __u8 *polostar_report_fixup(struct hid_device *hdev, __u8 *rdesc, + unsigned int *rsize) +#else static const __u8 *polostar_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) +#endif { struct usb_interface *iface = to_usb_interface(hdev->dev.parent); __u8 iface_num = iface->cur_altsetting->desc.bInterfaceNumber; diff --git a/hid-uclogic-core.c b/hid-uclogic-core.c index efc7575..72680dd 100644 --- a/hid-uclogic-core.c +++ b/hid-uclogic-core.c @@ -53,8 +53,13 @@ static void uclogic_inrange_timeout(struct timer_list *t) input_sync(input); } +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 12, 0) +static __u8 *uclogic_report_fixup(struct hid_device *hdev, __u8 *rdesc, + unsigned int *rsize) +#else static const __u8 *uclogic_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) +#endif { struct uclogic_drvdata *drvdata = hid_get_drvdata(hdev); diff --git a/hid-uclogic-params.c b/hid-uclogic-params.c index 4b6b08b..97f9dc6 100644 --- a/hid-uclogic-params.c +++ b/hid-uclogic-params.c @@ -19,9 +19,14 @@ #include "hid-ids.h" #include #include +#include + +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 12, 0) +#include +#else #include +#endif -#include /** * uclogic_params_pen_inrange_to_str() - Convert a pen in-range reporting type diff --git a/hid-uclogic-rdesc.c b/hid-uclogic-rdesc.c index 4505633..c9d7230 100644 --- a/hid-uclogic-rdesc.c +++ b/hid-uclogic-rdesc.c @@ -16,7 +16,13 @@ #include "hid-uclogic-rdesc.h" #include +#include + +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 12, 0) +#include +#else #include +#endif /* Fixed WP4030U report descriptor */ __u8 uclogic_rdesc_wp4030u_fixed_arr[] = { diff --git a/hid-viewsonic.c b/hid-viewsonic.c index 621f11f..0d526c3 100644 --- a/hid-viewsonic.c +++ b/hid-viewsonic.c @@ -16,6 +16,7 @@ #include #include #include +#include #include "hid-ids.h" @@ -71,8 +72,13 @@ static __u8 pd1011_rdesc_fixed[] = { 0xC0 /* End Collection */ }; +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 12, 0) +static __u8 *viewsonic_report_fixup(struct hid_device *hdev, __u8 *rdesc, + unsigned int *rsize) +#else static const __u8 *viewsonic_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) +#endif { switch (hdev->product) { case USB_DEVICE_ID_VIEWSONIC_PD1011: