staging: wfx: set all parameters before starting AP
authorJérôme Pouiller <jerome.pouiller@silabs.com>
Fri, 10 Apr 2020 13:32:25 +0000 (15:32 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Apr 2020 12:42:38 +0000 (14:42 +0200)
Current code start AP and then configure the different parameters. Since
all the configuration is sent quickly after AP started, it works.
However, it is not very nice. In add, last firmware releases start to
disallow incorrect settings.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Link: https://lore.kernel.org/r/20200410133239.438347-6-Jerome.Pouiller@silabs.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wfx/sta.c

index 92bf317b57bbb6039bfe27753b601e507f434a36..1e7ff2ba33d83a892c921e42ae7475cc9068ea2d 100644 (file)
@@ -604,7 +604,6 @@ int wfx_start_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
 {
        struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv;
 
-       hif_start(wvif, &vif->bss_conf, wvif->channel);
        wfx_upload_keys(wvif);
        if (wvif_count(wvif->wdev) <= 1)
                hif_set_block_ack_policy(wvif, 0xFF, 0xFF);
@@ -612,6 +611,7 @@ int wfx_start_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
        wfx_update_filtering(wvif);
        wfx_upload_ap_templates(wvif);
        wfx_fwd_probe_req(wvif, false);
+       hif_start(wvif, &vif->bss_conf, wvif->channel);
        return 0;
 }