diff options
Diffstat (limited to 'drivers/staging/rtl8723au/include')
34 files changed, 61 insertions, 567 deletions
diff --git a/drivers/staging/rtl8723au/include/Hal8723APhyCfg.h b/drivers/staging/rtl8723au/include/Hal8723APhyCfg.h index 299598b53876..688f20412bca 100644 --- a/drivers/staging/rtl8723au/include/Hal8723APhyCfg.h +++ b/drivers/staging/rtl8723au/include/Hal8723APhyCfg.h @@ -224,7 +224,6 @@ SetAntennaConfig92C(struct rtw_adapter *Adapter, u8 DefaultAnt); /* MAC/BB/RF HAL config */ int PHY_BBConfig8723A(struct rtw_adapter *Adapter); -int PHY_RFConfig8723A(struct rtw_adapter *Adapter); s32 PHY_MACConfig8723A(struct rtw_adapter *padapter); #endif diff --git a/drivers/staging/rtl8723au/include/HalHWImg8723A_BB.h b/drivers/staging/rtl8723au/include/HalHWImg8723A_BB.h index e99833cc7929..127609404652 100644 --- a/drivers/staging/rtl8723au/include/HalHWImg8723A_BB.h +++ b/drivers/staging/rtl8723au/include/HalHWImg8723A_BB.h @@ -35,10 +35,4 @@ void ODM_ReadAndConfig_PHY_REG_1T_8723A(struct dm_odm_t *pDM_Odm); void ODM_ReadAndConfig_PHY_REG_MP_8723A(struct dm_odm_t *pDM_Odm); -/****************************************************************************** -* PHY_REG_PG.TXT -******************************************************************************/ - -void ODM_ReadAndConfig_PHY_REG_PG_8723A(struct dm_odm_t *pDM_Odm); - #endif /* end of HWIMG_SUPPORT */ diff --git a/drivers/staging/rtl8723au/include/drv_types.h b/drivers/staging/rtl8723au/include/drv_types.h index a94857df2def..9870f87bdc70 100644 --- a/drivers/staging/rtl8723au/include/drv_types.h +++ b/drivers/staging/rtl8723au/include/drv_types.h @@ -111,7 +111,6 @@ struct registry_priv { u8 antdiv_cfg; u8 antdiv_type; - u8 usbss_enable;/* 0:disable,1:enable */ u8 hwpdn_mode;/* 0:disable,1:enable,2:decide by EFUSE config */ u8 hwpwrp_detect;/* 0:disable,1:enable */ @@ -177,10 +176,13 @@ struct dvobj_priv { u8 RtNumOutPipes; int ep_num[5]; /* endpoint number */ - struct mutex usb_vendor_req_mutex; + struct mutex usb_vendor_req_mutex; - u8 *usb_alloc_vendor_req_buf; - u8 *usb_vendor_req_buf; + union { + __le32 val32; + __le16 val16; + u8 val8; + } usb_buf; struct usb_interface *pusbintf; struct usb_device *pusbdev; @@ -257,9 +259,6 @@ struct rtw_adapter { u8 bFWReady; u8 bReadPortCancel; u8 bWritePortCancel; - /* The driver will show the desired chan nor when this flag is 1. */ - u8 bNotifyChannelChange; - struct rtw_adapter *pbuddy_adapter; /* extend to support multi interface */ /* IFACE_ID0 is equals to PRIMARY_ADAPTER */ @@ -269,8 +268,6 @@ struct rtw_adapter { #define adapter_to_dvobj(adapter) (adapter->dvobj) -int rtw_handle_dualmac23a(struct rtw_adapter *adapter, bool init); - static inline u8 *myid(struct eeprom_priv *peepriv) { return peepriv->mac_addr; diff --git a/drivers/staging/rtl8723au/include/hal_com.h b/drivers/staging/rtl8723au/include/hal_com.h index 4a161e26c8dc..7c31865e9865 100644 --- a/drivers/staging/rtl8723au/include/hal_com.h +++ b/drivers/staging/rtl8723au/include/hal_com.h @@ -182,7 +182,7 @@ void rtl8723a_set_slot_time(struct rtw_adapter *padapter, u8 slottime); void rtl8723a_ack_preamble(struct rtw_adapter *padapter, u8 bShortPreamble); void rtl8723a_set_sec_cfg(struct rtw_adapter *padapter, u8 sec); void rtl8723a_cam_empty_entry(struct rtw_adapter *padapter, u8 ucIndex); -void rtl8723a_cam_invalid_all(struct rtw_adapter *padapter); +void rtl8723a_cam_invalidate_all(struct rtw_adapter *padapter); void rtl8723a_cam_write(struct rtw_adapter *padapter, u8 entry, u16 ctrl, const u8 *mac, const u8 *key); void rtl8723a_fifo_cleanup(struct rtw_adapter *padapter); @@ -197,7 +197,6 @@ void rtl8723a_set_ac_param_vi(struct rtw_adapter *padapter, u32 vi); void rtl8723a_set_ac_param_be(struct rtw_adapter *padapter, u32 be); void rtl8723a_set_ac_param_bk(struct rtw_adapter *padapter, u32 bk); void rtl8723a_set_rxdma_agg_pg_th(struct rtw_adapter *padapter, u8 val); -void rtl8723a_set_nav_upper(struct rtw_adapter *padapter, u32 usNavUpper); void rtl8723a_set_initial_gain(struct rtw_adapter *padapter, u32 rx_gain); void rtl8723a_odm_support_ability_write(struct rtw_adapter *padapter, u32 val); diff --git a/drivers/staging/rtl8723au/include/hal_intf.h b/drivers/staging/rtl8723au/include/hal_intf.h index 04223b5c047d..404acb52352d 100644 --- a/drivers/staging/rtl8723au/include/hal_intf.h +++ b/drivers/staging/rtl8723au/include/hal_intf.h @@ -101,10 +101,9 @@ enum hardware_type { void rtw_hal_def_value_init23a(struct rtw_adapter *padapter); int pm_netdev_open23a(struct net_device *pnetdev, u8 bnormal); -int rtw_resume_process23a(struct rtw_adapter *padapter); -int rtw_hal_init23a(struct rtw_adapter *padapter); -int rtw_hal_deinit23a(struct rtw_adapter *padapter); +int rtl8723au_hal_init(struct rtw_adapter *padapter); +int rtl8723au_hal_deinit(struct rtw_adapter *padapter); void rtw_hal_stop(struct rtw_adapter *padapter); void rtw_hal_update_ra_mask23a(struct sta_info *psta, u8 rssi_level); diff --git a/drivers/staging/rtl8723au/include/ieee80211.h b/drivers/staging/rtl8723au/include/ieee80211.h index 69c0f5c94fcc..e9f465f0bc2c 100644 --- a/drivers/staging/rtl8723au/include/ieee80211.h +++ b/drivers/staging/rtl8723au/include/ieee80211.h @@ -27,8 +27,6 @@ #endif -#define MGMT_QUEUE_NUM 5 - #ifdef CONFIG_8723AU_AP_MODE /* STA flags */ @@ -50,12 +48,6 @@ #endif -#define IEEE_CMD_SET_WPA_PARAM 1 -#define IEEE_CMD_SET_WPA_IE 2 -#define IEEE_CMD_SET_ENCRYPTION 3 - -#define IEEE_CRYPT_ALG_NAME_LEN 16 - #define WPA_CIPHER_NONE BIT(0) #define WPA_CIPHER_WEP40 BIT(1) #define WPA_CIPHER_WEP104 BIT(2) @@ -81,7 +73,6 @@ extern u8 WPA_CIPHER_SUITE_WEP10423A[]; #define RSN_HEADER_LEN 4 #define RSN_SELECTOR_LEN 4 -extern u16 RSN_VERSION_BSD23A; extern u8 RSN_AUTH_KEY_MGMT_UNSPEC_802_1X23A[]; extern u8 RSN_AUTH_KEY_MGMT_PSK_OVER_802_1X23A[]; extern u8 RSN_CIPHER_SUITE_NONE23A[]; @@ -154,50 +145,6 @@ enum NETWORK_TYPE #define IsSupportedTxMCS(NetType) (NetType & (WIRELESS_11_24N|WIRELESS_11_5N) ? true : false) -struct ieee_param { - u32 cmd; - u8 sta_addr[ETH_ALEN]; - union { - struct { - u8 name; - u32 value; - } wpa_param; - struct { - u32 len; - u8 reserved[32]; - u8 data[0]; - } wpa_ie; - struct{ - int command; - int reason_code; - } mlme; - struct { - u8 alg[IEEE_CRYPT_ALG_NAME_LEN]; - u8 set_tx; - u32 err; - u8 idx; - u8 seq[8]; /* sequence counter (set: RX, get: TX) */ - u16 key_len; - u8 key[0]; - } crypt; -#ifdef CONFIG_8723AU_AP_MODE - struct { - u16 aid; - u16 capability; - int flags; - u8 tx_supp_rates[16]; - struct ieee80211_ht_cap ht_cap; - } add_sta; - struct { - u8 reserved[2];/* for set max_num_sta */ - u8 buf[0]; - } bcn_ie; -#endif - - } u; -}; - - #define MIN_FRAG_THRESHOLD 256U #define MAX_FRAG_THRESHOLD 2346U @@ -221,20 +168,10 @@ struct ieee80211_snap_hdr { #define SNAP_SIZE sizeof(struct ieee80211_snap_hdr) -#define WLAN_FC_GET_TYPE(fc) (fc & IEEE80211_FCTL_FTYPE) -#define WLAN_FC_GET_STYPE(fc) (fc & IEEE80211_FCTL_STYPE) - -#define WLAN_QC_GET_TID(qc) (qc & 0x0f) - -#define WLAN_GET_SEQ_FRAG(seq) (seq & RTW_IEEE80211_SCTL_FRAG) -#define WLAN_GET_SEQ_SEQ(seq) (seq & RTW_IEEE80211_SCTL_SEQ) - - #define WLAN_REASON_JOIN_WRONG_CHANNEL 65534 #define WLAN_REASON_EXPIRATION_CHK 65535 - #define IEEE80211_STATMASK_SIGNAL (1<<0) #define IEEE80211_STATMASK_RSSI (1<<1) #define IEEE80211_STATMASK_NOISE (1<<2) @@ -305,7 +242,6 @@ struct ieee80211_snap_hdr { #define IEEE80211_OFDM_SHIFT_MASK_A 4 #define WEP_KEYS 4 -#define WEP_KEY_LEN 13 /* MAX_RATES_LENGTH needs to be 12. The spec says 8, and many APs @@ -315,14 +251,13 @@ struct ieee80211_snap_hdr { #define MAX_RATES_LENGTH 12 #define MAX_RATES_EX_LENGTH 16 #define MAX_CHANNEL_NUMBER 161 +#define RTW_CH_MAX_2G_CHANNEL 14 /* Max channel in 2G band */ #define MAX_WPA_IE_LEN 256 -#define MAX_WPS_IE_LEN 512 +#define MAX_WPS_IE_LEN 256 #define MAX_P2P_IE_LEN 256 #define MAX_WFD_IE_LEN 128 -#define IW_ESSID_MAX_SIZE 32 - /* join_res: -1: authentication fail @@ -335,26 +270,6 @@ join_res: #define MAXTID 16 -enum _PUBLIC_ACTION{ - ACT_PUBLIC_BSSCOEXIST = 0, /* 20/40 BSS Coexistence */ - ACT_PUBLIC_DSE_ENABLE = 1, - ACT_PUBLIC_DSE_DEENABLE = 2, - ACT_PUBLIC_DSE_REG_LOCATION = 3, - ACT_PUBLIC_EXT_CHL_SWITCH = 4, - ACT_PUBLIC_DSE_MSR_REQ = 5, - ACT_PUBLIC_DSE_MSR_RPRT = 6, - ACT_PUBLIC_MP = 7, /* Measurement Pilot */ - ACT_PUBLIC_DSE_PWR_CONSTRAINT = 8, - ACT_PUBLIC_VENDOR = 9, /* for WIFI_DIRECT */ - ACT_PUBLIC_GAS_INITIAL_REQ = 10, - ACT_PUBLIC_GAS_INITIAL_RSP = 11, - ACT_PUBLIC_GAS_COMEBACK_REQ = 12, - ACT_PUBLIC_GAS_COMEBACK_RSP = 13, - ACT_PUBLIC_TDLS_DISCOVERY_RSP = 14, - ACT_PUBLIC_LOCATION_TRACK = 15, - ACT_PUBLIC_MAX -}; - #define WME_OUI_TYPE 2 #define WME_OUI_SUBTYPE_INFORMATION_ELEMENT 0 #define WME_OUI_SUBTYPE_PARAMETER_ELEMENT 1 @@ -407,14 +322,8 @@ struct rtw_ieee80211_channel { /*, (channel)->orig_mag*/ \ /*, (channel)->orig_mpwr*/ \ -u8 *rtw_set_fixed_ie23a(unsigned char *pbuf, unsigned int len, unsigned char *source, unsigned int *frlen); u8 *rtw_set_ie23a(u8 *pbuf, int index, uint len, const u8 *source, uint *frlen); -enum secondary_ch_offset { - SCN = 0, /* no secondary channel */ - SCA = 1, /* secondary channel above */ - SCB = 3, /* secondary channel below */ -}; u8 hal_ch_offset_to_secondary_ch_offset23a(u8 ch_offset); u8 *rtw_set_ie23a_ch_switch(u8 *buf, u32 *buf_len, u8 ch_switch_mode, u8 new_ch, u8 ch_switch_cnt); u8 *rtw_set_ie23a_secondary_ch_offset(u8 *buf, u32 *buf_len, u8 secondary_ch_offset); @@ -425,16 +334,11 @@ int rtw_ies_remove_ie23a(u8 *ies, uint *ies_len, uint offset, u8 eid, u8 *oui, u void rtw_set_supported_rate23a(u8* SupportedRates, uint mode) ; -int rtw_get_wpa_cipher_suite23a(const u8 *s); -int rtw_get_wpa2_cipher_suite23a(const u8 *s); int rtw_parse_wpa_ie23a(const u8* wpa_ie, int wpa_ie_len, int *group_cipher, int *pairwise_cipher, int *is_8021x); int rtw_parse_wpa2_ie23a(const u8* wpa_ie, int wpa_ie_len, int *group_cipher, int *pairwise_cipher, int *is_8021x); -int rtw_get_sec_ie23a(u8 *in_ie,uint in_len,u8 *rsn_ie,u16 *rsn_len,u8 *wpa_ie,u16 *wpa_len); - -u8 *rtw_get_wps_ie23a(u8 *in_ie, uint in_len, u8 *wps_ie, uint *wps_ielen); -u8 *rtw_get_wps_attr23a(u8 *wps_ie, uint wps_ielen, u16 target_attr_id ,u8 *buf_attr, u32 *len_attr); -u8 *rtw_get_wps_attr_content23a(u8 *wps_ie, uint wps_ielen, u16 target_attr_id ,u8 *buf_content, uint *len_content); +const u8 *rtw_get_wps_attr23a(const u8 *wps_ie, uint wps_ielen, u16 target_attr_id ,u8 *buf_attr, u32 *len_attr); +const u8 *rtw_get_wps_attr_content23a(const u8 *wps_ie, uint wps_ielen, u16 target_attr_id ,u8 *buf_content); uint rtw_get_rateset_len23a(u8 *rateset); @@ -448,8 +352,7 @@ int rtw_check_network_type23a(unsigned char *rate, int ratelen, int channel); void rtw_get_bcn_info23a(struct wlan_network *pnetwork); -u16 rtw_mcs_rate23a(u8 rf_type, u8 bw_40MHz, u8 short_GI_20, u8 short_GI_40, unsigned char * MCS_rate); - -const char *action_public_str23a(u8 action); +u16 rtw_mcs_rate23a(u8 rf_type, u8 bw_40MHz, u8 short_GI_20, u8 short_GI_40, + struct ieee80211_mcs_info *mcs); #endif /* IEEE80211_H */ diff --git a/drivers/staging/rtl8723au/include/ioctl_cfg80211.h b/drivers/staging/rtl8723au/include/ioctl_cfg80211.h index 63e921f921d3..3a4ead54f948 100644 --- a/drivers/staging/rtl8723au/include/ioctl_cfg80211.h +++ b/drivers/staging/rtl8723au/include/ioctl_cfg80211.h @@ -61,9 +61,6 @@ void rtw_cfg80211_indicate_sta_disassoc(struct rtw_adapter *padapter, unsigned char *da, unsigned short reason); #endif /* CONFIG_8723AU_AP_MODE */ -void rtw_cfg80211_rx_action(struct rtw_adapter *adapter, u8 *frame, - uint frame_len, const char*msg); - bool rtw_cfg80211_pwr_mgmt(struct rtw_adapter *adapter); #endif /* __IOCTL_CFG80211_H__ */ diff --git a/drivers/staging/rtl8723au/include/odm.h b/drivers/staging/rtl8723au/include/odm.h index 183d8ff1ab9b..68ff7bbc6ad1 100644 --- a/drivers/staging/rtl8723au/include/odm.h +++ b/drivers/staging/rtl8723au/include/odm.h @@ -125,7 +125,6 @@ struct dig_t { bool bMediaConnect_0; bool bMediaConnect_1; - u32 AntDiv_RSSI_max; u32 RSSI_max; }; @@ -300,7 +299,6 @@ enum odm_cmninfo { /* */ ODM_CMNINFO_PLATFORM = 0, - ODM_CMNINFO_ABILITY, /* enum odm_ability */ ODM_CMNINFO_INTERFACE, /* enum odm_interface_def */ ODM_CMNINFO_MP_TEST_CHIP, ODM_CMNINFO_IC_TYPE, /* enum odm_ic_type_def */ @@ -320,27 +318,6 @@ enum odm_cmninfo { /* */ /* Dynamic value: */ /* */ - ODM_CMNINFO_MAC_PHY_MODE, /* enum odm_mac_phy_mode */ - ODM_CMNINFO_TX_UNI, - ODM_CMNINFO_RX_UNI, - ODM_CMNINFO_WM_MODE, /* enum odm_wireless_mode */ - ODM_CMNINFO_BAND, /* enum odm_band_type */ - ODM_CMNINFO_SEC_CHNL_OFFSET, /* enum odm_sec_chnl_offset */ - ODM_CMNINFO_SEC_MODE, /* enum odm_security */ - ODM_CMNINFO_BW, /* enum odm_band_width */ - ODM_CMNINFO_CHNL, - - ODM_CMNINFO_DMSP_GET_VALUE, - ODM_CMNINFO_BUDDY_ADAPTOR, - ODM_CMNINFO_DMSP_IS_MASTER, - ODM_CMNINFO_SCAN, - ODM_CMNINFO_POWER_SAVING, - ODM_CMNINFO_ONE_PATH_CCA, /* enum odm_cca_path */ - ODM_CMNINFO_DRV_STOP, - ODM_CMNINFO_PNP_IN, - ODM_CMNINFO_INIT_ON, - ODM_CMNINFO_ANT_TEST, - ODM_CMNINFO_NET_CLOSED, ODM_CMNINFO_MP_MODE, ODM_CMNINFO_WIFI_DIRECT, @@ -415,10 +392,6 @@ enum odm_ic_type_def { ODM_RTL8821 = BIT(6), }; -#define ODM_IC_11N_SERIES \ - (ODM_RTL8192S|ODM_RTL8192C|ODM_RTL8192D|ODM_RTL8723A|ODM_RTL8188E) -#define ODM_IC_11AC_SERIES (ODM_RTL8812) - /* ODM_CMNINFO_CUT_VER */ enum odm_cut_version { ODM_CUT_A = 1, @@ -516,15 +489,6 @@ enum odm_sec_chnl_offset { 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 */ @@ -705,7 +669,6 @@ struct dm_odm_t { bool bDualMacSmartConcurrent; u32 BK_SupportAbility; - u8 AntDivType; /* HOOK BEFORE REG INIT----------- */ /* */ @@ -717,37 +680,6 @@ struct dm_odm_t { bool bool_temp; struct rtw_adapter *PADAPTER_temp; - /* MAC PHY Mode SMSP/DMSP/DMDP = 0/1/2 */ - u8 *pMacPhyMode; - /* TX Unicast byte count */ - u64 *pNumTxBytesUnicast; - /* RX Unicast byte count */ - u64 *pNumRxBytesUnicast; - /* Wireless mode B/G/A/N = BIT0/BIT1/BIT2/BIT3 */ - u8 *pWirelessMode; /* enum odm_wireless_mode */ - /* Frequence band 2.4G/5G = 0/1 */ - u8 *pBandType; - /* Secondary channel offset don't_care/below/above = 0/1/2 */ - u8 *pSecChOffset; - /* Security mode Open/WEP/AES/TKIP = 0/1/2/3 */ - u8 *pSecurity; - /* BW info 20M/40M/80M = 0/1/2 */ - u8 *pBandWidth; - /* Central channel location Ch1/Ch2/.... */ - u8 *pChannel; /* central channel number */ - /* Common info for 92D DMSP */ - - bool *pbGetValueFromOtherMac; - struct rtw_adapter **pBuddyAdapter; - bool *pbMasterOfDMSP; /* MAC0: master, MAC1: slave */ - /* Common info for Status */ - bool *pbScanInProcess; - bool *pbPowerSaving; - /* CCA Path 2-path/path-A/path-B = 0/1/2; using enum odm_cca_path. */ - u8 *pOnePathCCA; - /* pMgntInfo->AntennaTest */ - u8 *pAntennaTest; - bool *pbNet_closed; /* POINTER REFERENCE----------- */ /* */ /* CALL BY VALUE------------- */ @@ -804,7 +736,6 @@ struct dm_odm_t { struct false_alarm_stats FalseAlmCnt; struct false_alarm_stats FlaseAlmCntBuddyAdapter; struct sw_ant_sw DM_SWAT_Table; - bool RSSI_test; struct edca_turbo DM_EDCA_Table; u32 WMMEDCA_BE; @@ -813,16 +744,10 @@ struct dm_odm_t { /* ================================================== */ /* */ - /* common */ - bool *pbDriverStopped; - bool *pbDriverIsGoingToPnpSetPowerSleep; - bool *pinit_adpt_in_progress; - /* PSD */ bool bUserAssignLevel; u8 RSSI_BT; /* come from BT */ bool bPSDinProcess; - bool bDMInitialGainEnable; /* for rate adaptive, in fact, 88c/92c fw will handle this */ u8 bUseRAMask; @@ -855,14 +780,6 @@ enum odm_rf_content { odm_radiod_txt = 0x1003 }; -enum odm_bb_config_type { - CONFIG_BB_PHY_REG, - CONFIG_BB_AGC_TAB, - CONFIG_BB_AGC_TAB_2G, - CONFIG_BB_AGC_TAB_5G, - CONFIG_BB_PHY_REG_PG, -}; - /* Status code */ enum rt_status { RT_STATUS_SUCCESS, @@ -1013,10 +930,6 @@ extern u8 CCKSwingTable_Ch1423A [CCK_TABLE_SIZE][8]; -/* */ -/* check Sta pointer valid or not */ -/* */ -#define IS_STA_VALID(pSta) (pSta) /* 20100514 Joseph: Add definition for antenna switching test after link. */ /* This indicates two different the steps. */ /* In SWAW_STEP_PEAK, driver needs to switch antenna and listen to the signal on the air. */ @@ -1025,6 +938,8 @@ extern u8 CCKSwingTable_Ch1423A [CCK_TABLE_SIZE][8]; #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); @@ -1034,9 +949,6 @@ void ODM_SetAntenna(struct dm_odm_t *pDM_Odm, u8 Antenna); #define dm_RF_Saving ODM_RF_Saving23a void ODM_RF_Saving23a(struct dm_odm_t *pDM_Odm, u8 bForceInNormal); -#define SwAntDivRestAfterLink ODM_SwAntDivRestAfterLink -void ODM_SwAntDivRestAfterLink(struct dm_odm_t *pDM_Odm); - #define dm_CheckTXPowerTracking ODM_TXPowerTrackingCheck23a void ODM_TXPowerTrackingCheck23a(struct dm_odm_t *pDM_Odm); @@ -1044,27 +956,21 @@ bool ODM_RAStateCheck23a(struct dm_odm_t *pDM_Odm, s32 RSSI, bool bForceUpdate, u8 *pRATRState); -#define dm_SWAW_RSSI_Check ODM_SwAntDivChkPerPktRssi -void ODM_SwAntDivChkPerPktRssi(struct dm_odm_t *pDM_Odm, u8 StationID, - struct phy_info *pPhyInfo); - u32 ConvertTo_dB23a(u32 Value); u32 GetPSDData(struct dm_odm_t *pDM_Odm, unsigned int point, u8 initial_gain_psd); 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); -void ODM_DMWatchdog23a(struct dm_odm_t *pDM_Odm); /* For common use in the future */ +void ODM_DMWatchdog23a(struct rtw_adapter *adapter); void ODM_CmnInfoInit23a(struct dm_odm_t *pDM_Odm, enum odm_cmninfo CmnInfo, u32 Value); -void ODM23a_CmnInfoHook(struct dm_odm_t *pDM_Odm, enum odm_cmninfo CmnInfo, void *pValue); - void ODM_CmnInfoPtrArrayHook23a(struct dm_odm_t *pDM_Odm, enum odm_cmninfo CmnInfo, u16 Index, void *pValue); void ODM_CmnInfoUpdate23a(struct dm_odm_t *pDM_Odm, u32 CmnInfo, u64 Value); diff --git a/drivers/staging/rtl8723au/include/odm_HWConfig.h b/drivers/staging/rtl8723au/include/odm_HWConfig.h index 6b98e05d0460..78021a8cf8f9 100644 --- a/drivers/staging/rtl8723au/include/odm_HWConfig.h +++ b/drivers/staging/rtl8723au/include/odm_HWConfig.h @@ -152,21 +152,4 @@ ODM_PhyStatusQuery23a( struct odm_packet_info *pPktinfo ); -void ODM_MacStatusQuery23a(struct dm_odm_t *pDM_Odm, - u8 *pMacStatus, - u8 MacID, - bool bPacketMatchBSSID, - bool bPacketToSelf, - bool bPacketBeacon -); - -int ODM_ConfigRFWithHeaderFile23a(struct dm_odm_t *pDM_Odm, - enum RF_RADIO_PATH Content, - enum RF_RADIO_PATH eRFPath); - -int ODM_ConfigBBWithHeaderFile23a(struct dm_odm_t *pDM_Odm, - enum odm_bb_config_type ConfigType); - -int ODM_ConfigMACWithHeaderFile23a(struct dm_odm_t *pDM_Odm); - #endif diff --git a/drivers/staging/rtl8723au/include/odm_RegConfig8723A.h b/drivers/staging/rtl8723au/include/odm_RegConfig8723A.h index 4ea579b2e8bd..a6cfb6df4cf7 100644 --- a/drivers/staging/rtl8723au/include/odm_RegConfig8723A.h +++ b/drivers/staging/rtl8723au/include/odm_RegConfig8723A.h @@ -18,17 +18,11 @@ void odm_ConfigRFReg_8723A(struct dm_odm_t *pDM_Odm, u32 Addr, u32 Data, enum RF_RADIO_PATH RF_PATH, u32 RegAddr); -void odm_ConfigRF_RadioA_8723A(struct dm_odm_t *pDM_Odm, u32 Addr, u32 Data); - -void odm_ConfigRF_RadioB_8723A(struct dm_odm_t *pDM_Odm, u32 Addr, u32 Data); - void odm_ConfigMAC_8723A(struct dm_odm_t *pDM_Odm, u32 Addr, u8 Data); void odm_ConfigBB_AGC_8723A(struct dm_odm_t *pDM_Odm, u32 Addr, u32 Bitmask, u32 Data); -void odm_ConfigBB_PHY_REG_PG_8723A(struct dm_odm_t *pDM_Odm, u32 Addr, u32 Bitmask, u32 Data); - void odm_ConfigBB_PHY_8723A(struct dm_odm_t *pDM_Odm, u32 Addr, u32 Bitmask, u32 Data); #endif /* end of SUPPORT */ diff --git a/drivers/staging/rtl8723au/include/odm_RegDefine11AC.h b/drivers/staging/rtl8723au/include/odm_RegDefine11AC.h deleted file mode 100644 index 77b7acec5ea8..000000000000 --- a/drivers/staging/rtl8723au/include/odm_RegDefine11AC.h +++ /dev/null @@ -1,49 +0,0 @@ -/****************************************************************************** - * - * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of version 2 of the GNU General Public License as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - ******************************************************************************/ - -#ifndef __ODM_REGDEFINE11AC_H__ -#define __ODM_REGDEFINE11AC_H__ - -/* 2 RF REG LIST */ - - - -/* 2 BB REG LIST */ -/* PAGE 8 */ -/* PAGE 9 */ -#define ODM_REG_OFDM_FA_RST_11AC 0x9A4 -/* PAGE A */ -#define ODM_REG_CCK_CCA_11AC 0xA0A -#define ODM_REG_CCK_FA_RST_11AC 0xA2C -#define ODM_REG_CCK_FA_11AC 0xA5C -/* PAGE C */ -#define ODM_REG_IGI_A_11AC 0xC50 -/* PAGE E */ -#define ODM_REG_IGI_B_11AC 0xE50 -/* PAGE F */ -#define ODM_REG_OFDM_FA_11AC 0xF48 - - -/* 2 MAC REG LIST */ - - - - -/* DIG Related */ -#define ODM_BIT_IGI_11AC 0xFFFFFFFF - - - -#endif diff --git a/drivers/staging/rtl8723au/include/odm_interface.h b/drivers/staging/rtl8723au/include/odm_interface.h index c260d6bd8ff5..ea35070b744f 100644 --- a/drivers/staging/rtl8723au/include/odm_interface.h +++ b/drivers/staging/rtl8723au/include/odm_interface.h @@ -33,17 +33,16 @@ ODM_REG(DIG,_pDM_Odm) #define _bit_11N(_name) ODM_BIT_##_name##_11N #define _bit_11AC(_name) ODM_BIT_##_name##_11AC -#define _cat(_name, _ic_type, _func) \ - ( \ - ((_ic_type) & ODM_IC_11N_SERIES)? _func##_11N(_name): \ - _func##_11AC(_name) \ +#define _cat(_name, _func) \ + ( \ + _func##_11N(_name) \ ) /* _name: name of register or bit. */ /* Example: "ODM_REG(R_A_AGC_CORE1, pDM_Odm)" */ /* gets "ODM_R_A_AGC_CORE1" or "ODM_R_A_AGC_CORE1_8192C", depends on SupportICType. */ -#define ODM_REG(_name, _pDM_Odm) _cat(_name, _pDM_Odm->SupportICType, _reg) -#define ODM_BIT(_name, _pDM_Odm) _cat(_name, _pDM_Odm->SupportICType, _bit) +#define ODM_REG(_name, _pDM_Odm) _cat(_name, _reg) +#define ODM_BIT(_name, _pDM_Odm) _cat(_name, _bit) /* */ /* 2012/02/17 MH For non-MP compile pass only. Linux does not support workitem. */ diff --git a/drivers/staging/rtl8723au/include/odm_precomp.h b/drivers/staging/rtl8723au/include/odm_precomp.h index 69de888d884c..fb793c8ba7f8 100644 --- a/drivers/staging/rtl8723au/include/odm_precomp.h +++ b/drivers/staging/rtl8723au/include/odm_precomp.h @@ -32,7 +32,6 @@ #include "odm.h" #include "odm_HWConfig.h" #include "odm_debug.h" -#include "odm_RegDefine11AC.h" #include "odm_RegDefine11N.h" #include "HalDMOutSrc8723A.h" /* for IQK,LCK,Power-tracking */ diff --git a/drivers/staging/rtl8723au/include/rtl8723a_cmd.h b/drivers/staging/rtl8723au/include/rtl8723a_cmd.h index 900baccc3c24..014c02edded6 100644 --- a/drivers/staging/rtl8723au/include/rtl8723a_cmd.h +++ b/drivers/staging/rtl8723au/include/rtl8723a_cmd.h @@ -153,6 +153,6 @@ int rtl8723a_set_rssi_cmd(struct rtw_adapter *padapter, u8 *param); int rtl8723a_set_raid_cmd(struct rtw_adapter *padapter, u32 mask, u8 arg); void rtl8723a_add_rateatid(struct rtw_adapter *padapter, u32 bitmap, u8 arg, u8 rssi_level); -void CheckFwRsvdPageContent23a(struct rtw_adapter *padapter); +int FillH2CCmd(struct rtw_adapter *padapter, u8 ElementID, u32 CmdLen, u8 *pCmdBuffer); #endif diff --git a/drivers/staging/rtl8723au/include/rtl8723a_dm.h b/drivers/staging/rtl8723au/include/rtl8723a_dm.h index ccac672c9c04..18112225e53f 100644 --- a/drivers/staging/rtl8723au/include/rtl8723a_dm.h +++ b/drivers/staging/rtl8723au/include/rtl8723a_dm.h @@ -39,9 +39,6 @@ enum{ /* duplicate code,will move to ODM ######### */ struct dm_priv { - u8 DM_Type; - u8 DMFlag; - u8 InitDMFlag; u32 InitODMFlag; /* Upper and Lower Signal threshold for Rate Adaptive*/ @@ -134,7 +131,6 @@ struct dm_priv /* */ void rtl8723a_init_dm_priv(struct rtw_adapter *padapter); -void rtl8723a_deinit_dm_priv(struct rtw_adapter *padapter); void rtl8723a_InitHalDm(struct rtw_adapter *padapter); void rtl8723a_HalDmWatchDog(struct rtw_adapter *padapter); diff --git a/drivers/staging/rtl8723au/include/rtl8723a_hal.h b/drivers/staging/rtl8723au/include/rtl8723a_hal.h index 344b7085f877..3b0b06d6e41e 100644 --- a/drivers/staging/rtl8723au/include/rtl8723a_hal.h +++ b/drivers/staging/rtl8723au/include/rtl8723a_hal.h @@ -315,7 +315,6 @@ struct hal_data_8723a { u8 framesync; u32 framesyncC34; u8 framesyncMonitor; - u8 DefaultInitialGain[4]; u8 pwrGroupCnt; u32 MCSTxPowerLevelOriginalOffset[7][16]; u32 CCKTxPowerLevelOriginalOffset; @@ -356,7 +355,6 @@ struct hal_data_8723a { u8 fw_ractrl; u8 RegTxPause; /* Beacon function related global variable. */ - u32 RegBcnCtrlVal; u8 RegFwHwTxQCtrl; u8 RegReg542; @@ -384,9 +382,6 @@ struct hal_data_8723a { u8 OutEpQueueSel; u8 OutEpNumber; - /* 2010/12/10 MH Add for USB aggreation mode dynamic shceme. */ - bool UsbRxHighSpeedMode; - /* 2010/11/22 MH Add for slim combo debug mode selective. */ /* This is used for fix the drawback of CU TSMC-A/UMC-A cut. HW auto suspend ability. Close BT clock. */ bool SlimComboDbg; diff --git a/drivers/staging/rtl8723au/include/rtl8723a_spec.h b/drivers/staging/rtl8723au/include/rtl8723a_spec.h index b5d7123f7873..59b545b642b4 100644 --- a/drivers/staging/rtl8723au/include/rtl8723a_spec.h +++ b/drivers/staging/rtl8723au/include/rtl8723a_spec.h @@ -454,8 +454,6 @@ /* */ /* 9. Security Control Registers (Offset: ) */ /* */ - /* IN 8190 Data Sheet is called CAMcmd */ -#define RWCAM REG_CAMCMD /* Software write CAM input content */ #define WCAMI REG_CAMWRITE /* Software read/write CAM config */ @@ -1323,14 +1321,6 @@ Current IOREG MAP #define ENSWBCN BIT(8) #define ENSEC BIT(9) -/* Network type */ -#define _NETTYPE(x) (((x) & 0x3) << 16) -#define MASK_NETTYPE 0x30000 -#define NT_NO_LINK 0x0 -#define NT_LINK_AD_HOC 0x1 -#define NT_LINK_AP 0x2 -#define NT_AS_AP 0x3 - #define _LBMODE(x) (((x) & 0xF) << 24) #define MASK_LBMODE 0xF000000 #define LOOPBACK_NORMAL 0x0 diff --git a/drivers/staging/rtl8723au/include/rtl8723a_sreset.h b/drivers/staging/rtl8723au/include/rtl8723a_sreset.h index 82af6a2704ed..6197910a4a53 100644 --- a/drivers/staging/rtl8723au/include/rtl8723a_sreset.h +++ b/drivers/staging/rtl8723au/include/rtl8723a_sreset.h @@ -20,6 +20,5 @@ #include <rtw_sreset.h> void rtl8723a_sreset_xmit_status_check(struct rtw_adapter *padapter); -void rtl8723a_sreset_linked_status_check(struct rtw_adapter *padapter); #endif diff --git a/drivers/staging/rtl8723au/include/rtl8723a_xmit.h b/drivers/staging/rtl8723au/include/rtl8723a_xmit.h index 79883d7b867d..815560c6e1d7 100644 --- a/drivers/staging/rtl8723au/include/rtl8723a_xmit.h +++ b/drivers/staging/rtl8723au/include/rtl8723a_xmit.h @@ -211,7 +211,6 @@ struct txrpt_ccx_8723a { #define txrpt_ccx_sw_8723a(txrpt_ccx) ((txrpt_ccx)->sw0 + ((txrpt_ccx)->sw1<<8)) #define txrpt_ccx_qtime_8723a(txrpt_ccx) ((txrpt_ccx)->ccx_qtime0+((txrpt_ccx)->ccx_qtime1<<8)) -void dump_txrpt_ccx_8723a(void *buf); void handle_txrpt_ccx_8723a(struct rtw_adapter *adapter, void *buf); void rtl8723a_update_txdesc(struct xmit_frame *pxmitframe, u8 *pmem); void rtl8723a_fill_fake_txdesc(struct rtw_adapter *padapter, u8 *pDesc, u32 BufferLen, u8 IsPsPoll, u8 IsBTQosNull); diff --git a/drivers/staging/rtl8723au/include/rtw_ap.h b/drivers/staging/rtl8723au/include/rtw_ap.h index 8d9be5a36eae..9f8d235c992f 100644 --- a/drivers/staging/rtl8723au/include/rtw_ap.h +++ b/drivers/staging/rtl8723au/include/rtw_ap.h @@ -32,7 +32,8 @@ void update_beacon23a(struct rtw_adapter *padapter, u8 ie_id, u8 *oui, u8 tx); void add_RATid23a(struct rtw_adapter *padapter, struct sta_info *psta, u8 rssi_level); void expire_timeout_chk23a(struct rtw_adapter *padapter); void update_sta_info23a_apmode23a(struct rtw_adapter *padapter, struct sta_info *psta); -int rtw_check_beacon_data23a(struct rtw_adapter *padapter, u8 *pbuf, unsigned int len); +int rtw_check_beacon_data23a(struct rtw_adapter *padapter, + struct ieee80211_mgmt *mgmt, unsigned int len); void rtw_ap_restore_network(struct rtw_adapter *padapter); void rtw_set_macaddr_acl23a(struct rtw_adapter *padapter, int mode); int rtw_acl_add_sta23a(struct rtw_adapter *padapter, u8 *addr); diff --git a/drivers/staging/rtl8723au/include/rtw_debug.h b/drivers/staging/rtl8723au/include/rtw_debug.h index a69d6e215b8b..b6b01732a725 100644 --- a/drivers/staging/rtl8723au/include/rtw_debug.h +++ b/drivers/staging/rtl8723au/include/rtw_debug.h @@ -146,7 +146,7 @@ #define DBG_8723A_LEVEL(_level, fmt, arg...) \ do { \ if (_level <= GlobalDebugLevel23A) \ - pr_info(DRIVER_PREFIX"ERROR " fmt, ##arg);\ + pr_info(DRIVER_PREFIX fmt, ##arg);\ } while (0) #define DBG_8723A(...) \ diff --git a/drivers/staging/rtl8723au/include/rtw_event.h b/drivers/staging/rtl8723au/include/rtw_event.h index 807cc83bc710..4557aeccc604 100644 --- a/drivers/staging/rtl8723au/include/rtw_event.h +++ b/drivers/staging/rtl8723au/include/rtw_event.h @@ -22,7 +22,7 @@ Used to report a bss has been scanned */ struct survey_event { - struct wlan_bssid_ex bss; + struct wlan_bssid_ex *bss; }; /* diff --git a/drivers/staging/rtl8723au/include/rtw_ht.h b/drivers/staging/rtl8723au/include/rtw_ht.h index 86ce86b6b69b..cfc947daf08b 100644 --- a/drivers/staging/rtl8723au/include/rtw_ht.h +++ b/drivers/staging/rtl8723au/include/rtw_ht.h @@ -21,8 +21,8 @@ struct ht_priv { - u32 ht_option; - u32 ampdu_enable;/* for enable Tx A-MPDU */ + bool ht_option; + bool ampdu_enable;/* for enable Tx A-MPDU */ /* u8 baddbareq_issued[16]; */ u32 tx_amsdu_enable;/* for enable Tx A-MSDU */ u32 tx_amdsu_maxlen; /* 1: 8k, 0:4k ; default:8k, for tx */ diff --git a/drivers/staging/rtl8723au/include/rtw_ioctl_set.h b/drivers/staging/rtl8723au/include/rtw_ioctl_set.h deleted file mode 100644 index 040543bff1b2..000000000000 --- a/drivers/staging/rtl8723au/include/rtw_ioctl_set.h +++ /dev/null @@ -1,32 +0,0 @@ -/****************************************************************************** - * - * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of version 2 of the GNU General Public License as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - ******************************************************************************/ -#ifndef __RTW_IOCTL_SET_H_ -#define __RTW_IOCTL_SET_H_ - -#include <drv_types.h> - -int rtw_set_802_11_authentication_mode23a(struct rtw_adapter *pdapter, - enum ndis_802_11_auth_mode authmode); -int rtw_set_802_11_bssid23a_list_scan(struct rtw_adapter *padapter, - struct cfg80211_ssid *pssid, - int ssid_max_num); -int rtw_set_802_11_ssid23a(struct rtw_adapter * padapter, - struct cfg80211_ssid * ssid); - -u16 rtw_get_cur_max_rate23a(struct rtw_adapter *adapter); -s32 FillH2CCmd(struct rtw_adapter *padapter, u8 ElementID, u32 CmdLen, u8 *pCmdBuffer); -int rtw_do_join23a(struct rtw_adapter *padapter); - -#endif diff --git a/drivers/staging/rtl8723au/include/rtw_mlme.h b/drivers/staging/rtl8723au/include/rtw_mlme.h index 4d327ba775b0..2ff01eb8fc0c 100644 --- a/drivers/staging/rtl8723au/include/rtw_mlme.h +++ b/drivers/staging/rtl8723au/include/rtw_mlme.h @@ -163,24 +163,6 @@ struct mlme_priv { u32 assoc_req_len; u32 assoc_rsp_len; u8 *assoc_rsp; - u32 wps_assoc_resp_ie_len; - u8 *wps_assoc_resp_ie; - u8 *wps_probe_resp_ie; - u32 wps_probe_resp_ie_len; - u8 *wps_beacon_ie; - u32 wps_beacon_ie_len; - u32 p2p_go_probe_resp_ie_len; /* for GO */ - u32 p2p_assoc_req_ie_len; - u8 *p2p_beacon_ie; - u8 *p2p_probe_req_ie; - u8 *p2p_probe_resp_ie; - u8 *p2p_go_probe_resp_ie; /* for GO */ - u8 *p2p_assoc_req_ie; - u32 p2p_beacon_ie_len; - u32 p2p_probe_req_ie_len; - u32 p2p_probe_resp_ie_len; - u8 *wfd_assoc_req_ie; - u32 wfd_assoc_req_ie_len; #ifdef CONFIG_8723AU_AP_MODE /* Number of associated Non-ERP stations (i.e., stations using 802.11b @@ -213,16 +195,6 @@ struct mlme_priv { u8 update_bcn; #endif /* ifdef CONFIG_8723AU_AP_MODE */ - - u8 *wfd_beacon_ie; - u8 *wfd_probe_req_ie; - u8 *wfd_probe_resp_ie; - u8 *wfd_go_probe_resp_ie; /* for GO */ - - u32 wfd_beacon_ie_len; - u32 wfd_probe_req_ie_len; - u32 wfd_probe_resp_ie_len; - u32 wfd_go_probe_resp_ie_len; /* for GO */ }; void rtw_joinbss_event_prehandle23a(struct rtw_adapter *adapter, u8 *pbuf); @@ -240,6 +212,9 @@ int rtw_init_mlme_priv23a(struct rtw_adapter *adapter); void rtw_free_mlme_priv23a(struct mlme_priv *pmlmepriv); +int rtw_do_join_adhoc(struct rtw_adapter *adapter); +int rtw_do_join_network(struct rtw_adapter *adapter, + struct wlan_network *candidate); int rtw_select_and_join_from_scanned_queue23a(struct mlme_priv *pmlmepriv); int rtw_set_key23a(struct rtw_adapter *adapter, struct security_priv *psecuritypriv, int keyid, u8 set_tx); @@ -307,9 +282,6 @@ static inline void clr_fwstate_ex(struct mlme_priv *pmlmepriv, int state) spin_unlock_bh(&pmlmepriv->lock); } -u16 rtw_get_capability23a(struct wlan_bssid_ex *bss); -void rtw_update_scanned_network23a(struct rtw_adapter *adapter, - struct wlan_bssid_ex *target); void rtw_disconnect_hdl23a_under_linked(struct rtw_adapter *adapter, struct sta_info *psta, u8 free_assoc); void rtw_generate_random_ibss23a(u8 *pibss); @@ -330,8 +302,6 @@ void rtw_init_registrypriv_dev_network23a(struct rtw_adapter *adapter); void rtw_update_registrypriv_dev_network23a(struct rtw_adapter *adapter); -void rtw_get_encrypt_decrypt_from_registrypriv23a(struct rtw_adapter *adapter); - void rtw_scan_timeout_handler23a(unsigned long data); void rtw_dynamic_check_timer_handler(unsigned long data); @@ -344,27 +314,23 @@ void rtw23a_free_mlme_priv_ie_data(struct mlme_priv *pmlmepriv); void _rtw_free_mlme_priv23a(struct mlme_priv *pmlmepriv); -struct wlan_network *rtw_alloc_network(struct mlme_priv *pmlmepriv, int gfp); +struct wlan_network *rtw_alloc_network(struct mlme_priv *pmlmepriv, gfp_t gfp); int rtw_if_up23a(struct rtw_adapter *padapter); int rtw_linked_check(struct rtw_adapter *padapter); -__le16 *rtw_get_capability23a_from_ie(u8 *ie); -__le16 *rtw_get_beacon_interval23a_from_ie(u8 *ie); - - void rtw_joinbss_reset23a(struct rtw_adapter *padapter); -unsigned int rtw_restructure_ht_ie23a(struct rtw_adapter *padapter, u8 *in_ie, - u8 *out_ie, uint in_len, uint *pout_len); +bool rtw_restructure_ht_ie23a(struct rtw_adapter *padapter, u8 *in_ie, + u8 *out_ie, uint in_len, uint *pout_len); void rtw_update_ht_cap23a(struct rtw_adapter *padapter, u8 *pie, uint ie_len); void rtw_issue_addbareq_cmd23a(struct rtw_adapter *padapter, struct xmit_frame *pxmitframe); -int rtw_is_same_ibss23a(struct rtw_adapter *adapter, - struct wlan_network *pnetwork); +bool rtw_is_same_ibss23a(struct rtw_adapter *adapter, + struct wlan_network *pnetwork); int is_same_network23a(struct wlan_bssid_ex *src, struct wlan_bssid_ex *dst); void rtw23a_roaming(struct rtw_adapter *adapter, diff --git a/drivers/staging/rtl8723au/include/rtw_mlme_ext.h b/drivers/staging/rtl8723au/include/rtw_mlme_ext.h index badbce09559d..2e32c832fd21 100644 --- a/drivers/staging/rtl8723au/include/rtw_mlme_ext.h +++ b/drivers/staging/rtl8723au/include/rtw_mlme_ext.h @@ -282,16 +282,6 @@ struct ss_res struct rtw_ieee80211_channel ch[RTW_CHANNEL_SCAN_AMOUNT]; }; -/* define AP_MODE 0x0C */ -/* define STATION_MODE 0x08 */ -/* define AD_HOC_MODE 0x04 */ -/* define NO_LINK_MODE 0x00 */ - -#define WIFI_FW_NULL_STATE _HW_STATE_NOLINK_ -#define WIFI_FW_STATION_STATE _HW_STATE_STATION_ -#define WIFI_FW_AP_STATE _HW_STATE_AP_ -#define WIFI_FW_ADHOC_STATE _HW_STATE_ADHOC_ - #define WIFI_FW_AUTH_NULL 0x00000100 #define WIFI_FW_AUTH_STATE 0x00000200 #define WIFI_FW_AUTH_SUCCESS 0x00000400 @@ -366,8 +356,8 @@ struct mlme_ext_info struct ADDBA_request ADDBA_req; struct WMM_para_element WMM_param; - struct HT_caps_element HT_caps; - struct HT_info_element HT_info; + struct ieee80211_ht_cap ht_cap; + struct ieee80211_ht_operation HT_info; struct wlan_bssid_ex network;/* join network or bss_network, if in ap mode, it is the same to cur_network.network */ struct FW_Sta_Info FW_sta_info[NUM_STA]; }; @@ -471,8 +461,6 @@ void get_rate_set23a(struct rtw_adapter *padapter, unsigned char *pbssrate, void UpdateBrateTbl23a(struct rtw_adapter *padapter,u8 *mBratesOS); void Update23aTblForSoftAP(u8 *bssrateset, u32 bssratelen); -void Set_MSR23a(struct rtw_adapter *padapter, u8 type); - u8 rtw_get_oper_ch23a(struct rtw_adapter *adapter); void rtw_set_oper_ch23a(struct rtw_adapter *adapter, u8 ch); u8 rtw_get_oper_bw23a(struct rtw_adapter *adapter); @@ -495,14 +483,10 @@ void flush_all_cam_entry23a(struct rtw_adapter *padapter); bool IsLegal5GChannel(struct rtw_adapter *Adapter, u8 channel); -int collect_bss_info23a(struct rtw_adapter *padapter, - struct recv_frame *precv_frame, - struct wlan_bssid_ex *bssid); void update_network23a(struct wlan_bssid_ex *dst, struct wlan_bssid_ex *src, struct rtw_adapter *padapter, bool update_ie); u8 *get_my_bssid23a(struct wlan_bssid_ex *pnetwork); -u16 get_beacon_interval23a(struct wlan_bssid_ex *bss); bool is_client_associated_to_ap23a(struct rtw_adapter *padapter); bool is_client_associated_to_ibss23a(struct rtw_adapter *padapter); @@ -510,18 +494,19 @@ bool is_IBSS_empty23a(struct rtw_adapter *padapter); unsigned char check_assoc_AP23a(u8 *pframe, uint len); -int WMM_param_handler23a(struct rtw_adapter *padapter, u8 *p); +int WMM_param_handler23a(struct rtw_adapter *padapter, const u8 *p); void WMMOnAssocRsp23a(struct rtw_adapter *padapter); -void HT_caps_handler23a(struct rtw_adapter *padapter, u8 *p); -void HT_info_handler23a(struct rtw_adapter *padapter, u8 *p); +void HT_caps_handler23a(struct rtw_adapter *padapter, const u8 *p); +void HT_info_handler23a(struct rtw_adapter *padapter, const u8 *p); void HTOnAssocRsp23a(struct rtw_adapter *padapter); -void ERP_IE_handler23a(struct rtw_adapter *padapter, u8 *p); +void ERP_IE_handler23a(struct rtw_adapter *padapter, const u8 *p); void VCS_update23a(struct rtw_adapter *padapter, struct sta_info *psta); -void update_beacon23a_info(struct rtw_adapter *padapter, u8 *pframe, uint len, - struct sta_info *psta); +void update_beacon23a_info(struct rtw_adapter *padapter, + struct ieee80211_mgmt *mgmt, uint len, + struct sta_info *psta); int rtw_check_bcn_info23a(struct rtw_adapter *Adapter, struct ieee80211_mgmt *mgmt, u32 packet_len); void update_IOT_info23a(struct rtw_adapter *padapter); @@ -536,7 +521,7 @@ int update_sta_support_rate23a(struct rtw_adapter *padapter, u8* pvar_ie, void update_sta_info23a(struct rtw_adapter *padapter, struct sta_info *psta); unsigned int update_basic_rate23a(unsigned char *ptn, unsigned int ptn_sz); unsigned int update_supported_rate23a(unsigned char *ptn, unsigned int ptn_sz); -unsigned int update_MSC_rate23a(struct HT_caps_element *pHT_caps); +unsigned int update_MSC_rate23a(struct ieee80211_ht_cap *ht_cap); void Update_RA_Entry23a(struct rtw_adapter *padapter, struct sta_info *psta); void set_sta_rate23a(struct rtw_adapter *padapter, struct sta_info *psta); @@ -545,7 +530,7 @@ int receive_disconnect23a(struct rtw_adapter *padapter, unsigned char get_highest_rate_idx23a(u32 mask); int support_short_GI23a(struct rtw_adapter *padapter, - struct HT_caps_element *pHT_caps); + struct ieee80211_ht_cap *ht_cap); bool is_ap_in_tkip23a(struct rtw_adapter *padapter); bool is_ap_in_wep23a(struct rtw_adapter *padapter); bool should_forbid_n_rate23a(struct rtw_adapter *padapter); diff --git a/drivers/staging/rtl8723au/include/rtw_pwrctrl.h b/drivers/staging/rtl8723au/include/rtw_pwrctrl.h index a458af978145..599fed9b365d 100644 --- a/drivers/staging/rtl8723au/include/rtw_pwrctrl.h +++ b/drivers/staging/rtl8723au/include/rtw_pwrctrl.h @@ -155,18 +155,14 @@ struct pwrctrl_priv { * read from HCPWM 2. driver lowers power level */ volatile u8 tog; /* toggling */ - volatile u8 cpwm_tog; /* toggling */ u8 pwr_mode; u8 smart_ps; u8 bcn_ant_mode; - u32 alives; - struct work_struct cpwm_event; u8 bpower_saving; u8 reg_rfoff; - u8 reg_pdnmode; /* powerdown mode */ u32 rfoff_reason; /* RF OFF Level */ @@ -188,8 +184,6 @@ struct pwrctrl_priv { u8 bFwCurrentInPSMode; unsigned long DelayLPSLastTimeStamp; u8 btcoex_rfon; - s32 pnp_current_pwr_state; - u8 pnp_bstop_trx; u8 bInSuspend; #ifdef CONFIG_8723AU_BT_COEXIST @@ -201,25 +195,13 @@ struct pwrctrl_priv { int pwr_state_check_interval; u8 pwr_state_check_cnts; - int ps_flag; - enum rt_rf_power_state rf_pwrstate;/* cur power state */ enum rt_rf_power_state change_rfpwrstate; - u8 wepkeymask; - u8 bHWPowerdown;/* if support hw power down */ - u8 bHWPwrPindetect; u8 bkeepfwalive; - u8 brfoffbyhw; unsigned long PS_BBRegBackup[PSBBREG_TOTALCNT]; }; -#define rtw_get_ips_mode_req(pwrctrlpriv) \ - ((pwrctrlpriv)->ips_mode_req) - -#define rtw_ips_mode_req(pwrctrlpriv, ips_mode) \ - ((pwrctrlpriv)->ips_mode_req = (ips_mode)) - #define RTW_PWR_STATE_CHK_INTERVAL 2000 #define _rtw_set_pwr_state_check_timer(pwrctrlpriv, ms) \ @@ -253,8 +235,6 @@ int _rtw_pwr_wakeup23a(struct rtw_adapter *padapter, u32 ips_deffer_ms, const char *caller); #define rtw_pwr_wakeup(adapter) _rtw_pwr_wakeup23a(adapter, \ RTW_PWR_STATE_CHK_INTERVAL, __func__) -#define rtw_pwr_wakeup_ex(adapter, ips_deffer_ms) \ - _rtw_pwr_wakeup23a(adapter, ips_deffer_ms, __func__) int rtw_pm_set_ips23a(struct rtw_adapter *padapter, u8 mode); int rtw_pm_set_lps23a(struct rtw_adapter *padapter, u8 mode); diff --git a/drivers/staging/rtl8723au/include/rtw_rf.h b/drivers/staging/rtl8723au/include/rtw_rf.h index 91a0a22a2709..a7de714137b8 100644 --- a/drivers/staging/rtl8723au/include/rtw_rf.h +++ b/drivers/staging/rtl8723au/include/rtw_rf.h @@ -89,17 +89,6 @@ enum ht_channel_width { HT_CHANNEL_WIDTH_10 = 4, }; -/* */ -/* Represent Extention Channel Offset in HT Capabilities */ -/* This is available only in 40Mhz mode. */ -/* */ -enum { - HT_EXTCHNL_OFFSET_NO_EXT = 0, - HT_EXTCHNL_OFFSET_UPPER = 1, - HT_EXTCHNL_OFFSET_NO_DEF = 2, - HT_EXTCHNL_OFFSET_LOWER = 3, -}; - /* 2007/11/15 MH Define different RF type. */ enum { RF_1T2R = 0, diff --git a/drivers/staging/rtl8723au/include/rtw_security.h b/drivers/staging/rtl8723au/include/rtw_security.h index 8b8433365e32..624a9d788e45 100644 --- a/drivers/staging/rtl8723au/include/rtw_security.h +++ b/drivers/staging/rtl8723au/include/rtw_security.h @@ -23,8 +23,6 @@ #define is_wep_enc(alg) (alg == WLAN_CIPHER_SUITE_WEP40 || \ alg == WLAN_CIPHER_SUITE_WEP104) -#define _WPA2_IE_ID_ 0x30 - #define SHA256_MAC_LEN 32 #define AES_BLOCK_SIZE 16 #define AES_PRIV_SIZE (4 * 44) @@ -145,7 +143,6 @@ struct security_priv { u8 assoc_info[600]; u8 szofcapability[256]; /* for wpa2 usage */ u8 oidassociation[512]; /* for wpa/wpa2 usage */ - u8 authenticator_ie[256]; /* store ap security information element */ u8 supplicant_ie[256]; /* store sta security information element */ /* for tkip countermeasure */ diff --git a/drivers/staging/rtl8723au/include/rtw_sreset.h b/drivers/staging/rtl8723au/include/rtw_sreset.h index 77cc7941b546..60fa8296e1ff 100644 --- a/drivers/staging/rtl8723au/include/rtw_sreset.h +++ b/drivers/staging/rtl8723au/include/rtw_sreset.h @@ -18,38 +18,18 @@ #include <osdep_service.h> #include <drv_types.h> -enum { - SRESET_TGP_NULL = 0, - SRESET_TGP_XMIT_STATUS = 1, - SRESET_TGP_LINK_STATUS = 2, -}; - struct sreset_priv { struct mutex silentreset_mutex; u8 silent_reset_inprogress; - u8 Wifi_Error_Status; unsigned long last_tx_time; unsigned long last_tx_complete_time; - - s32 dbg_trigger_point; }; #include <rtl8723a_hal.h> -#define WIFI_STATUS_SUCCESS 0 -#define USB_VEN_REQ_CMD_FAIL BIT(0) -#define USB_READ_PORT_FAIL BIT(1) -#define USB_WRITE_PORT_FAIL BIT(2) -#define WIFI_MAC_TXDMA_ERROR BIT(3) -#define WIFI_TX_HANG BIT(4) -#define WIFI_RX_HANG BIT(5) -#define WIFI_IF_NOT_EXIST BIT(6) - void rtw_sreset_init(struct rtw_adapter *padapter); void rtw_sreset_reset_value(struct rtw_adapter *padapter); -u8 rtw_sreset_get_wifi_status(struct rtw_adapter *padapter); bool rtw_sreset_inprogress(struct rtw_adapter *padapter); -void sreset_set_wifi_error_status23a(struct rtw_adapter *padapter, u32 status); void sreset_set_trigger_point(struct rtw_adapter *padapter, s32 tgp); void rtw_sreset_reset(struct rtw_adapter *active_adapter); diff --git a/drivers/staging/rtl8723au/include/sta_info.h b/drivers/staging/rtl8723au/include/sta_info.h index d1939a67390c..c756b4f7f5d5 100644 --- a/drivers/staging/rtl8723au/include/sta_info.h +++ b/drivers/staging/rtl8723au/include/sta_info.h @@ -362,7 +362,7 @@ static inline u32 wifi_mac_hash(const u8 *mac) int _rtw_init_sta_priv23a(struct sta_priv *pstapriv); int _rtw_free_sta_priv23a(struct sta_priv *pstapriv); -struct sta_info *rtw_alloc_stainfo23a(struct sta_priv *pstapriv, u8 *hwaddr, gfp_t gfp); +struct sta_info *rtw_alloc_stainfo23a(struct sta_priv *pstapriv, const u8 *hwaddr, gfp_t gfp); int rtw_free_stainfo23a(struct rtw_adapter *padapter, struct sta_info *psta); void rtw_free_all_stainfo23a(struct rtw_adapter *padapter); struct sta_info *rtw_get_stainfo23a(struct sta_priv *pstapriv, const u8 *hwaddr); diff --git a/drivers/staging/rtl8723au/include/usb_ops_linux.h b/drivers/staging/rtl8723au/include/usb_ops_linux.h index e540a4bad087..bf68bbb41f9c 100644 --- a/drivers/staging/rtl8723au/include/usb_ops_linux.h +++ b/drivers/staging/rtl8723au/include/usb_ops_linux.h @@ -29,13 +29,13 @@ int rtl8723au_write_port(struct rtw_adapter *padapter, u32 addr, u32 cnt, void rtl8723au_write_port_cancel(struct rtw_adapter *padapter); int rtl8723au_read_interrupt(struct rtw_adapter *adapter, u32 addr); -u8 rtl8723au_read8(struct rtw_adapter *padapter, u32 addr); -u16 rtl8723au_read16(struct rtw_adapter *padapter, u32 addr); -u32 rtl8723au_read32(struct rtw_adapter *padapter, u32 addr); -int rtl8723au_write8(struct rtw_adapter *padapter, u32 addr, u8 val); -int rtl8723au_write16(struct rtw_adapter *padapter, u32 addr, u16 val); -int rtl8723au_write32(struct rtw_adapter *padapter, u32 addr, u32 val); +u8 rtl8723au_read8(struct rtw_adapter *padapter, u16 addr); +u16 rtl8723au_read16(struct rtw_adapter *padapter, u16 addr); +u32 rtl8723au_read32(struct rtw_adapter *padapter, u16 addr); +int rtl8723au_write8(struct rtw_adapter *padapter, u16 addr, u8 val); +int rtl8723au_write16(struct rtw_adapter *padapter, u16 addr, u16 val); +int rtl8723au_write32(struct rtw_adapter *padapter, u16 addr, u32 val); int rtl8723au_writeN(struct rtw_adapter *padapter, - u32 addr, u32 length, u8 *pdata); + u16 addr, u16 length, u8 *pdata); #endif diff --git a/drivers/staging/rtl8723au/include/wifi.h b/drivers/staging/rtl8723au/include/wifi.h index cccea6a50b3a..fd3da3b5cf31 100644 --- a/drivers/staging/rtl8723au/include/wifi.h +++ b/drivers/staging/rtl8723au/include/wifi.h @@ -15,87 +15,16 @@ #ifndef _WIFI_H_ #define _WIFI_H_ -#define P80211CAPTURE_VERSION 0x80211001 - /* This value is tested by WiFi 11n Test Plan 5.2.3. * This test verifies the WLAN NIC can update the NAV through sending * the CTS with large duration. */ #define WiFiNavUpperUs 30000 /* 30 ms */ -#define _ASOCREQ_IE_OFFSET_ 4 /* excluding wlan_hdr */ -#define _ASOCRSP_IE_OFFSET_ 6 -#define _REASOCREQ_IE_OFFSET_ 10 -#define _REASOCRSP_IE_OFFSET_ 6 -#define _PROBEREQ_IE_OFFSET_ 0 -#define _PROBERSP_IE_OFFSET_ 12 -#define _AUTH_IE_OFFSET_ 6 -#define _DEAUTH_IE_OFFSET_ 0 -#define _BEACON_IE_OFFSET_ 12 -#define _PUBLIC_ACTION_IE_OFFSET_ 8 - -#define _FIXED_IE_LENGTH_ _BEACON_IE_OFFSET_ - - -#define EID_BSSIntolerantChlReport 73 - -/* --------------------------------------------------------------------------- - Below is the fixed elements... ------------------------------------------------------------------------------*/ -#define _AUTH_ALGM_NUM_ 2 -#define _AUTH_SEQ_NUM_ 2 -#define _BEACON_ITERVAL_ 2 -#define _CAPABILITY_ 2 -#define _CURRENT_APADDR_ 6 -#define _LISTEN_INTERVAL_ 2 -#define _ASOC_ID_ 2 -#define _STATUS_CODE_ 2 -#define _TIMESTAMP_ 8 - -/*----------------------------------------------------------------------------- - Below is the definition for WMM -------------------------------------------------------------------------------*/ -#define _WMM_IE_Length_ 7 /* for WMM STA */ -#define _WMM_Para_Element_Length_ 24 - - /*----------------------------------------------------------------------------- Below is the definition for 802.11n ------------------------------------------------------------------------------*/ -/* struct rtw_ieee80211_ht_cap - HT additional information - * - * This structure refers to "HT information element" as - * described in 802.11n draft section 7.3.2.53 - */ -struct ieee80211_ht_addt_info { - unsigned char control_chan; - unsigned char ht_param; - unsigned short operation_mode; - unsigned short stbc_param; - unsigned char basic_set[16]; -} __packed; - -struct HT_caps_element { - union { - struct { - unsigned short HT_caps_info; - unsigned char AMPDU_para; - unsigned char MCS_rate[16]; - unsigned short HT_ext_caps; - unsigned int Beamforming_caps; - unsigned char ASEL_caps; - } HT_cap_element; - unsigned char HT_cap[26]; - } u; -} __packed; - -struct HT_info_element { - unsigned char primary_channel; - unsigned char infos[5]; - unsigned char MCS_rate[16]; -} __packed; - struct AC_param { unsigned char ACI_AIFSN; unsigned char CW; diff --git a/drivers/staging/rtl8723au/include/wlan_bssdef.h b/drivers/staging/rtl8723au/include/wlan_bssdef.h index 664015d049e8..96e8074a7c18 100644 --- a/drivers/staging/rtl8723au/include/wlan_bssdef.h +++ b/drivers/staging/rtl8723au/include/wlan_bssdef.h @@ -83,8 +83,6 @@ struct wlan_bcn_info { int is_8021x; /* bwmode 20/40 and ch_offset UP/LOW */ - unsigned short ht_cap_info; - unsigned char ht_info_infos_0; }; struct wlan_bssid_ex { @@ -94,7 +92,9 @@ struct wlan_bssid_ex { struct cfg80211_ssid Ssid; u32 Privacy; long Rssi;/* in dBM, raw data , get from PHY) */ - u16 BeaconPeriod; /* units are Kusec */ + u16 beacon_interval; + u16 capability; + u64 tsf; u32 ATIMWindow; /* units are Kusec */ u32 DSConfig; /* Frequency, units are kHz */ enum nl80211_iftype ifmode; |