From: Greg Kroah-Hartman Date: Tue, 18 Mar 2025 16:47:04 +0000 (+0100) Subject: 6.1-stable patches X-Git-Tag: v6.6.84~11 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e0fe9de16db4cedcb177661000838d3dcc57bfff;p=thirdparty%2Fkernel%2Fstable-queue.git 6.1-stable patches added patches: hid-apple-disable-fn-key-handling-on-the-omoton-kb066.patch nvme-tcp-fix-a-c2htermreq-error-message.patch --- diff --git a/queue-6.1/hid-apple-disable-fn-key-handling-on-the-omoton-kb066.patch b/queue-6.1/hid-apple-disable-fn-key-handling-on-the-omoton-kb066.patch new file mode 100644 index 0000000000..5f05629c0c --- /dev/null +++ b/queue-6.1/hid-apple-disable-fn-key-handling-on-the-omoton-kb066.patch @@ -0,0 +1,72 @@ +From 221cea1003d8a412e5ec64a58df7ab19b654f490 Mon Sep 17 00:00:00 2001 +From: Alex Henrie +Date: Sun, 23 Feb 2025 22:36:30 -0700 +Subject: HID: apple: disable Fn key handling on the Omoton KB066 + +From: Alex Henrie + +commit 221cea1003d8a412e5ec64a58df7ab19b654f490 upstream. + +Remove the fixup to make the Omoton KB066's F6 key F6 when not holding +Fn. That was really just a hack to allow typing F6 in fnmode>0, and it +didn't fix any of the other F keys that were likewise untypable in +fnmode>0. Instead, because the Omoton's Fn key is entirely internal to +the keyboard, completely disable Fn key translation when an Omoton is +detected, which will prevent the hid-apple driver from interfering with +the keyboard's built-in Fn key handling. All of the F keys, including +F6, are then typable when Fn is held. + +The Omoton KB066 and the Apple A1255 both have HID product code +05ac:022c. The self-reported name of every original A1255 when they left +the factory was "Apple Wireless Keyboard". By default, Mac OS changes +the name to "'s keyboard" when pairing with the keyboard, but +Mac OS allows the user to set the internal name of Apple keyboards to +anything they like. The Omoton KB066's name, on the other hand, is not +configurable: It is always "Bluetooth Keyboard". Because that name is so +generic that a user might conceivably use the same name for a real Apple +keyboard, detect Omoton keyboards based on both having that exact name +and having HID product code 022c. + +Fixes: 819083cb6eed ("HID: apple: fix up the F6 key on the Omoton KB066 keyboard") +Signed-off-by: Alex Henrie +Reviewed-by: Aditya Garg +Signed-off-by: Jiri Kosina +Signed-off-by: Greg Kroah-Hartman +--- + drivers/hid/hid-apple.c | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +--- a/drivers/hid/hid-apple.c ++++ b/drivers/hid/hid-apple.c +@@ -339,6 +339,12 @@ static bool apple_is_non_apple_keyboard( + return false; + } + ++static bool apple_is_omoton_kb066(struct hid_device *hdev) ++{ ++ return hdev->product == USB_DEVICE_ID_APPLE_ALU_WIRELESS_ANSI && ++ strcmp(hdev->name, "Bluetooth Keyboard") == 0; ++} ++ + static inline void apple_setup_key_translation(struct input_dev *input, + const struct apple_key_translation *table) + { +@@ -497,9 +503,6 @@ static int hidinput_apple_event(struct h + } + } + +- if (usage->hid == 0xc0301) /* Omoton KB066 quirk */ +- code = KEY_F6; +- + if (usage->code != code) { + input_event_with_scancode(input, usage->type, code, usage->hid, value); + +@@ -679,7 +682,7 @@ static int apple_input_configured(struct + { + struct apple_sc *asc = hid_get_drvdata(hdev); + +- if ((asc->quirks & APPLE_HAS_FN) && !asc->fn_found) { ++ if (((asc->quirks & APPLE_HAS_FN) && !asc->fn_found) || apple_is_omoton_kb066(hdev)) { + hid_info(hdev, "Fn key not found (Apple Wireless Keyboard clone?), disabling Fn key handling\n"); + asc->quirks &= ~APPLE_HAS_FN; + } diff --git a/queue-6.1/nvme-tcp-fix-a-c2htermreq-error-message.patch b/queue-6.1/nvme-tcp-fix-a-c2htermreq-error-message.patch new file mode 100644 index 0000000000..78e041aede --- /dev/null +++ b/queue-6.1/nvme-tcp-fix-a-c2htermreq-error-message.patch @@ -0,0 +1,33 @@ +From afb41b08c44e5386f2f52fa859010ac4afd2b66f Mon Sep 17 00:00:00 2001 +From: Maurizio Lombardi +Date: Mon, 24 Feb 2025 15:40:58 +0100 +Subject: nvme-tcp: Fix a C2HTermReq error message + +From: Maurizio Lombardi + +commit afb41b08c44e5386f2f52fa859010ac4afd2b66f upstream. + +In H2CTermReq, a FES with value 0x05 means "R2T Limit Exceeded"; but +in C2HTermReq the same value has a different meaning (Data Transfer Limit +Exceeded). + +Fixes: 84e009042d0f ("nvme-tcp: add basic support for the C2HTermReq PDU") +Signed-off-by: Maurizio Lombardi +Reviewed-by: Sagi Grimberg +Signed-off-by: Keith Busch +Signed-off-by: Greg Kroah-Hartman +--- + drivers/nvme/host/tcp.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/nvme/host/tcp.c ++++ b/drivers/nvme/host/tcp.c +@@ -706,7 +706,7 @@ static void nvme_tcp_handle_c2h_term(str + [NVME_TCP_FES_PDU_SEQ_ERR] = "PDU Sequence Error", + [NVME_TCP_FES_HDR_DIGEST_ERR] = "Header Digest Error", + [NVME_TCP_FES_DATA_OUT_OF_RANGE] = "Data Transfer Out Of Range", +- [NVME_TCP_FES_R2T_LIMIT_EXCEEDED] = "R2T Limit Exceeded", ++ [NVME_TCP_FES_DATA_LIMIT_EXCEEDED] = "Data Transfer Limit Exceeded", + [NVME_TCP_FES_UNSUPPORTED_PARAM] = "Unsupported Parameter", + }; + diff --git a/queue-6.1/series b/queue-6.1/series index 4e3640424f..a6d415efd8 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -143,3 +143,5 @@ i2c-sis630-fix-an-error-handling-path-in-sis630_prob.patch arm64-mm-populate-vmemmap-at-the-page-level-if-not-s.patch smb3-add-support-for-iakerb.patch smb-client-fix-match_session-bug-preventing-session-.patch +hid-apple-disable-fn-key-handling-on-the-omoton-kb066.patch +nvme-tcp-fix-a-c2htermreq-error-message.patch