Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx> writes: > The WF200 allow to start two network interfaces (one AP, one station) on > two different channels. Since magic does not exist, it only works if the > station interface enables power save. > > Thus, the driver detects this case and enforce power save as necessary. > > This patch fixes the case where the AP interface is stopped and it is no > more necessary to enforce power saving on the station interface. > > Signed-off-by: Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx> > --- > drivers/net/wireless/silabs/wfx/sta.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/net/wireless/silabs/wfx/sta.c b/drivers/net/wireless/silabs/wfx/sta.c > index 626dfb4b7a55d..9c0a11c277e97 100644 > --- a/drivers/net/wireless/silabs/wfx/sta.c > +++ b/drivers/net/wireless/silabs/wfx/sta.c > @@ -402,7 +402,12 @@ void wfx_stop_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif, > struct ieee80211_bss_conf *link_conf) > { > struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; > + struct wfx_dev *wdev = wvif->wdev; > > + wvif = NULL; > + while ((wvif = wvif_iterate(wdev, wvif)) != NULL) > + wfx_update_pm(wvif); Isn't the assignment of wvif to NULL unnecessary as in the next line we assign it to again? -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches