aboutsummaryrefslogtreecommitdiff
path: root/SOURCES/v14.8-0002-HID-asus-make-asus_kbd_init-generic-remove-rog.patch
diff options
context:
space:
mode:
Diffstat (limited to 'SOURCES/v14.8-0002-HID-asus-make-asus_kbd_init-generic-remove-rog.patch')
-rw-r--r--SOURCES/v14.8-0002-HID-asus-make-asus_kbd_init-generic-remove-rog.patch130
1 files changed, 0 insertions, 130 deletions
diff --git a/SOURCES/v14.8-0002-HID-asus-make-asus_kbd_init-generic-remove-rog.patch b/SOURCES/v14.8-0002-HID-asus-make-asus_kbd_init-generic-remove-rog.patch
deleted file mode 100644
index f0f4967..0000000
--- a/SOURCES/v14.8-0002-HID-asus-make-asus_kbd_init-generic-remove-rog.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From d6b33439281d1b8cf93b0c5c5ecabcd9c6e7baad Mon Sep 17 00:00:00 2001
-From: "Luke D. Jones" <luke@ljones.dev>
-Date: Sat, 2 Dec 2023 17:47:59 +1300
-Subject: [PATCH v14.7 2/4] HID: asus: make asus_kbd_init() generic, remove
- rog_nkey_led_init()
-
-Some of the n-key stuff is old and outdated, so
-make asus_kbd_init() generic to use with other
-report ID and remove rog_nkey_led_init().
-
-Signed-off-by: Luke D. Jones <luke@ljones.dev>
----
- drivers/hid/hid-asus.c | 70 +++++++++++-------------------------------
- 1 file changed, 18 insertions(+), 52 deletions(-)
-
-diff --git a/drivers/hid/hid-asus.c b/drivers/hid/hid-asus.c
-index 855972a4470f..cdd998a761fe 100644
---- a/drivers/hid/hid-asus.c
-+++ b/drivers/hid/hid-asus.c
-@@ -386,9 +386,9 @@ static int asus_kbd_set_report(struct hid_device *hdev, const u8 *buf, size_t bu
- return ret;
- }
-
--static int asus_kbd_init(struct hid_device *hdev)
-+static int asus_kbd_init(struct hid_device *hdev, u8 report_id)
- {
-- const u8 buf[] = { FEATURE_KBD_REPORT_ID, 0x41, 0x53, 0x55, 0x53, 0x20, 0x54,
-+ const u8 buf[] = { report_id, 0x41, 0x53, 0x55, 0x53, 0x20, 0x54,
- 0x65, 0x63, 0x68, 0x2e, 0x49, 0x6e, 0x63, 0x2e, 0x00 };
- int ret;
-
-@@ -400,9 +400,10 @@ static int asus_kbd_init(struct hid_device *hdev)
- }
-
- static int asus_kbd_get_functions(struct hid_device *hdev,
-- unsigned char *kbd_func)
-+ unsigned char *kbd_func,
-+ u8 report_id)
- {
-- const u8 buf[] = { FEATURE_KBD_REPORT_ID, 0x05, 0x20, 0x31, 0x00, 0x08 };
-+ const u8 buf[] = { report_id, 0x05, 0x20, 0x31, 0x00, 0x08 };
- u8 *readbuf;
- int ret;
-
-@@ -431,51 +432,6 @@ static int asus_kbd_get_functions(struct hid_device *hdev,
- return ret;
- }
-
--static int rog_nkey_led_init(struct hid_device *hdev)
--{
-- const u8 buf_init_start[] = { FEATURE_KBD_LED_REPORT_ID1, 0xB9 };
-- u8 buf_init2[] = { FEATURE_KBD_LED_REPORT_ID1, 0x41, 0x53, 0x55, 0x53, 0x20,
-- 0x54, 0x65, 0x63, 0x68, 0x2e, 0x49, 0x6e, 0x63, 0x2e, 0x00 };
-- u8 buf_init3[] = { FEATURE_KBD_LED_REPORT_ID1,
-- 0x05, 0x20, 0x31, 0x00, 0x08 };
-- int ret;
--
-- hid_info(hdev, "Asus initialise N-KEY Device");
-- /* The first message is an init start */
-- ret = asus_kbd_set_report(hdev, buf_init_start, sizeof(buf_init_start));
-- if (ret < 0) {
-- hid_warn(hdev, "Asus failed to send init start command: %d\n", ret);
-- return ret;
-- }
-- /* Followed by a string */
-- ret = asus_kbd_set_report(hdev, buf_init2, sizeof(buf_init2));
-- if (ret < 0) {
-- hid_warn(hdev, "Asus failed to send init command 1.0: %d\n", ret);
-- return ret;
-- }
-- /* Followed by a string */
-- ret = asus_kbd_set_report(hdev, buf_init3, sizeof(buf_init3));
-- if (ret < 0) {
-- hid_warn(hdev, "Asus failed to send init command 1.1: %d\n", ret);
-- return ret;
-- }
--
-- /* begin second report ID with same data */
-- buf_init2[0] = FEATURE_KBD_LED_REPORT_ID2;
-- buf_init3[0] = FEATURE_KBD_LED_REPORT_ID2;
--
-- ret = asus_kbd_set_report(hdev, buf_init2, sizeof(buf_init2));
-- if (ret < 0) {
-- hid_warn(hdev, "Asus failed to send init command 2.0: %d\n", ret);
-- return ret;
-- }
-- ret = asus_kbd_set_report(hdev, buf_init3, sizeof(buf_init3));
-- if (ret < 0)
-- hid_warn(hdev, "Asus failed to send init command 2.1: %d\n", ret);
--
-- return ret;
--}
--
- static void asus_schedule_work(struct asus_kbd_leds *led)
- {
- unsigned long flags;
-@@ -558,17 +514,27 @@ static int asus_kbd_register_leds(struct hid_device *hdev)
- int ret;
-
- if (drvdata->quirks & QUIRK_ROG_NKEY_KEYBOARD) {
-- ret = rog_nkey_led_init(hdev);
-+ /* Initialize keyboard */
-+ ret = asus_kbd_init(hdev, FEATURE_KBD_REPORT_ID);
-+ if (ret < 0)
-+ return ret;
-+
-+ /* The LED endpoint is initialised in two HID */
-+ ret = asus_kbd_init(hdev, FEATURE_KBD_LED_REPORT_ID1);
-+ if (ret < 0)
-+ return ret;
-+
-+ ret = asus_kbd_init(hdev, FEATURE_KBD_LED_REPORT_ID2);
- if (ret < 0)
- return ret;
- } else {
- /* Initialize keyboard */
-- ret = asus_kbd_init(hdev);
-+ ret = asus_kbd_init(hdev, FEATURE_KBD_REPORT_ID);
- if (ret < 0)
- return ret;
-
- /* Get keyboard functions */
-- ret = asus_kbd_get_functions(hdev, &kbd_func);
-+ ret = asus_kbd_get_functions(hdev, &kbd_func, FEATURE_KBD_REPORT_ID);
- if (ret < 0)
- return ret;
-
---
-2.43.0
-