wifi: brcmsmac: LCN PHY code is used for BCM4313 2G-only device
authorSamasth Norway Ananda <samasth.norway.ananda@oracle.com>
Thu, 9 May 2024 23:10:37 +0000 (16:10 -0700)
committerKalle Valo <kvalo@kernel.org>
Tue, 14 May 2024 13:31:37 +0000 (16:31 +0300)
The band_idx variable in the function wlc_lcnphy_tx_iqlo_cal() will
never be set to 1 as BCM4313 is the only device for which the LCN PHY
code is used. This is a 2G-only device.

Fixes: 5b435de0d786 ("net: wireless: add brcm80211 drivers")
Signed-off-by: Samasth Norway Ananda <samasth.norway.ananda@oracle.com>
Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://msgid.link/20240509231037.2014109-1-samasth.norway.ananda@oracle.com
drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_lcn.c

index aae2cf95fe9588ce2f1045798dac9c0d77684b60..e472591f321bdf7775b91369050a3f3d0949c1df 100644 (file)
@@ -2567,7 +2567,6 @@ wlc_lcnphy_tx_iqlo_cal(struct brcms_phy *pi,
 
        struct lcnphy_txgains cal_gains, temp_gains;
        u16 hash;
-       u8 band_idx;
        int j;
        u16 ncorr_override[5];
        u16 syst_coeffs[] = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -2599,6 +2598,9 @@ wlc_lcnphy_tx_iqlo_cal(struct brcms_phy *pi,
        u16 *values_to_save;
        struct brcms_phy_lcnphy *pi_lcn = pi->u.pi_lcnphy;
 
+       if (WARN_ON(CHSPEC_IS5G(pi->radio_chanspec)))
+               return;
+
        values_to_save = kmalloc_array(20, sizeof(u16), GFP_ATOMIC);
        if (NULL == values_to_save)
                return;
@@ -2662,20 +2664,18 @@ wlc_lcnphy_tx_iqlo_cal(struct brcms_phy *pi,
        hash = (target_gains->gm_gain << 8) |
               (target_gains->pga_gain << 4) | (target_gains->pad_gain);
 
-       band_idx = (CHSPEC_IS5G(pi->radio_chanspec) ? 1 : 0);
-
        cal_gains = *target_gains;
        memset(ncorr_override, 0, sizeof(ncorr_override));
-       for (j = 0; j < iqcal_gainparams_numgains_lcnphy[band_idx]; j++) {
-               if (hash == tbl_iqcal_gainparams_lcnphy[band_idx][j][0]) {
+       for (j = 0; j < iqcal_gainparams_numgains_lcnphy[0]; j++) {
+               if (hash == tbl_iqcal_gainparams_lcnphy[0][j][0]) {
                        cal_gains.gm_gain =
-                               tbl_iqcal_gainparams_lcnphy[band_idx][j][1];
+                               tbl_iqcal_gainparams_lcnphy[0][j][1];
                        cal_gains.pga_gain =
-                               tbl_iqcal_gainparams_lcnphy[band_idx][j][2];
+                               tbl_iqcal_gainparams_lcnphy[0][j][2];
                        cal_gains.pad_gain =
-                               tbl_iqcal_gainparams_lcnphy[band_idx][j][3];
+                               tbl_iqcal_gainparams_lcnphy[0][j][3];
                        memcpy(ncorr_override,
-                              &tbl_iqcal_gainparams_lcnphy[band_idx][j][3],
+                              &tbl_iqcal_gainparams_lcnphy[0][j][3],
                               sizeof(ncorr_override));
                        break;
                }