diff options
Diffstat (limited to 'drivers/staging/rtl8188eu/hal/usb_halinit.c')
-rw-r--r-- | drivers/staging/rtl8188eu/hal/usb_halinit.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/drivers/staging/rtl8188eu/hal/usb_halinit.c b/drivers/staging/rtl8188eu/hal/usb_halinit.c index 3675edb..674ac53 100644 --- a/drivers/staging/rtl8188eu/hal/usb_halinit.c +++ b/drivers/staging/rtl8188eu/hal/usb_halinit.c @@ -337,6 +337,7 @@ static void _InitTransferPageSize(struct adapter *Adapter) /* Tx page size is always 128. */ u8 value8; + value8 = _PSRX(PBP_128) | _PSTX(PBP_128); usb_write8(Adapter, REG_PBP, value8); } @@ -1361,6 +1362,7 @@ void rtw_hal_set_hwreg(struct adapter *Adapter, u8 variable, u8 *val) if (*((u8 *)val)) { /* under sitesurvey */ /* config RCR to receive different BSSID & not to receive data frame */ u32 v = usb_read32(Adapter, REG_RCR); + v &= ~(RCR_CBSSID_BCN); usb_write32(Adapter, REG_RCR, v); /* reject all data frame */ @@ -1514,6 +1516,7 @@ void rtw_hal_set_hwreg(struct adapter *Adapter, u8 variable, u8 *val) case HW_VAR_CAM_WRITE: { u32 cmd; + u32 *cam_val = (u32 *)val; usb_write32(Adapter, WCAMI, cam_val[0]); @@ -1618,6 +1621,7 @@ void rtw_hal_set_hwreg(struct adapter *Adapter, u8 variable, u8 *val) case HW_VAR_RXDMA_AGG_PG_TH: { u8 threshold = *((u8 *)val); + if (threshold == 0) threshold = haldata->UsbRxAggPageCount; usb_write8(Adapter, REG_RXDMA_AGG_PG_TH, threshold); @@ -1639,6 +1643,7 @@ void rtw_hal_set_hwreg(struct adapter *Adapter, u8 variable, u8 *val) case HW_VAR_H2C_FW_JOINBSSRPT: { u8 mstatus = (*(u8 *)val); + rtl8188e_set_FwJoinBssReport_cmd(Adapter, mstatus); } break; @@ -1661,6 +1666,7 @@ void rtw_hal_set_hwreg(struct adapter *Adapter, u8 variable, u8 *val) case HW_VAR_RPT_TIMER_SETTING: { u16 min_rpt_time = (*(u16 *)val); + ODM_RA_Set_TxRPT_Time(podmpriv, min_rpt_time); } break; @@ -1717,6 +1723,7 @@ void rtw_hal_set_hwreg(struct adapter *Adapter, u8 variable, u8 *val) case HW_VAR_TX_RPT_MAX_MACID: { u8 maxMacid = *val; + DBG_88E("### MacID(%d),Set Max Tx RPT MID(%d)\n", maxMacid, maxMacid+1); usb_write8(Adapter, REG_TX_RPT_CTRL+1, maxMacid+1); } @@ -1745,9 +1752,6 @@ void rtw_hal_get_hwreg(struct adapter *Adapter, u8 variable, u8 *val) /* BCN_VALID, BIT16 of REG_TDECTRL = BIT0 of REG_TDECTRL+2 */ val[0] = (BIT(0) & usb_read8(Adapter, REG_TDECTRL+2)) ? true : false; break; - case HW_VAR_RF_TYPE: - val[0] = RF_1T1R; - break; case HW_VAR_FWLPS_RF_ON: { /* When we halt NIC, we should check if FW LPS is leave. */ @@ -1757,6 +1761,7 @@ void rtw_hal_get_hwreg(struct adapter *Adapter, u8 variable, u8 *val) val[0] = true; } else { u32 valRCR; + valRCR = usb_read32(Adapter, REG_RCR); valRCR &= 0x00070000; if (valRCR) @@ -1802,6 +1807,7 @@ u8 rtw_hal_get_def_var( struct mlme_priv *pmlmepriv = &Adapter->mlmepriv; struct sta_priv *pstapriv = &Adapter->stapriv; struct sta_info *psta; + psta = rtw_get_stainfo(pstapriv, pmlmepriv->cur_network.network.MacAddress); if (psta) *((int *)pValue) = psta->rssi_stat.UndecoratedSmoothedPWDB; @@ -1828,18 +1834,21 @@ u8 rtw_hal_get_def_var( case HAL_DEF_RA_DECISION_RATE: { u8 MacID = *((u8 *)pValue); + *((u8 *)pValue) = ODM_RA_GetDecisionRate_8188E(&haldata->odmpriv, MacID); } break; case HAL_DEF_RA_SGI: { u8 MacID = *((u8 *)pValue); + *((u8 *)pValue) = ODM_RA_GetShortGI_8188E(&haldata->odmpriv, MacID); } break; case HAL_DEF_PT_PWR_STATUS: { u8 MacID = *((u8 *)pValue); + *((u8 *)pValue) = ODM_RA_GetHwPwrStatus_8188E(&haldata->odmpriv, MacID); } break; @@ -1849,6 +1858,7 @@ u8 rtw_hal_get_def_var( case HW_DEF_RA_INFO_DUMP: { u8 entry_id = *((u8 *)pValue); + if (check_fwstate(&Adapter->mlmepriv, _FW_LINKED)) { DBG_88E("============ RA status check ===================\n"); DBG_88E("Mac_id:%d , RateID = %d, RAUseRate = 0x%08x, RateSGI = %d, DecisionRate = 0x%02x ,PTStage = %d\n", @@ -1864,6 +1874,7 @@ u8 rtw_hal_get_def_var( case HW_DEF_ODM_DBG_FLAG: { struct odm_dm_struct *dm_ocm = &haldata->odmpriv; + pr_info("dm_ocm->DebugComponents = 0x%llx\n", dm_ocm->DebugComponents); } break; |