aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rtlwifi
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/rtlwifi')
-rw-r--r--drivers/net/wireless/rtlwifi/core.c8
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192ce/sw.c12
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192ce/trx.h6
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192cu/mac.h6
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192de/sw.c12
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192de/trx.h6
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192se/def.h2
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192se/sw.c14
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192se/trx.c2
-rw-r--r--drivers/net/wireless/rtlwifi/usb.c1
-rw-r--r--drivers/net/wireless/rtlwifi/wifi.h6
11 files changed, 39 insertions, 36 deletions
diff --git a/drivers/net/wireless/rtlwifi/core.c b/drivers/net/wireless/rtlwifi/core.c
index 04c4e9eb6ee6..21e40f62a8d7 100644
--- a/drivers/net/wireless/rtlwifi/core.c
+++ b/drivers/net/wireless/rtlwifi/core.c
@@ -775,7 +775,7 @@ out:
775 mutex_unlock(&rtlpriv->locks.conf_mutex); 775 mutex_unlock(&rtlpriv->locks.conf_mutex);
776} 776}
777 777
778static u64 rtl_op_get_tsf(struct ieee80211_hw *hw) 778static u64 rtl_op_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
779{ 779{
780 struct rtl_priv *rtlpriv = rtl_priv(hw); 780 struct rtl_priv *rtlpriv = rtl_priv(hw);
781 u64 tsf; 781 u64 tsf;
@@ -784,7 +784,8 @@ static u64 rtl_op_get_tsf(struct ieee80211_hw *hw)
784 return tsf; 784 return tsf;
785} 785}
786 786
787static void rtl_op_set_tsf(struct ieee80211_hw *hw, u64 tsf) 787static void rtl_op_set_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
788 u64 tsf)
788{ 789{
789 struct rtl_priv *rtlpriv = rtl_priv(hw); 790 struct rtl_priv *rtlpriv = rtl_priv(hw);
790 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); 791 struct rtl_mac *mac = rtl_mac(rtl_priv(hw));
@@ -794,7 +795,8 @@ static void rtl_op_set_tsf(struct ieee80211_hw *hw, u64 tsf)
794 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_CORRECT_TSF, (u8 *) (&bibss)); 795 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_CORRECT_TSF, (u8 *) (&bibss));
795} 796}
796 797
797static void rtl_op_reset_tsf(struct ieee80211_hw *hw) 798static void rtl_op_reset_tsf(struct ieee80211_hw *hw,
799 struct ieee80211_vif *vif)
798{ 800{
799 struct rtl_priv *rtlpriv = rtl_priv(hw); 801 struct rtl_priv *rtlpriv = rtl_priv(hw);
800 u8 tmp = 0; 802 u8 tmp = 0;
diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/sw.c b/drivers/net/wireless/rtlwifi/rtl8192ce/sw.c
index 4c34c4c1ae56..b7ecb9e44aa9 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192ce/sw.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192ce/sw.c
@@ -133,6 +133,10 @@ int rtl92c_init_sw_vars(struct ieee80211_hw *hw)
133 rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps; 133 rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps;
134 rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps; 134 rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps;
135 rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps; 135 rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps;
136 if (!rtlpriv->psc.inactiveps)
137 pr_info("rtl8192ce: Power Save off (module option)\n");
138 if (!rtlpriv->psc.fwctrl_lps)
139 pr_info("rtl8192ce: FW Power Save off (module option)\n");
136 rtlpriv->psc.reg_fwctrl_lps = 3; 140 rtlpriv->psc.reg_fwctrl_lps = 3;
137 rtlpriv->psc.reg_max_lps_awakeintvl = 5; 141 rtlpriv->psc.reg_max_lps_awakeintvl = 5;
138 /* for ASPM, you can close aspm through 142 /* for ASPM, you can close aspm through
@@ -356,10 +360,10 @@ module_param_named(swenc, rtl92ce_mod_params.sw_crypto, bool, 0444);
356module_param_named(ips, rtl92ce_mod_params.inactiveps, bool, 0444); 360module_param_named(ips, rtl92ce_mod_params.inactiveps, bool, 0444);
357module_param_named(swlps, rtl92ce_mod_params.swctrl_lps, bool, 0444); 361module_param_named(swlps, rtl92ce_mod_params.swctrl_lps, bool, 0444);
358module_param_named(fwlps, rtl92ce_mod_params.fwctrl_lps, bool, 0444); 362module_param_named(fwlps, rtl92ce_mod_params.fwctrl_lps, bool, 0444);
359MODULE_PARM_DESC(swenc, "using hardware crypto (default 0 [hardware])\n"); 363MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n");
360MODULE_PARM_DESC(ips, "using no link power save (default 1 is open)\n"); 364MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n");
361MODULE_PARM_DESC(fwlps, "using linked fw control power save " 365MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n");
362 "(default 1 is open)\n"); 366MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n");
363 367
364static struct pci_driver rtl92ce_driver = { 368static struct pci_driver rtl92ce_driver = {
365 .name = KBUILD_MODNAME, 369 .name = KBUILD_MODNAME,
diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/trx.h b/drivers/net/wireless/rtlwifi/rtl8192ce/trx.h
index 81ae64234f80..c8977a50ca36 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192ce/trx.h
+++ b/drivers/net/wireless/rtlwifi/rtl8192ce/trx.h
@@ -537,12 +537,6 @@ do { \
537 memset(__pdesc, 0, _size); \ 537 memset(__pdesc, 0, _size); \
538} while (0); 538} while (0);
539 539
540#define RX_HAL_IS_CCK_RATE(_pdesc)\
541 (_pdesc->rxmcs == DESC92_RATE1M || \
542 _pdesc->rxmcs == DESC92_RATE2M || \
543 _pdesc->rxmcs == DESC92_RATE5_5M || \
544 _pdesc->rxmcs == DESC92_RATE11M)
545
546struct rx_fwinfo_92c { 540struct rx_fwinfo_92c {
547 u8 gain_trsw[4]; 541 u8 gain_trsw[4];
548 u8 pwdb_all; 542 u8 pwdb_all;
diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/mac.h b/drivers/net/wireless/rtlwifi/rtl8192cu/mac.h
index 35529f701fc0..626d88e88e26 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192cu/mac.h
+++ b/drivers/net/wireless/rtlwifi/rtl8192cu/mac.h
@@ -87,12 +87,6 @@ void rtl92c_set_data_filter(struct ieee80211_hw *hw, u16 filter);
87 87
88u32 rtl92c_get_txdma_status(struct ieee80211_hw *hw); 88u32 rtl92c_get_txdma_status(struct ieee80211_hw *hw);
89 89
90#define RX_HAL_IS_CCK_RATE(_pdesc)\
91 (GET_RX_DESC_RX_MCS(_pdesc) == DESC92_RATE1M ||\
92 GET_RX_DESC_RX_MCS(_pdesc) == DESC92_RATE2M ||\
93 GET_RX_DESC_RX_MCS(_pdesc) == DESC92_RATE5_5M ||\
94 GET_RX_DESC_RX_MCS(_pdesc) == DESC92_RATE11M)
95
96struct rx_fwinfo_92c { 90struct rx_fwinfo_92c {
97 u8 gain_trsw[4]; 91 u8 gain_trsw[4];
98 u8 pwdb_all; 92 u8 pwdb_all;
diff --git a/drivers/net/wireless/rtlwifi/rtl8192de/sw.c b/drivers/net/wireless/rtlwifi/rtl8192de/sw.c
index f6419b7ed2f4..c681597c7f20 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192de/sw.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192de/sw.c
@@ -150,6 +150,10 @@ static int rtl92d_init_sw_vars(struct ieee80211_hw *hw)
150 rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps; 150 rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps;
151 rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps; 151 rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps;
152 rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps; 152 rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps;
153 if (!rtlpriv->psc.inactiveps)
154 pr_info("rtl8192ce: Power Save off (module option)\n");
155 if (!rtlpriv->psc.fwctrl_lps)
156 pr_info("rtl8192ce: FW Power Save off (module option)\n");
153 rtlpriv->psc.reg_fwctrl_lps = 3; 157 rtlpriv->psc.reg_fwctrl_lps = 3;
154 rtlpriv->psc.reg_max_lps_awakeintvl = 5; 158 rtlpriv->psc.reg_max_lps_awakeintvl = 5;
155 /* for ASPM, you can close aspm through 159 /* for ASPM, you can close aspm through
@@ -376,10 +380,10 @@ module_param_named(swenc, rtl92de_mod_params.sw_crypto, bool, 0444);
376module_param_named(ips, rtl92de_mod_params.inactiveps, bool, 0444); 380module_param_named(ips, rtl92de_mod_params.inactiveps, bool, 0444);
377module_param_named(swlps, rtl92de_mod_params.swctrl_lps, bool, 0444); 381module_param_named(swlps, rtl92de_mod_params.swctrl_lps, bool, 0444);
378module_param_named(fwlps, rtl92de_mod_params.fwctrl_lps, bool, 0444); 382module_param_named(fwlps, rtl92de_mod_params.fwctrl_lps, bool, 0444);
379MODULE_PARM_DESC(swenc, "using hardware crypto (default 0 [hardware])\n"); 383MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n");
380MODULE_PARM_DESC(ips, "using no link power save (default 1 is open)\n"); 384MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n");
381MODULE_PARM_DESC(swlps, "using linked sw control power save (default 1" 385MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n");
382 " is open)\n"); 386MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n");
383 387
384static struct pci_driver rtl92de_driver = { 388static struct pci_driver rtl92de_driver = {
385 .name = KBUILD_MODNAME, 389 .name = KBUILD_MODNAME,
diff --git a/drivers/net/wireless/rtlwifi/rtl8192de/trx.h b/drivers/net/wireless/rtlwifi/rtl8192de/trx.h
index 6c2236868c9a..4d55d0b6816d 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192de/trx.h
+++ b/drivers/net/wireless/rtlwifi/rtl8192de/trx.h
@@ -537,12 +537,6 @@ do { \
537 memset((void *)__pdesc, 0, _size); \ 537 memset((void *)__pdesc, 0, _size); \
538} while (0); 538} while (0);
539 539
540#define RX_HAL_IS_CCK_RATE(_pdesc)\
541 (_pdesc->rxmcs == DESC92_RATE1M || \
542 _pdesc->rxmcs == DESC92_RATE2M || \
543 _pdesc->rxmcs == DESC92_RATE5_5M || \
544 _pdesc->rxmcs == DESC92_RATE11M)
545
546/* For 92D early mode */ 540/* For 92D early mode */
547#define SET_EARLYMODE_PKTNUM(__paddr, __value) \ 541#define SET_EARLYMODE_PKTNUM(__paddr, __value) \
548 SET_BITS_OFFSET_LE(__paddr, 0, 3, __value) 542 SET_BITS_OFFSET_LE(__paddr, 0, 3, __value)
diff --git a/drivers/net/wireless/rtlwifi/rtl8192se/def.h b/drivers/net/wireless/rtlwifi/rtl8192se/def.h
index 68204ea175dd..c6c044816d39 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192se/def.h
+++ b/drivers/net/wireless/rtlwifi/rtl8192se/def.h
@@ -459,7 +459,7 @@ do { \
459#define SET_RX_STATUS__DESC_BUFF_ADDR(__pdesc, __val) \ 459#define SET_RX_STATUS__DESC_BUFF_ADDR(__pdesc, __val) \
460 SET_BITS_OFFSET_LE(__pdesc + 24, 0, 32, __val) 460 SET_BITS_OFFSET_LE(__pdesc + 24, 0, 32, __val)
461 461
462#define RX_HAL_IS_CCK_RATE(_pdesc)\ 462#define SE_RX_HAL_IS_CCK_RATE(_pdesc)\
463 (GET_RX_STATUS_DESC_RX_MCS(_pdesc) == DESC92_RATE1M || \ 463 (GET_RX_STATUS_DESC_RX_MCS(_pdesc) == DESC92_RATE1M || \
464 GET_RX_STATUS_DESC_RX_MCS(_pdesc) == DESC92_RATE2M || \ 464 GET_RX_STATUS_DESC_RX_MCS(_pdesc) == DESC92_RATE2M || \
465 GET_RX_STATUS_DESC_RX_MCS(_pdesc) == DESC92_RATE5_5M ||\ 465 GET_RX_STATUS_DESC_RX_MCS(_pdesc) == DESC92_RATE5_5M ||\
diff --git a/drivers/net/wireless/rtlwifi/rtl8192se/sw.c b/drivers/net/wireless/rtlwifi/rtl8192se/sw.c
index 0055a1c845a2..24bd331a5484 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192se/sw.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192se/sw.c
@@ -164,6 +164,10 @@ static int rtl92s_init_sw_vars(struct ieee80211_hw *hw)
164 rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps; 164 rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps;
165 rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps; 165 rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps;
166 rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps; 166 rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps;
167 if (!rtlpriv->psc.inactiveps)
168 pr_info("rtl8192ce: Power Save off (module option)\n");
169 if (!rtlpriv->psc.fwctrl_lps)
170 pr_info("rtl8192ce: FW Power Save off (module option)\n");
167 rtlpriv->psc.reg_fwctrl_lps = 3; 171 rtlpriv->psc.reg_fwctrl_lps = 3;
168 rtlpriv->psc.reg_max_lps_awakeintvl = 5; 172 rtlpriv->psc.reg_max_lps_awakeintvl = 5;
169 /* for ASPM, you can close aspm through 173 /* for ASPM, you can close aspm through
@@ -378,6 +382,7 @@ MODULE_DEVICE_TABLE(pci, rtl92se_pci_ids);
378 382
379MODULE_AUTHOR("lizhaoming <chaoming_li@realsil.com.cn>"); 383MODULE_AUTHOR("lizhaoming <chaoming_li@realsil.com.cn>");
380MODULE_AUTHOR("Realtek WlanFAE <wlanfae@realtek.com>"); 384MODULE_AUTHOR("Realtek WlanFAE <wlanfae@realtek.com>");
385MODULE_AUTHOR("Larry Finger <Larry.Finger@lwfinger.net>");
381MODULE_LICENSE("GPL"); 386MODULE_LICENSE("GPL");
382MODULE_DESCRIPTION("Realtek 8192S/8191S 802.11n PCI wireless"); 387MODULE_DESCRIPTION("Realtek 8192S/8191S 802.11n PCI wireless");
383MODULE_FIRMWARE("rtlwifi/rtl8192sefw.bin"); 388MODULE_FIRMWARE("rtlwifi/rtl8192sefw.bin");
@@ -386,11 +391,10 @@ module_param_named(swenc, rtl92se_mod_params.sw_crypto, bool, 0444);
386module_param_named(ips, rtl92se_mod_params.inactiveps, bool, 0444); 391module_param_named(ips, rtl92se_mod_params.inactiveps, bool, 0444);
387module_param_named(swlps, rtl92se_mod_params.swctrl_lps, bool, 0444); 392module_param_named(swlps, rtl92se_mod_params.swctrl_lps, bool, 0444);
388module_param_named(fwlps, rtl92se_mod_params.fwctrl_lps, bool, 0444); 393module_param_named(fwlps, rtl92se_mod_params.fwctrl_lps, bool, 0444);
389MODULE_PARM_DESC(swenc, "using hardware crypto (default 0 [hardware])\n"); 394MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n");
390MODULE_PARM_DESC(ips, "using no link power save (default 1 is open)\n"); 395MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n");
391MODULE_PARM_DESC(swlps, "using linked sw control power save (default 1 is " 396MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n");
392 "open)\n"); 397MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n");
393
394 398
395static struct pci_driver rtl92se_driver = { 399static struct pci_driver rtl92se_driver = {
396 .name = KBUILD_MODNAME, 400 .name = KBUILD_MODNAME,
diff --git a/drivers/net/wireless/rtlwifi/rtl8192se/trx.c b/drivers/net/wireless/rtlwifi/rtl8192se/trx.c
index d9aeae7f8bdb..ba137da082b5 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192se/trx.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192se/trx.c
@@ -126,7 +126,7 @@ static void _rtl92se_query_rxphystatus(struct ieee80211_hw *hw,
126 bool in_powersavemode = false; 126 bool in_powersavemode = false;
127 bool is_cck_rate; 127 bool is_cck_rate;
128 128
129 is_cck_rate = RX_HAL_IS_CCK_RATE(pdesc); 129 is_cck_rate = SE_RX_HAL_IS_CCK_RATE(pdesc);
130 pstats->packet_matchbssid = packet_match_bssid; 130 pstats->packet_matchbssid = packet_match_bssid;
131 pstats->packet_toself = packet_toself; 131 pstats->packet_toself = packet_toself;
132 pstats->is_cck = is_cck_rate; 132 pstats->is_cck = is_cck_rate;
diff --git a/drivers/net/wireless/rtlwifi/usb.c b/drivers/net/wireless/rtlwifi/usb.c
index 8b1cef0ffde6..4bf3cf457ef0 100644
--- a/drivers/net/wireless/rtlwifi/usb.c
+++ b/drivers/net/wireless/rtlwifi/usb.c
@@ -863,6 +863,7 @@ static void _rtl_usb_tx_preprocess(struct ieee80211_hw *hw, struct sk_buff *skb,
863 u8 tid = 0; 863 u8 tid = 0;
864 u16 seq_number = 0; 864 u16 seq_number = 0;
865 865
866 memset(&tcb_desc, 0, sizeof(struct rtl_tcb_desc));
866 if (ieee80211_is_auth(fc)) { 867 if (ieee80211_is_auth(fc)) {
867 RT_TRACE(rtlpriv, COMP_SEND, DBG_DMESG, ("MAC80211_LINKING\n")); 868 RT_TRACE(rtlpriv, COMP_SEND, DBG_DMESG, ("MAC80211_LINKING\n"));
868 rtl_ips_nic_on(hw); 869 rtl_ips_nic_on(hw);
diff --git a/drivers/net/wireless/rtlwifi/wifi.h b/drivers/net/wireless/rtlwifi/wifi.h
index 8a9091968f31..615f6b4463e6 100644
--- a/drivers/net/wireless/rtlwifi/wifi.h
+++ b/drivers/net/wireless/rtlwifi/wifi.h
@@ -165,6 +165,12 @@ enum hardware_type {
165#define IS_HARDWARE_TYPE_8723U(rtlhal) \ 165#define IS_HARDWARE_TYPE_8723U(rtlhal) \
166 (rtlhal->hw_type == HARDWARE_TYPE_RTL8723U) 166 (rtlhal->hw_type == HARDWARE_TYPE_RTL8723U)
167 167
168#define RX_HAL_IS_CCK_RATE(_pdesc)\
169 (_pdesc->rxmcs == DESC92_RATE1M || \
170 _pdesc->rxmcs == DESC92_RATE2M || \
171 _pdesc->rxmcs == DESC92_RATE5_5M || \
172 _pdesc->rxmcs == DESC92_RATE11M)
173
168enum scan_operation_backup_opt { 174enum scan_operation_backup_opt {
169 SCAN_OPT_BACKUP = 0, 175 SCAN_OPT_BACKUP = 0,
170 SCAN_OPT_RESTORE, 176 SCAN_OPT_RESTORE,