From e31e99e9ced0eb1766020aa500b301f7859e0747 Mon Sep 17 00:00:00 2001 From: Cymirk <287481443+Cymirk@users.noreply.github.com> Date: Wed, 28 Oct 2026 21:54:41 -0700 Subject: [PATCH 1/3] Update asus-wmi.h added ignore_wlan_enable_event --- drivers/platform/x86/asus-wmi.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/x86/asus-wmi.h index b45f81b38a4752..c1977891260615 100644 --- a/drivers/platform/x86/asus-wmi.h +++ b/drivers/platform/x86/asus-wmi.h @@ -42,6 +42,7 @@ struct quirk_entry { bool wmi_ignore_fan; bool filter_i8042_e1_extended_codes; int key_wlan_event; + bool ignore_wlan_enable_event; enum asus_wmi_tablet_switch_mode tablet_switch_mode; int wapf; /* From edbbc4d320268059eaf5a7bad818016bc3f3b00c Mon Sep 17 00:00:00 2001 From: Cymirk <287481443+Cymirk@users.noreply.github.com> Date: Wed, 28 Oct 2026 22:48:01 -0700 Subject: [PATCH 2/3] Update asus-nb-wmi.c platform/x86: asus-nb-wmi: Ignore GX651AR event 0x5e --- drivers/platform/x86/asus-nb-wmi.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c index 3b0f3346dc607f..90113d62c78388 100644 --- a/drivers/platform/x86/asus-nb-wmi.c +++ b/drivers/platform/x86/asus-nb-wmi.c @@ -154,6 +154,10 @@ static struct quirk_entry quirk_asus_zenbook_duo_kbd = { .key_wlan_event = ASUS_WMI_KEY_IGNORE, }; +static struct quirk_entry quirk_asus_gx651ar = { + .ignore_wlan_enable_event = true, +}; + static struct quirk_entry quirk_asus_z13 = { .key_wlan_event = ASUS_WMI_KEY_ARMOURY, .tablet_switch_mode = asus_wmi_kbd_dock_devid, @@ -540,6 +544,15 @@ static const struct dmi_system_id asus_quirks[] = { }, .driver_data = &quirk_asus_ignore_fan, }, + { + .callback = dmi_matched, + .ident = "ASUS ROG Zephyrus Duo GX651AR", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUS"), + DMI_MATCH(DMI_PRODUCT_NAME, "ROG Zephyrus Duo GX651AR"), + }, + .driver_data = &quirk_asus_gx651ar, + }, { .callback = dmi_matched, .ident = "ASUS Zenbook Duo UX8406MA", @@ -710,6 +723,11 @@ static void asus_nb_wmi_key_filter(struct asus_wmi_driver *asus_wmi, int *code, case 0x5D: /* Wireless console Toggle */ case 0x5E: /* Wireless console Enable / Keyboard Attach, Detach */ case 0x5F: /* Wireless console Disable / Special Key */ + /* Ignore keyboard attach/detach events on affected models. */ + if (*code == 0x5E && quirks->ignore_wlan_enable_event) { + *code = ASUS_WMI_KEY_IGNORE; + break; + } if (quirks->key_wlan_event) *code = quirks->key_wlan_event; break; From 1a64441ccf835d0bf207c5a4673721afd74c6dfd Mon Sep 17 00:00:00 2001 From: Cymirk <287481443+Cymirk@users.noreply.github.com> Date: Wed, 28 Oct 2026 23:12:08 -0700 Subject: [PATCH 3/3] Update asus-nb-wmi.c platform/x86: asus-nb-wmi: Preserve GX651AR backlight initialization --- drivers/platform/x86/asus-nb-wmi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c index 90113d62c78388..21ed9d26e37ff7 100644 --- a/drivers/platform/x86/asus-nb-wmi.c +++ b/drivers/platform/x86/asus-nb-wmi.c @@ -155,6 +155,7 @@ static struct quirk_entry quirk_asus_zenbook_duo_kbd = { }; static struct quirk_entry quirk_asus_gx651ar = { + .wmi_backlight_set_devstate = true, .ignore_wlan_enable_event = true, };