summaryrefslogtreecommitdiffstats
path: root/net/mac80211/link.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* wifi: mac80211: recalc station aggregate data during link switchJohannes Berg2022-10-071-0/+17
| | | | | | | During link switching, the active links change, so we need to recalculate the aggregate data in the stations. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
* wifi: mac80211: implement link switchingJohannes Berg2022-09-061-0/+171
| | | | | | | | | | | Implement an API function and debugfs file to switch active links. Also provide an async version of the API so drivers can call it in arbitrary contexts, e.g. while in the authorized callback. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
* wifi: mac80211: isolate driver from inactive linksJohannes Berg2022-09-061-13/+53
| | | | | | | | | | | | | | | | | | | | In order to let the driver select active links and properly make multi-link connections, as a first step isolate the driver from inactive links, and set the active links to be only the association link for client-side interfaces. For AP side nothing changes since APs always have to have all their links active. To simplify things, update the for_each_sta_active_link() API to include the appropriate vif pointer. This also implies not allocating a chanctx for an inactive link, which requires a few more changes. Since we now no longer try to program multiple links to the driver, remove the check in the MLME code. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
* wifi: mac80211: move link code to a new fileJohannes Berg2022-09-031-0/+262
We probably should've done that originally, we already have about 300 lines of code there, and will add more. Move all the link code we wrote to a new file. Signed-off-by: Johannes Berg <johannes.berg@intel.com>