rtlwifi: rtl8192c-common: rtl8192se: rtl8192de: Simplify if statements
authorLarry Finger <Larry.Finger@lwfinger.net>
Thu, 9 Feb 2012 02:56:52 +0000 (20:56 -0600)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 22 Feb 2012 19:47:38 +0000 (14:47 -0500)
Devendra Naga <devendra.aaru@gmail.com> submitted a patch for rtl8192c_common
to change the tests in _rtl92c_store_pwrIndex_diffrate_offset(). This patch
improves on those changes and applies similar modifications to drivers rtl8192se
and rtl8192de.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c
drivers/net/wireless/rtlwifi/rtl8192de/phy.c
drivers/net/wireless/rtlwifi/rtl8192se/phy.c

index a76b22387e3de7afa970841a5f95577557c74b57..cdd71f5e77ac8d0b6cfd662806baf9e8e399b6f1 100644 (file)
@@ -253,121 +253,51 @@ void _rtl92c_store_pwrIndex_diffrate_offset(struct ieee80211_hw *hw,
 {
        struct rtl_priv *rtlpriv = rtl_priv(hw);
        struct rtl_phy *rtlphy = &(rtlpriv->phy);
+       int index;
+
+       if (regaddr == RTXAGC_A_RATE18_06)
+               index = 0;
+       else if (regaddr == RTXAGC_A_RATE54_24)
+               index = 1;
+       else if (regaddr == RTXAGC_A_CCK1_MCS32)
+               index = 6;
+       else if (regaddr == RTXAGC_B_CCK11_A_CCK2_11 && bitmask == 0xffffff00)
+               index = 7;
+       else if (regaddr == RTXAGC_A_MCS03_MCS00)
+               index = 2;
+       else if (regaddr == RTXAGC_A_MCS07_MCS04)
+               index = 3;
+       else if (regaddr == RTXAGC_A_MCS11_MCS08)
+               index = 4;
+       else if (regaddr == RTXAGC_A_MCS15_MCS12)
+               index = 5;
+       else if (regaddr == RTXAGC_B_RATE18_06)
+               index = 8;
+       else if (regaddr == RTXAGC_B_RATE54_24)
+               index = 9;
+       else if (regaddr == RTXAGC_B_CCK1_55_MCS32)
+               index = 14;
+       else if (regaddr == RTXAGC_B_CCK11_A_CCK2_11 && bitmask == 0x000000ff)
+               index = 15;
+       else if (regaddr == RTXAGC_B_MCS03_MCS00)
+               index = 10;
+       else if (regaddr == RTXAGC_B_MCS07_MCS04)
+               index = 11;
+       else if (regaddr == RTXAGC_B_MCS11_MCS08)
+               index = 12;
+       else if (regaddr == RTXAGC_B_MCS15_MCS12)
+               index = 13;
+       else
+               return;
 
-       if (regaddr == RTXAGC_A_RATE18_06) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][0] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][0] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][0]);
-       }
-       if (regaddr == RTXAGC_A_RATE54_24) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][1] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][1] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][1]);
-       }
-       if (regaddr == RTXAGC_A_CCK1_MCS32) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][6] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][6] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][6]);
-       }
-       if (regaddr == RTXAGC_B_CCK11_A_CCK2_11 && bitmask == 0xffffff00) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][7] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][7] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][7]);
-       }
-       if (regaddr == RTXAGC_A_MCS03_MCS00) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][2] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][2] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][2]);
-       }
-       if (regaddr == RTXAGC_A_MCS07_MCS04) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][3] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][3] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][3]);
-       }
-       if (regaddr == RTXAGC_A_MCS11_MCS08) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][4] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][4] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][4]);
-       }
-       if (regaddr == RTXAGC_A_MCS15_MCS12) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][5] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][5] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][5]);
-       }
-       if (regaddr == RTXAGC_B_RATE18_06) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][8] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][8] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][8]);
-       }
-       if (regaddr == RTXAGC_B_RATE54_24) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][9] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][9] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][9]);
-       }
-       if (regaddr == RTXAGC_B_CCK1_55_MCS32) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][14] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][14] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][14]);
-       }
-       if (regaddr == RTXAGC_B_CCK11_A_CCK2_11 && bitmask == 0x000000ff) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][15] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][15] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][15]);
-       }
-       if (regaddr == RTXAGC_B_MCS03_MCS00) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][10] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][10] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][10]);
-       }
-       if (regaddr == RTXAGC_B_MCS07_MCS04) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][11] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][11] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][11]);
-       }
-       if (regaddr == RTXAGC_B_MCS11_MCS08) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][12] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][12] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][12]);
-       }
-       if (regaddr == RTXAGC_B_MCS15_MCS12) {
-               rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][13] = data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][13] = 0x%x\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][13]);
+       rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][index] = data;
+       RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
+                "MCSTxPowerLevelOriginalOffset[%d][%d] = 0x%x\n",
+                rtlphy->pwrgroup_cnt, index,
+                rtlphy->MCS_TXPWR[rtlphy->pwrgroup_cnt][index]);
 
+       if (index == 13)
                rtlphy->pwrgroup_cnt++;
-       }
 }
 EXPORT_SYMBOL(_rtl92c_store_pwrIndex_diffrate_offset);
 
index 9581a19c2548cb523ccb7e3a4f06e184e348a592..96dc71746eaab9c3f2a2fd2380b0efcfe3d5c711 100644 (file)
@@ -665,152 +665,51 @@ static void _rtl92d_store_pwrindex_diffrate_offset(struct ieee80211_hw *hw,
 {
        struct rtl_priv *rtlpriv = rtl_priv(hw);
        struct rtl_phy *rtlphy = &(rtlpriv->phy);
+       int index;
+
+       if (regaddr == RTXAGC_A_RATE18_06)
+               index = 0;
+       else if (regaddr == RTXAGC_A_RATE54_24)
+               index = 1;
+       else if (regaddr == RTXAGC_A_CCK1_MCS32)
+               index = 6;
+       else if (regaddr == RTXAGC_B_CCK11_A_CCK2_11 && bitmask == 0xffffff00)
+               index = 7;
+       else if (regaddr == RTXAGC_A_MCS03_MCS00)
+               index = 2;
+       else if (regaddr == RTXAGC_A_MCS07_MCS04)
+               index = 3;
+       else if (regaddr == RTXAGC_A_MCS11_MCS08)
+               index = 4;
+       else if (regaddr == RTXAGC_A_MCS15_MCS12)
+               index = 5;
+       else if (regaddr == RTXAGC_B_RATE18_06)
+               index = 8;
+       else if (regaddr == RTXAGC_B_RATE54_24)
+               index = 9;
+       else if (regaddr == RTXAGC_B_CCK1_55_MCS32)
+               index = 14;
+       else if (regaddr == RTXAGC_B_CCK11_A_CCK2_11 && bitmask == 0x000000ff)
+               index = 15;
+       else if (regaddr == RTXAGC_B_MCS03_MCS00)
+               index = 10;
+       else if (regaddr == RTXAGC_B_MCS07_MCS04)
+               index = 11;
+       else if (regaddr == RTXAGC_B_MCS11_MCS08)
+               index = 12;
+       else if (regaddr == RTXAGC_B_MCS15_MCS12)
+               index = 13;
+       else
+               return;
 
-       if (regaddr == RTXAGC_A_RATE18_06) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][0] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][0] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][0]);
-       }
-       if (regaddr == RTXAGC_A_RATE54_24) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][1] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][1] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][1]);
-       }
-       if (regaddr == RTXAGC_A_CCK1_MCS32) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][6] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][6] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][6]);
-       }
-       if (regaddr == RTXAGC_B_CCK11_A_CCK2_11 && bitmask == 0xffffff00) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][7] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][7] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][7]);
-       }
-       if (regaddr == RTXAGC_A_MCS03_MCS00) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][2] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][2] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][2]);
-       }
-       if (regaddr == RTXAGC_A_MCS07_MCS04) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][3] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][3] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][3]);
-       }
-       if (regaddr == RTXAGC_A_MCS11_MCS08) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][4] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][4] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][4]);
-       }
-       if (regaddr == RTXAGC_A_MCS15_MCS12) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][5] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][5] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][5]);
-       }
-       if (regaddr == RTXAGC_B_RATE18_06) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][8] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][8] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][8]);
-       }
-       if (regaddr == RTXAGC_B_RATE54_24) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][9] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][9] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][9]);
-       }
-       if (regaddr == RTXAGC_B_CCK1_55_MCS32) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][14] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][14] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][14]);
-       }
-       if (regaddr == RTXAGC_B_CCK11_A_CCK2_11 && bitmask == 0x000000ff) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][15] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][15] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][15]);
-       }
-       if (regaddr == RTXAGC_B_MCS03_MCS00) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][10] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][10] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][10]);
-       }
-       if (regaddr == RTXAGC_B_MCS07_MCS04) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][11] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][11] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][11]);
-       }
-       if (regaddr == RTXAGC_B_MCS11_MCS08) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][12] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][12] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][12]);
-       }
-       if (regaddr == RTXAGC_B_MCS15_MCS12) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][13] =
-                                                                        data;
-               RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
-                        "MCSTxPowerLevelOriginalOffset[%d][13] = 0x%ulx\n",
-                        rtlphy->pwrgroup_cnt,
-                        rtlphy->mcs_txpwrlevel_origoffset
-                        [rtlphy->pwrgroup_cnt][13]);
+       rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][index] = data;
+       RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE,
+                "MCSTxPowerLevelOriginalOffset[%d][%d] = 0x%ulx\n",
+                rtlphy->pwrgroup_cnt, index,
+                rtlphy->mcs_txpwrlevel_origoffset
+                [rtlphy->pwrgroup_cnt][index]);
+       if (index == 13)
                rtlphy->pwrgroup_cnt++;
-       }
 }
 
 static bool _rtl92d_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw,
index 05b4e2790e994cc44640aafef15162a81bf0cae2..6d5bbd0e4d3855c44315179052adfd8f7325f6e8 100644 (file)
@@ -678,30 +678,28 @@ static void _rtl92s_store_pwrindex_diffrate_offset(struct ieee80211_hw *hw,
 {
        struct rtl_priv *rtlpriv = rtl_priv(hw);
        struct rtl_phy *rtlphy = &(rtlpriv->phy);
+       int index;
 
        if (reg_addr == RTXAGC_RATE18_06)
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][0] =
-                                                                        data;
-       if (reg_addr == RTXAGC_RATE54_24)
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][1] =
-                                                                        data;
-       if (reg_addr == RTXAGC_CCK_MCS32)
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][6] =
-                                                                        data;
-       if (reg_addr == RTXAGC_MCS03_MCS00)
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][2] =
-                                                                        data;
-       if (reg_addr == RTXAGC_MCS07_MCS04)
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][3] =
-                                                                        data;
-       if (reg_addr == RTXAGC_MCS11_MCS08)
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][4] =
-                                                                        data;
-       if (reg_addr == RTXAGC_MCS15_MCS12) {
-               rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][5] =
-                                                                        data;
+               index = 0;
+       else if (reg_addr == RTXAGC_RATE54_24)
+               index = 1;
+       else if (reg_addr == RTXAGC_CCK_MCS32)
+               index = 6;
+       else if (reg_addr == RTXAGC_MCS03_MCS00)
+               index = 2;
+       else if (reg_addr == RTXAGC_MCS07_MCS04)
+               index = 3;
+       else if (reg_addr == RTXAGC_MCS11_MCS08)
+               index = 4;
+       else if (reg_addr == RTXAGC_MCS15_MCS12)
+               index = 5;
+       else
+               return;
+
+       rtlphy->mcs_txpwrlevel_origoffset[rtlphy->pwrgroup_cnt][index] = data;
+       if (index == 5)
                rtlphy->pwrgroup_cnt++;
-       }
 }
 
 static void _rtl92s_phy_init_register_definition(struct ieee80211_hw *hw)