/*  Hook call by reference pointer. */
        switch  (CmnInfo) {
        /*  Dynamic call by reference pointer. */
-       case    ODM_CMNINFO_BW:
-               pDM_Odm->pBandWidth = (u8 *)pValue;
-               break;
        case    ODM_CMNINFO_CHNL:
                pDM_Odm->pChannel = (u8 *)pValue;
                break;
        u8 EntryCnt = 0;
        u8 i;
 
-       if (*(pDM_Odm->pBandWidth) == ODM_BW40M) {
+       if (pHalData->CurrentChannelBW == HT_CHANNEL_WIDTH_40) {
                if (pHalData->nCur40MhzPrimeSC == 1)
                        pDM_Odm->ControlChannel = *(pDM_Odm->pChannel) - 2;
                else if (pHalData->nCur40MhzPrimeSC == 2)
 void odm_CmnInfoHook_Debug23a(struct dm_odm_t *pDM_Odm)
 {
        ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("odm_CmnInfoHook_Debug23a ==>\n"));
-       ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("pBandWidth =%d\n", *(pDM_Odm->pBandWidth)));
        ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("pChannel =%d\n", *(pDM_Odm->pChannel)));
 
        ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("pbScanInProcess =%d\n", *(pDM_Odm->pbScanInProcess)));
        pOdmRA->LowRSSIThresh = 20;
 }
 
-u32 ODM_Get_Rate_Bitmap23a(struct dm_odm_t *pDM_Odm,
-       u32 macid,
-       u32 ra_mask,
-       u8 rssi_level)
+u32 ODM_Get_Rate_Bitmap23a(struct hal_data_8723a *pHalData, u32 macid,
+                          u32 ra_mask, u8 rssi_level)
 {
+       struct dm_odm_t *pDM_Odm = &pHalData->odmpriv;
        struct sta_info *pEntry;
        u32 rate_bitmap = 0x0fffffff;
        u8 WirelessMode;
                        } else if (rssi_level == DM_RATR_STA_MIDDLE) {
                                rate_bitmap = 0x000ff000;
                        } else {
-                               if (*(pDM_Odm->pBandWidth) == ODM_BW40M)
+                               if (pHalData->CurrentChannelBW ==
+                                   HT_CHANNEL_WIDTH_40)
                                        rate_bitmap = 0x000ff015;
                                else
                                        rate_bitmap = 0x000ff005;
                        } else if (rssi_level == DM_RATR_STA_MIDDLE) {
                                rate_bitmap = 0x0f8ff000;
                        } else {
-                               if (*(pDM_Odm->pBandWidth) == ODM_BW40M)
+                               if (pHalData->CurrentChannelBW ==
+                                   HT_CHANNEL_WIDTH_40)
                                        rate_bitmap = 0x0f8ff015;
                                else
                                        rate_bitmap = 0x0f8ff005;
 
 
        bitmap &= 0x0fffffff;
        if (rssi_level != DM_RATR_STA_INIT)
-               bitmap = ODM_Get_Rate_Bitmap23a(&pHalData->odmpriv, macid, bitmap, rssi_level);
+               bitmap = ODM_Get_Rate_Bitmap23a(pHalData, macid, bitmap,
+                                               rssi_level);
 
        bitmap |= ((raid<<28)&0xf0000000);
 
 
        /*  Pointer reference */
        rtl8723a_odm_support_ability_set(Adapter, DYNAMIC_ALL_FUNC_ENABLE);
 
-       ODM23a_CmnInfoHook(pDM_Odm, ODM_CMNINFO_BW,
-                          &pHalData->CurrentChannelBW);
        ODM23a_CmnInfoHook(pDM_Odm, ODM_CMNINFO_CHNL,
                           &pHalData->CurrentChannel);
        ODM23a_CmnInfoHook(pDM_Odm, ODM_CMNINFO_SCAN, &pmlmepriv->bScanInProcess);
 
 
        /* mask &= 0x0fffffff; */
        rate_bitmap = 0x0fffffff;
-       rate_bitmap = ODM_Get_Rate_Bitmap23a(&pHalData->odmpriv,
-                                         mac_id, mask, rssi_level);
+       rate_bitmap = ODM_Get_Rate_Bitmap23a(pHalData, mac_id, mask,
+                                            rssi_level);
        DBG_8723A("%s => mac_id:%d, networkType:0x%02x, "
                  "mask:0x%08x\n\t ==> rssi_level:%d, rate_bitmap:0x%08x\n",
                  __func__, mac_id, networkType, mask, rssi_level, rate_bitmap);
 
        /*  */
        /*  Dynamic value: */
        /*  */
-       ODM_CMNINFO_BW,                         /*  enum odm_band_width */
        ODM_CMNINFO_CHNL,
 
        ODM_CMNINFO_SCAN,
        ODM_ABOVE               = 2
 };
 
-/*  ODM_CMNINFO_BW */
-enum odm_band_width {
-       ODM_BW20M               = 0,
-       ODM_BW40M               = 1,
-       ODM_BW80M               = 2,
-       ODM_BW160M              = 3,
-       ODM_BW10M               = 4,
-};
-
 /*  ODM_CMNINFO_CHNL */
 
 /*  ODM_CMNINFO_BOARD_TYPE */
        bool                    bool_temp;
        struct rtw_adapter      *PADAPTER_temp;
 
-       /*  BW info 20M/40M/80M = 0/1/2 */
-       u8                      *pBandWidth;
        /*  Central channel location Ch1/Ch2/.... */
        u8                      *pChannel;      /* central channel number */
        /*  Common info for Status */
 #define SWAW_STEP_PEAK         0
 #define SWAW_STEP_DETERMINE    1
 
+struct hal_data_8723a;
+
 void ODM_Write_DIG23a(struct dm_odm_t *pDM_Odm,        u8      CurrentIGI);
 void ODM_Write_CCK_CCA_Thres23a(struct dm_odm_t *pDM_Odm, u8   CurCCK_CCAThres);
 
 
 void odm_DIG23abyRSSI_LPS(struct dm_odm_t *pDM_Odm);
 
-u32 ODM_Get_Rate_Bitmap23a(struct dm_odm_t *pDM_Odm, u32 macid, u32 ra_mask, u8 rssi_level);
+u32 ODM_Get_Rate_Bitmap23a(struct hal_data_8723a *pHalData, u32 macid, u32 ra_mask, u8 rssi_level);
 
 
 void ODM23a_DMInit(struct dm_odm_t *pDM_Odm);
 
-struct hal_data_8723a;
 void ODM_DMWatchdog23a(struct hal_data_8723a *pHalData);
 
 void ODM_CmnInfoInit23a(struct dm_odm_t *pDM_Odm, enum odm_cmninfo     CmnInfo, u32 Value);