Message ID | fe59465c-3dfc-4d91-baca-ffbc3d4ff138@stravers.net (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | platform/x86: asus-wmi: Add quirk for ASUS Vivobook S14 | expand |
On Mon, 17 Mar 2025, Kevin Stravers wrote: > From 9af8ba6cfd6305d7696d6cfc8eedb12405cb572f Mon Sep 17 00:00:00 2001 > > From: Kevin Robert Stravers <kevin@stravers.net> > Date: Mon, 17 Mar 2025 20:41:44 -0400 > Subject: [PATCH] platform/x86: asus-wmi: Add quirk for ASUS Vivobook S14 > > The ASUS Vivobook S14 will have wifi disabled on boot as well as > resumption from suspend if the asus-wmi driver invokes rfkill functions. > > This patch disables asus-wmi's rfkill usage to prevent the wifi card > from being software disabled. > --- Hi Kevin, Thank you for the patch. I tried to apply this but git am say the patch is corrupted so I cannot apply it. Please resubmit, thank you. (It might be worth testing it first by emailing the patch only to yourself and checking that you can apply it before resubmitting publicly.) -- i. > drivers/platform/x86/asus-nb-wmi.c | 13 +++++++++++++ > drivers/platform/x86/asus-wmi.c | 5 +++++ > 2 files changed, 18 insertions(+) > > diff --git a/drivers/platform/x86/asus-nb-wmi.c > b/drivers/platform/x86/asus-nb-wmi.c > index 3f8b2a324efd..1e6fb9308560 100644 > --- a/drivers/platform/x86/asus-nb-wmi.c > +++ b/drivers/platform/x86/asus-nb-wmi.c > @@ -150,6 +150,10 @@ static struct quirk_entry quirk_asus_zenbook_duo_kbd = { > .ignore_key_wlan = true, > }; > > +static struct quirk_entry quirk_asus_vivobook_s14 = { > + .skip_rfkill = true, > +}; > + > static int dmi_matched(const struct dmi_system_id *dmi) > { > pr_info("Identified laptop model '%s'\n", dmi->ident); > @@ -530,6 +534,15 @@ static const struct dmi_system_id asus_quirks[] = { > }, > .driver_data = &quirk_asus_zenbook_duo_kbd, > }, > + { > + .callback = dmi_matched, > + .ident = "ASUS VivoBook S14", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), > + DMI_MATCH(DMI_PRODUCT_NAME, "S5406SA"), > + }, > + .driver_data = &quirk_asus_vivobook_s14, > + }, > {}, > }; > > diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c > index 38ef778e8c19..42e58a28c3e2 100644 > --- a/drivers/platform/x86/asus-wmi.c > +++ b/drivers/platform/x86/asus-wmi.c > @@ -2138,6 +2138,8 @@ static int asus_new_rfkill(struct asus_wmi *asus, > > static void asus_wmi_rfkill_exit(struct asus_wmi *asus) > { > + if (asus->driver->quirks->skip_rfkill) > + return; > if (asus->driver->wlan_ctrl_by_user && ashs_present()) > return; > > @@ -2188,6 +2190,9 @@ static void asus_wmi_rfkill_exit(struct asus_wmi *asus) > > static int asus_wmi_rfkill_init(struct asus_wmi *asus) > { > + if (asus->driver->quirks->skip_rfkill) > + return 0; > + > int result = 0; > > mutex_init(&asus->hotplug_lock); >
On Fri, 21 Mar 2025, Kevin Stravers wrote: > > Sorry about that, the email client formatted tabs as spaces. This should be the corre > ct patch. Hi, This now has other issues. It had some html in that comment above and please resend not as a reply to any thread but in own thread. > >From 9af8ba6cfd6305d7696d6cfc8eedb12405cb572f Mon Sep 17 00:00:00 2001 > From: Kevin Robert Stravers <kevin@stravers.net> > Date: Mon, 17 Mar 2025 20:41:44 -0400 > Subject: [PATCH] platform/x86: asus-wmi: Add quirk for ASUS Vivobook S14 > > The ASUS Vivobook S14 will have wifi disabled on boot as well as > resumption from suspend if the asus-wmi driver invokes rfkill functions. > > This patch disables asus-wmi's rfkill usage to prevent the wifi card > from being software disabled. > --- > drivers/platform/x86/asus-nb-wmi.c | 13 +++++++++++++ > drivers/platform/x86/asus-wmi.c | 5 +++++ > 2 files changed, 18 insertions(+) > > diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c > index 3f8b2a324efd..1e6fb9308560 100644 > --- a/drivers/platform/x86/asus-nb-wmi.c > +++ b/drivers/platform/x86/asus-nb-wmi.c > @@ -150,6 +150,10 @@ static struct quirk_entry quirk_asus_zenbook_duo_kbd = { > .ignore_key_wlan = true, > }; > > +static struct quirk_entry quirk_asus_vivobook_s14 = { > + .skip_rfkill = true, > +}; > + > static int dmi_matched(const struct dmi_system_id *dmi) > { > pr_info("Identified laptop model '%s'\n", dmi->ident); > @@ -530,6 +534,15 @@ static const struct dmi_system_id asus_quirks[] = { > }, > .driver_data = &quirk_asus_zenbook_duo_kbd, > }, > + { > + .callback = dmi_matched, > + .ident = "ASUS VivoBook S14", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), > + DMI_MATCH(DMI_PRODUCT_NAME, "S5406SA"), > + }, > + .driver_data = &quirk_asus_vivobook_s14, > + }, > {}, > }; > > diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c > index 38ef778e8c19..42e58a28c3e2 100644 > --- a/drivers/platform/x86/asus-wmi.c > +++ b/drivers/platform/x86/asus-wmi.c > @@ -2138,6 +2138,8 @@ static int asus_new_rfkill(struct asus_wmi *asus, > > static void asus_wmi_rfkill_exit(struct asus_wmi *asus) > { > + if (asus->driver->quirks->skip_rfkill) > + return; > if (asus->driver->wlan_ctrl_by_user && ashs_present()) > return; > > @@ -2188,6 +2190,9 @@ static void asus_wmi_rfkill_exit(struct asus_wmi *asus) > > static int asus_wmi_rfkill_init(struct asus_wmi *asus) > { > + if (asus->driver->quirks->skip_rfkill) > + return 0; > + > int result = 0; > > mutex_init(&asus->hotplug_lock); >
diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c index 3f8b2a324efd..1e6fb9308560 100644 --- a/drivers/platform/x86/asus-nb-wmi.c +++ b/drivers/platform/x86/asus-nb-wmi.c @@ -150,6 +150,10 @@ static struct quirk_entry quirk_asus_zenbook_duo_kbd = { .ignore_key_wlan = true, }; +static struct quirk_entry quirk_asus_vivobook_s14 = { + .skip_rfkill = true, +}; + static int dmi_matched(const struct dmi_system_id *dmi) { pr_info("Identified laptop model '%s'\n", dmi->ident); @@ -530,6 +534,15 @@ static const struct dmi_system_id asus_quirks[] = { }, .driver_data = &quirk_asus_zenbook_duo_kbd, }, + { + .callback = dmi_matched, + .ident = "ASUS VivoBook S14", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "S5406SA"), + }, + .driver_data = &quirk_asus_vivobook_s14, + }, {}, }; diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c index 38ef778e8c19..42e58a28c3e2 100644 --- a/drivers/platform/x86/asus-wmi.c +++ b/drivers/platform/x86/asus-wmi.c @@ -2138,6 +2138,8 @@ static int asus_new_rfkill(struct asus_wmi *asus, static void asus_wmi_rfkill_exit(struct asus_wmi *asus) { + if (asus->driver->quirks->skip_rfkill) + return; if (asus->driver->wlan_ctrl_by_user && ashs_present()) return; @@ -2188,6 +2190,9 @@ static void asus_wmi_rfkill_exit(struct asus_wmi *asus) static int asus_wmi_rfkill_init(struct asus_wmi *asus) { + if (asus->driver->quirks->skip_rfkill) + return 0; + int result = 0;
From 9af8ba6cfd6305d7696d6cfc8eedb12405cb572f Mon Sep 17 00:00:00 2001 From: Kevin Robert Stravers <kevin@stravers.net> Date: Mon, 17 Mar 2025 20:41:44 -0400 Subject: [PATCH] platform/x86: asus-wmi: Add quirk for ASUS Vivobook S14 The ASUS Vivobook S14 will have wifi disabled on boot as well as resumption from suspend if the asus-wmi driver invokes rfkill functions. This patch disables asus-wmi's rfkill usage to prevent the wifi card from being software disabled. --- drivers/platform/x86/asus-nb-wmi.c | 13 +++++++++++++ drivers/platform/x86/asus-wmi.c | 5 +++++ 2 files changed, 18 insertions(+) mutex_init(&asus->hotplug_lock);