wpa_supplicant broken with libertas driver since 2.7 (hacky fixes included)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I've been playing with an older Marvell 88W8686 802.11g WiFi chipset and
getting it working with newer versions of the Linux kernel and
wpa_supplicant. It uses the libertas driver in the kernel. I ran into
several problems getting it to work with newer versions of
wpa_supplicant. I was able to patch them all and get it to work, but I'm
not sure what the "correct" fix is and was hoping for some guidance on
how to fix these properly.

I did a bunch of bisecting and found the following issues:

1) In 2.7, commit 065c029a55955feac56d6537778233da0074d27b "Remove MBO
   dependency from Supported Operating Classes element" causes me to get
   rejected by my APs (both an Asus router and iPhone hotspot)

wlan0: Event ASSOC_REJECT (12) received
wlan0: CTRL-EVENT-ASSOC-REJECT bssid=xx:xx:xx:xx:xx:xx status_code=1

I worked around this one temporarily by commenting out the call to
wpas_supp_op_class_ie() in wpas_populate_assoc_ies(). I am not
experienced enough to understand if this is a driver issue or something
deeper, but ensuring the op class IEs don't get added fixes it.

This fixes it up until version 2.10, which adds more problems:

2) In 2.10, two commits adding SCS and MSCS support cause the exact same
   issue (rejected by both of my APs with the same error as above):

a118047245b0861acdf6a9f8410237705f12d995:
    "MSCS: Add support to send MSCS Request frames"
c005283c48c189752c18d68d6cebaaa02e64c155
    "SCS: Sending of SCS Request frames"

I worked around these temporarily by commenting out the new bits being
set in wpas_ext_capab_byte from these two new commits.

3) This still doesn't fix 2.10 with libertas, because libertas is also
   affected by the same issue in 2.10 that others have already fixed for
   the broadcom-wl adapters, where wpa_supplicant is trying to install
   more scan IEs than are supported, and just prints this repeatedly as
   soon as it opens up:

wlan0: CTRL-EVENT-SCAN-FAILED ret=-22 retry=1
wlan0: CTRL-EVENT-SCAN-FAILED ret=-22 retry=1
...

This patch already posted earlier this year by David Bauer fixes this
final issue:

http://lists.infradead.org/pipermail/hostap/2022-January/040185.html

With these three problems fixed, wpa_supplicant once again works fine
with the libertas driver. Obviously commenting these new things out
fixes it for me in this one situation, but I'm unsure of what the actual
fix should be. Are the operating class IE and SCS/MSCS bits only
supposed to be added on newer 802.11n chipsets that support more
features?

Thanks!
Doug

_______________________________________________
Hostap mailing list
Hostap@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/hostap



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux