On Sun, 2024-03-17 at 10:53 +0100, Janusz Dziedzic wrote: > pt., 15 mar 2024 o 19:04 Johannes Berg <johannes@xxxxxxxxxxxxxxxx> napisał(a): > > > > > > > > I see this one do this: > > > if (!ieee80211_verify_sta_eht_mcs_support(sdata, sband, eht_oper)) > > > *conn_flags |= IEEE80211_CONN_DISABLE_EHT; > > > > > > Testing on openwrt and using backports. > > > Is there some patch I can easy cherry-pick to fix it? > > > So far just disable ieee80211_verify_sta_eht_mcs_support() check and > > > BE200 works in EHT mode correctly. > > > > Then either the code there or the AP is broken? > > > > That function checks that the client supports the MCSes that the AP > > requires. If it lets you connect without them, then it's broken. If the > > checks there are wrong, the code is broken :) > > > > I guess you can capture the assoc response frame and we can check > > manually. > Added such dbg: > > printk(KERN_ERR "%d vs %d, %d vs %d\n", > req_rx_nss, have_rx_nss, > req_tx_nss, have_tx_nss); > if (req_rx_nss > have_rx_nss || > req_tx_nss > have_tx_nss) > return false; > > [ 70.243183] ieee80211_verify_sta_eht_mcs_support nss 4 - > (ARRAY_SIZE(req->rx_tx_max_nss)) > [ 70.248336] 4 vs 2, 4 vs 2 > [ 70.251035] disable EHT due to mcs > [ 70.260724] wlan1: send auth to .... > > AP have 4 NSS. Which doesn't just mean it _has_ 4 NSS though, it also means it _clients_ to have 4 NSS, if I'm reading the code correctly? So we correctly don't connect, and the AP incorrectly lets us connect if you hack out the check. Arguably the AP should not even include 4 NSS as the minimum requirement, but of course it can, if it really wants pretty much no client to connect (in EHT) :-) Unless I'm misreading the code, but it looks pretty straight-forward. Check what wireshark says about the EHT operation element? johannes