Hi David, On Wed, Apr 24, 2024 at 7:40 PM David Lin <yu-hao.lin@xxxxxxx> wrote: > > From: Marcel Holtmann <marcel@xxxxxxxxxxxx> > > > > Hi David, > > > > > Johannes agreed that cfg80211 is the correct way for the development > > > of mwifiex > > > (mac80211 can't offload association process to driver/FW). > > > > that was never my question here. > > > > This is previous topic discussed with Johannes to confirm cfg80211 is correct decision for NXP FW. To be clear: external_auth() is a cfg80211 feature. So this part of your response still isn't very relevant. > > > This patch is used to fully leverage SME of wpa_supplicant and hostapd > > which can complete the missing WPA3 feature of mwifiex. > > > The patch series had been reviewed and discussed. It looks like there is no > > more comments for patch v10. > > > I wonder can patch v10 be accepted by you? > > > > If your hardware is a FullMac hardware then what is the point in now > > separating auth/assoc out. Is this done just for WPA3 or also for WPA2/WPA1. > > Yes. Our FW can's support WPA3, so this patch is used to hook separating auth/assoc to > leverage SME of wpa_supplicant and hostapd. WPA2 is also handled by SME of > wpa_supplicant and hostapd. > > > Are you no longer a FullMac hardware? > > You can check previous discussion with Johannes, FW still needs to involve association > process, so mac80211 is not suitable for NXP FW. For the record, that's the v9 thread, around here: https://lore.kernel.org/all/7a08dbcaded25ec0d32865647d571afbd66062fe.camel@xxxxxxxxxxxxxxxx/ > > You keep saying that you just want to support WPA3 and if previously the HW > > worked as FullMac hardware, then external_auth should be the way to go for > > having SAE handled by wpa_supplicant (or iwd for that matter). > > Although external_auth is one way to support SAE, but we think hook separating auth/assoc will > be the better way to resolve this issue. In this way, offloading SME to wpa_supplicant/hostpad will > let any future changes be easy to support (we only need to check if there is anything that we should > do when converting association request to the association command supported by FW). Perhaps I'm missing something (very likely), but I don't immediately see much difference (with respect to your FW API, and future extensibility) between external_auth() and your current solution (of intercepting auth()/assoc() and constructing your own AUTH frames). It mostly just means the AUTH mgmt frames will be coming in via NL80211_CMD_FRAME instead of being manually constructed within your .auth() hook. The external_auth() approach actually looks *more* natural than your current solution. How exactly does your solution make "future changes [easier] to support [than with external_auth]"? Do you not trust that wpa_supplicant will provide exactly the right NL80211_CMD_FRAME content you're looking for, and you need to tweak it to make your firmware happy? You're talking in extreme generality, which doesn't make it easy for me (and presumably Marcel) to understand why you're choosing one solution and rejecting another preexisting one. > > Now if you are fully embracing to auth/assoc and we can remove the support > > for the connect ops, then lets do it. However I don’t see anything properly > > described in the commit message. You keep saying WPA3 support and nothing > > else explain what the new Key V2 API of the firmware would do. > > We give a flag to let user to decide to use connect ops or separating auth/assoc. We will remove > connect ops for our new nxpwifi driver. New key V2 API supports more key solutions. To add to this: AFAIK, you don't even have "v2 API" firmware published for all chips that mwifiex currently supports, so even if we wanted to completely convert this driver, we can't do that today. Brian