[PATCH 10/27] wifi: mac80211: isolate driver from inactive links
Johannes Berg
johannes at sipsolutions.net
Thu Jun 15 00:56:55 PDT 2023
On Thu, 2023-06-15 at 10:26 +0800, Wen Gong wrote:
> On 6/15/2023 2:32 AM, Johannes Berg wrote:
> > On Wed, 2023-05-24 at 15:41 +0800, Wen Gong wrote:
> > > May I add a new ops in struct ieee80211_ops? like this:
> > >
> > > u16 active_links(struct ieee80211_hw *hw, struct ieee80211_vif vif, u16
> > > new_links)"
> > >
> > > then ieee80211_set_vif_links_bitmaps() call the ops to get the links for
> > > station and set the sdata->vif.active_links with the return value from
> > > lower driver,
> > > it means lower driver will dynamic select the links count at this moment.
> > >
> > > If lower driver not register ops active_links, then keep current logic.
> > >
> > I guess you can can send patches for whatever you want :)
> >
> > But I have no idea what you're trying to do? Why would you need to have
> > a callback?
>
> Currently driver could use ieee80211_set_active_links_async() to active
> links after connection completed.
Right.
> But I would like to allow driver to select active links in a early time,
> it will be more convenient for driver.
How so? All you have to do is look for the connection becoming
authorized (e.g. sta state for the AP moving to authorized) and then
selecting the links you want. We've already been working on that, it's
really easy?
On the flip-side, it would be highly inconvenient for mac80211 to try to
enable more links *during* the association process, and actually it's
not even allowed by spec until the 4-way-HS finishes. So the earliest
possible time is pretty much when you can just do it in the driver as I
just described.
> > Was this for link selection in the driver? We should have a patch
> > somewhere that adds a BSS_CHANGE flag for when the valid links change,
> > so the driver can select others.
> >
> > johannes
>
> Yes, it is for link selection in driver at a early time before
> connection completed.
This is not really allowed ... At least not without also finding ways to
really transmit the 802.1X and 4-way-HS only on the right link, etc.
> Could you tell detail about how the BSS_CHANGE flag works?😁
The work isn't complete yet, but basically it just calls the callback
whenever the valid_links changed, say by link-reconfiguration.
johannes
More information about the ath11k
mailing list