[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAD4HHcVKCL-9CV5kWH_6oz0jmh=+eXP-xU7cm2FvAHHucrPF7w@mail.gmail.com>
Date: Mon, 22 Dec 2025 11:44:42 +0100
From: Tim Wassink <timwassink.dev@...il.com>
To: Denis Benato <benato.denis96@...il.com>
Cc: Corentin Chary <corentin.chary@...il.com>, "Luke D. Jones" <luke@...nes.dev>,
Hans de Goede <hansg@...nel.org>, Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
platform-driver-x86@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] platform/x86: asus-nb-wmi: add quirk_asus_ignore_fan for UX3405MA
On Sun, Dec 21, 2025 at 10:01 PM Denis Benato <denis.benato@...email.com> wrote:
> On 12/21/25 22:01, Tim Wassink wrote:
> > The ASUS Zenbook 14 (UX3405MA) uses a newer WMI interface for thermal
> > management that does not support the legacy WMI fan control methods.
> > Currently, this results in ENODEV (-19) errors in dmesg when the driver
> > attempts to fetch factory fan curve defaults.
> >
> > Add a quirk to use quirk_asus_ignore_fan to silence these errors and
> > signal that legacy fan control is intentionally unsupported, as thermal
> > policies are handled through the platform_profile interface.
>
> It is my understanding that this patch suppresses the error,
> while maintaining the current behavior in every other aspect,
> correct?
I am actually not sure anymore if this patch is ok, as it introduces a
trade-off regarding telemetry.
While the patch successfully silences the ENODEV (-19) errors, I have
verified locally that it also inhibits the registration of the fan
telemetry in hwmon. This means the read-only 'fan1_input' (RPM) is no
longer available to the user.
I initially followed the precedent of commit 82cc5c6c624c ("platform/x86:
asus-wmi: Ignore fan on E410MA"), which can be found here:
https://lore.kernel.org/all/20221221-asus-fan-v1-2-e07f3949725b@weissschuh.net/
Now I realize that case was specifically for a fanless system. The
UX3405MA does have a physical fan
which remains functional via the platform_profile (AIPT) interface
after this patch, as confirmed by stress testing.
I thought this quirk was the standard way to handle it, but I am not
so sure anymore.
Best regards,
Tim
On Mon, Dec 22, 2025 at 3:54 AM Denis Benato <benato.denis96@...il.com> wrote:
>
>
> On 12/21/25 22:01, Tim Wassink wrote:
> > The ASUS Zenbook 14 (UX3405MA) uses a newer WMI interface for thermal
> > management that does not support the legacy WMI fan control methods.
> > Currently, this results in ENODEV (-19) errors in dmesg when the driver
> > attempts to fetch factory fan curve defaults.
> >
> > Add a quirk to use quirk_asus_ignore_fan to silence these errors and
> > signal that legacy fan control is intentionally unsupported, as thermal
> > policies are handled through the platform_profile interface.
> It is my understanding that this patch suppresses the error,
> while maintaining the current behavior in every other aspect,
> correct?
> > Signed-off-by: Tim Wassink <timwassink.dev@...il.com>
> > ---
> > drivers/platform/x86/asus-nb-wmi.c | 9 +++++++++
> > 1 file changed, 9 insertions(+)
> >
> > diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
> > index 6a62bc5b02fd..eaa8abe506cb 100644
> > --- a/drivers/platform/x86/asus-nb-wmi.c
> > +++ b/drivers/platform/x86/asus-nb-wmi.c
> > @@ -544,6 +544,15 @@ static const struct dmi_system_id asus_quirks[] = {
> > },
> > .driver_data = &quirk_asus_zenbook_duo_kbd,
> > },
> > + {
> > + .callback = dmi_matched,
> > + .ident = "ASUS Zenbook 14 UX3405MA",
> > + .matches = {
> > + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
> > + DMI_MATCH(DMI_PRODUCT_NAME, "UX3405MA"),
> > + },
> > + .driver_data = &quirk_asus_ignore_fan,
> > + },
> > {
> > .callback = dmi_matched,
> > .ident = "ASUS ROG Z13",
Powered by blists - more mailing lists