wifi: brcmfmac: move feature overrides before feature_disable
authorArend van Spriel <arend.vanspriel@broadcom.com>
Wed, 3 Jan 2024 09:57:03 +0000 (10:57 +0100)
committerKalle Valo <kvalo@kernel.org>
Fri, 19 Jan 2024 17:28:27 +0000 (19:28 +0200)
The feature_disable option in brcmf_feat_attach() is a debugging or
workaround option to disable features that cause driver issues. Hence
they should be done as last step after all feature detection mechanisms
have been completed.

Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://msgid.link/20240103095704.135651-4-arend.vanspriel@broadcom.com
drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c

index 7fef93ede0fb30d2c230ae0032a8fe39ee5fe52c..f23310a77a5d11fd7438ff0fb324a56238b5c4ee 100644 (file)
@@ -340,6 +340,9 @@ void brcmf_feat_attach(struct brcmf_pub *drvr)
        brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_FWSUP, "sup_wpa");
        brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_SCAN_V2, "scan_ver");
 
+       brcmf_feat_wlc_version_overrides(drvr);
+       brcmf_feat_firmware_overrides(drvr);
+
        brcmf_fwvid_feat_attach(ifp);
 
        if (drvr->settings->feature_disable) {
@@ -349,9 +352,6 @@ void brcmf_feat_attach(struct brcmf_pub *drvr)
                ifp->drvr->feat_flags &= ~drvr->settings->feature_disable;
        }
 
-       brcmf_feat_wlc_version_overrides(drvr);
-       brcmf_feat_firmware_overrides(drvr);
-
        /* set chip related quirks */
        switch (drvr->bus_if->chip) {
        case BRCM_CC_43236_CHIP_ID: