For what it's worth, I did some digging into the linux kernel source; I
don't know how to compile a kernel properly yet though haha so actual
scientific debugging will be a bit ways away.

(All code is for kernel 6.13.7)

But basically in asus-wmi.c:2036 you see these lines in
`asus_rfkill_set`

```
if ((dev_id == ASUS_WMI_DEVID_WLAN) &&
     priv->asus->driver->wlan_ctrl_by_user)
    dev_id = ASUS_WMI_DEVID_WLAN_LED;
```

Huh???? So the wifi switch is implicitly dependent on reading a wifi
WLAN LED? But what if your laptop doesn't have it?

For me, when asus_nb_wmi is enabled, even sudo rfkill unblock all
doesn't undo the softblock. I think this explains why - the messages are
being silently redirected then cast into the void.

ALL DISCLAIMERS: I know 0 actual hardware knowledge. The maintainers did
this for a reason back then, and I don't know why - I'll try my best to
learn more about it but it'll be quite some time.

NOR have I confirmed that a debug message is generated (e.g. that this
is ACTUALLY the bug) - I think for example, in asus_wmi.c:340 there
should be an ACPI failure because you try to write to WLAN_LED when it
doesn't exist.

---

In the meantime, a good way to test this theory less rigorously is:

- Can you successfully load asus_nb_wmi and asus_wmi modules? If YES:

- your laptop SHOULD have a wifi soft kill switch
- your wifi switch HAS any kind of LED indicator $IFF$ [your wifi works, and 
something like `sudo rfkill unblock all` actually fixes the wifi]

Both of these conditions must hold true for my theory to be true.
Otherwise my theory is wrong.

-----

This could be complete fanfiction, since I didn't actually, well, run
the kernel in debug mode and verify that yes, asus_wmi.c:340 is throwing
errors because you're trying to write to WLAN_LED when it doesn't exist.
But I'm just throwing out ideas, hopefully getting the ball moving on
this issue. It really is bugging me that I have to reload and unload the
module every time I want to change my backlight at night, for example.

For anyone else coming in to this thread and reporting this issue, I
think it would be helpful to go through this theory and report back
results on your own, and try to prove/disprove it. Specifically go
through each part of the flowchart (it's 3 if statements!) and determine
whether or not the theory was disproven.

----

And I would like to clarify that this is NOT a wifi driver issue. Across
ubuntu, NixOS, and Arch, wifi drivers (even for wifi 7) worked perfectly
for me. The ONLY thing I had to change was remove the asus_nb_wmi
module, and from there, wifi worked.

However, rfkill unblock all, unblocks everything, inclduing the physical
phy0 lan, but NOT the asus_wlan. I think this may be why - the silent
redirection.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2092283

Title:
   wifi soft blocked by asus_nb_wmi on asus vivobook s14 oled Q423SA

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2092283/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to