diff options
author | Larry Finger <Larry.Finger@lwfinger.net> | 2011-08-22 17:50:15 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-08-24 14:57:19 -0400 |
commit | 78851b66b1f4c00fe324d53ae55dbf5bf9a02e27 (patch) | |
tree | 59f0ff494b8172b4755bb10b3f457dd93b532ff7 | |
parent | 7ad0ce3576edb2ea65bd5c93a83c4a6afaa1dd76 (diff) |
rtlwifi: rtl8192ce: Convert to use the new rate-mapping routine in rtlwifi
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Chaoming Li <chaoming_li@realsil.com.cn>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192ce/sw.c | 30 | ||||
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192ce/trx.c | 116 | ||||
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192ce/trx.h | 8 |
3 files changed, 27 insertions, 127 deletions
diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/sw.c b/drivers/net/wireless/rtlwifi/rtl8192ce/sw.c index 373dc78af1dc..4c34c4c1ae56 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192ce/sw.c +++ b/drivers/net/wireless/rtlwifi/rtl8192ce/sw.c | |||
@@ -318,21 +318,21 @@ static struct rtl_hal_cfg rtl92ce_hal_cfg = { | |||
318 | .maps[RTL_IMR_ROK] = IMR_ROK, | 318 | .maps[RTL_IMR_ROK] = IMR_ROK, |
319 | .maps[RTL_IBSS_INT_MASKS] = (IMR_BCNINT | IMR_TBDOK | IMR_TBDER), | 319 | .maps[RTL_IBSS_INT_MASKS] = (IMR_BCNINT | IMR_TBDOK | IMR_TBDER), |
320 | 320 | ||
321 | .maps[RTL_RC_CCK_RATE1M] = DESC92C_RATE1M, | 321 | .maps[RTL_RC_CCK_RATE1M] = DESC92_RATE1M, |
322 | .maps[RTL_RC_CCK_RATE2M] = DESC92C_RATE2M, | 322 | .maps[RTL_RC_CCK_RATE2M] = DESC92_RATE2M, |
323 | .maps[RTL_RC_CCK_RATE5_5M] = DESC92C_RATE5_5M, | 323 | .maps[RTL_RC_CCK_RATE5_5M] = DESC92_RATE5_5M, |
324 | .maps[RTL_RC_CCK_RATE11M] = DESC92C_RATE11M, | 324 | .maps[RTL_RC_CCK_RATE11M] = DESC92_RATE11M, |
325 | .maps[RTL_RC_OFDM_RATE6M] = DESC92C_RATE6M, | 325 | .maps[RTL_RC_OFDM_RATE6M] = DESC92_RATE6M, |
326 | .maps[RTL_RC_OFDM_RATE9M] = DESC92C_RATE9M, | 326 | .maps[RTL_RC_OFDM_RATE9M] = DESC92_RATE9M, |
327 | .maps[RTL_RC_OFDM_RATE12M] = DESC92C_RATE12M, | 327 | .maps[RTL_RC_OFDM_RATE12M] = DESC92_RATE12M, |
328 | .maps[RTL_RC_OFDM_RATE18M] = DESC92C_RATE18M, | 328 | .maps[RTL_RC_OFDM_RATE18M] = DESC92_RATE18M, |
329 | .maps[RTL_RC_OFDM_RATE24M] = DESC92C_RATE24M, | 329 | .maps[RTL_RC_OFDM_RATE24M] = DESC92_RATE24M, |
330 | .maps[RTL_RC_OFDM_RATE36M] = DESC92C_RATE36M, | 330 | .maps[RTL_RC_OFDM_RATE36M] = DESC92_RATE36M, |
331 | .maps[RTL_RC_OFDM_RATE48M] = DESC92C_RATE48M, | 331 | .maps[RTL_RC_OFDM_RATE48M] = DESC92_RATE48M, |
332 | .maps[RTL_RC_OFDM_RATE54M] = DESC92C_RATE54M, | 332 | .maps[RTL_RC_OFDM_RATE54M] = DESC92_RATE54M, |
333 | 333 | ||
334 | .maps[RTL_RC_HT_RATEMCS7] = DESC92C_RATEMCS7, | 334 | .maps[RTL_RC_HT_RATEMCS7] = DESC92_RATEMCS7, |
335 | .maps[RTL_RC_HT_RATEMCS15] = DESC92C_RATEMCS15, | 335 | .maps[RTL_RC_HT_RATEMCS15] = DESC92_RATEMCS15, |
336 | }; | 336 | }; |
337 | 337 | ||
338 | DEFINE_PCI_DEVICE_TABLE(rtl92ce_pci_ids) = { | 338 | DEFINE_PCI_DEVICE_TABLE(rtl92ce_pci_ids) = { |
diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c b/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c index 230bbe900d8d..4fb5ae24dee0 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c +++ b/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c | |||
@@ -48,104 +48,6 @@ static u8 _rtl92ce_map_hwqueue_to_fwqueue(struct sk_buff *skb, u8 hw_queue) | |||
48 | return skb->priority; | 48 | return skb->priority; |
49 | } | 49 | } |
50 | 50 | ||
51 | static int _rtl92ce_rate_mapping(bool isht, u8 desc_rate, bool first_ampdu) | ||
52 | { | ||
53 | int rate_idx; | ||
54 | |||
55 | if (first_ampdu) { | ||
56 | if (false == isht) { | ||
57 | switch (desc_rate) { | ||
58 | case DESC92C_RATE1M: | ||
59 | rate_idx = 0; | ||
60 | break; | ||
61 | case DESC92C_RATE2M: | ||
62 | rate_idx = 1; | ||
63 | break; | ||
64 | case DESC92C_RATE5_5M: | ||
65 | rate_idx = 2; | ||
66 | break; | ||
67 | case DESC92C_RATE11M: | ||
68 | rate_idx = 3; | ||
69 | break; | ||
70 | case DESC92C_RATE6M: | ||
71 | rate_idx = 4; | ||
72 | break; | ||
73 | case DESC92C_RATE9M: | ||
74 | rate_idx = 5; | ||
75 | break; | ||
76 | case DESC92C_RATE12M: | ||
77 | rate_idx = 6; | ||
78 | break; | ||
79 | case DESC92C_RATE18M: | ||
80 | rate_idx = 7; | ||
81 | break; | ||
82 | case DESC92C_RATE24M: | ||
83 | rate_idx = 8; | ||
84 | break; | ||
85 | case DESC92C_RATE36M: | ||
86 | rate_idx = 9; | ||
87 | break; | ||
88 | case DESC92C_RATE48M: | ||
89 | rate_idx = 10; | ||
90 | break; | ||
91 | case DESC92C_RATE54M: | ||
92 | rate_idx = 11; | ||
93 | break; | ||
94 | default: | ||
95 | rate_idx = 0; | ||
96 | break; | ||
97 | } | ||
98 | } else { | ||
99 | rate_idx = 11; | ||
100 | } | ||
101 | |||
102 | return rate_idx; | ||
103 | } | ||
104 | |||
105 | switch (desc_rate) { | ||
106 | case DESC92C_RATE1M: | ||
107 | rate_idx = 0; | ||
108 | break; | ||
109 | case DESC92C_RATE2M: | ||
110 | rate_idx = 1; | ||
111 | break; | ||
112 | case DESC92C_RATE5_5M: | ||
113 | rate_idx = 2; | ||
114 | break; | ||
115 | case DESC92C_RATE11M: | ||
116 | rate_idx = 3; | ||
117 | break; | ||
118 | case DESC92C_RATE6M: | ||
119 | rate_idx = 4; | ||
120 | break; | ||
121 | case DESC92C_RATE9M: | ||
122 | rate_idx = 5; | ||
123 | break; | ||
124 | case DESC92C_RATE12M: | ||
125 | rate_idx = 6; | ||
126 | break; | ||
127 | case DESC92C_RATE18M: | ||
128 | rate_idx = 7; | ||
129 | break; | ||
130 | case DESC92C_RATE24M: | ||
131 | rate_idx = 8; | ||
132 | break; | ||
133 | case DESC92C_RATE36M: | ||
134 | rate_idx = 9; | ||
135 | break; | ||
136 | case DESC92C_RATE48M: | ||
137 | rate_idx = 10; | ||
138 | break; | ||
139 | case DESC92C_RATE54M: | ||
140 | rate_idx = 11; | ||
141 | break; | ||
142 | default: | ||
143 | rate_idx = 11; | ||
144 | break; | ||
145 | } | ||
146 | return rate_idx; | ||
147 | } | ||
148 | |||
149 | static u8 _rtl92c_query_rxpwrpercentage(char antpower) | 51 | static u8 _rtl92c_query_rxpwrpercentage(char antpower) |
150 | { | 52 | { |
151 | if ((antpower <= -100) || (antpower >= 20)) | 53 | if ((antpower <= -100) || (antpower >= 20)) |
@@ -336,8 +238,8 @@ static void _rtl92ce_query_rxphystatus(struct ieee80211_hw *hw, | |||
336 | pstats->rxpower = rx_pwr_all; | 238 | pstats->rxpower = rx_pwr_all; |
337 | pstats->recvsignalpower = rx_pwr_all; | 239 | pstats->recvsignalpower = rx_pwr_all; |
338 | 240 | ||
339 | if (pdesc->rxht && pdesc->rxmcs >= DESC92C_RATEMCS8 && | 241 | if (pdesc->rxht && pdesc->rxmcs >= DESC92_RATEMCS8 && |
340 | pdesc->rxmcs <= DESC92C_RATEMCS15) | 242 | pdesc->rxmcs <= DESC92_RATEMCS15) |
341 | max_spatial_stream = 2; | 243 | max_spatial_stream = 2; |
342 | else | 244 | else |
343 | max_spatial_stream = 1; | 245 | max_spatial_stream = 1; |
@@ -670,12 +572,10 @@ bool rtl92ce_rx_query_desc(struct ieee80211_hw *hw, | |||
670 | if (stats->decrypted) | 572 | if (stats->decrypted) |
671 | rx_status->flag |= RX_FLAG_DECRYPTED; | 573 | rx_status->flag |= RX_FLAG_DECRYPTED; |
672 | 574 | ||
673 | rx_status->rate_idx = _rtl92ce_rate_mapping((bool) | 575 | rx_status->rate_idx = rtlwifi_rate_mapping(hw, |
674 | GET_RX_DESC_RXHT(pdesc), | 576 | (bool)GET_RX_DESC_RXHT(pdesc), |
675 | (u8) | 577 | (u8)GET_RX_DESC_RXMCS(pdesc), |
676 | GET_RX_DESC_RXMCS(pdesc), | 578 | (bool)GET_RX_DESC_PAGGR(pdesc)); |
677 | (bool) | ||
678 | GET_RX_DESC_PAGGR(pdesc)); | ||
679 | 579 | ||
680 | rx_status->mactime = GET_RX_DESC_TSFL(pdesc); | 580 | rx_status->mactime = GET_RX_DESC_TSFL(pdesc); |
681 | if (phystatus) { | 581 | if (phystatus) { |
@@ -768,7 +668,7 @@ void rtl92ce_tx_fill_desc(struct ieee80211_hw *hw, | |||
768 | SET_TX_DESC_RTS_BW(pdesc, 0); | 668 | SET_TX_DESC_RTS_BW(pdesc, 0); |
769 | SET_TX_DESC_RTS_SC(pdesc, tcb_desc->rts_sc); | 669 | SET_TX_DESC_RTS_SC(pdesc, tcb_desc->rts_sc); |
770 | SET_TX_DESC_RTS_SHORT(pdesc, | 670 | SET_TX_DESC_RTS_SHORT(pdesc, |
771 | ((tcb_desc->rts_rate <= DESC92C_RATE54M) ? | 671 | ((tcb_desc->rts_rate <= DESC92_RATE54M) ? |
772 | (tcb_desc->rts_use_shortpreamble ? 1 : 0) | 672 | (tcb_desc->rts_use_shortpreamble ? 1 : 0) |
773 | : (tcb_desc->rts_use_shortgi ? 1 : 0))); | 673 | : (tcb_desc->rts_use_shortgi ? 1 : 0))); |
774 | 674 | ||
@@ -886,7 +786,7 @@ void rtl92ce_tx_fill_cmddesc(struct ieee80211_hw *hw, | |||
886 | if (firstseg) | 786 | if (firstseg) |
887 | SET_TX_DESC_OFFSET(pdesc, USB_HWDESC_HEADER_LEN); | 787 | SET_TX_DESC_OFFSET(pdesc, USB_HWDESC_HEADER_LEN); |
888 | 788 | ||
889 | SET_TX_DESC_TX_RATE(pdesc, DESC92C_RATE1M); | 789 | SET_TX_DESC_TX_RATE(pdesc, DESC92_RATE1M); |
890 | 790 | ||
891 | SET_TX_DESC_SEQ(pdesc, 0); | 791 | SET_TX_DESC_SEQ(pdesc, 0); |
892 | 792 | ||
diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/trx.h b/drivers/net/wireless/rtlwifi/rtl8192ce/trx.h index 0f1177137501..81ae64234f80 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192ce/trx.h +++ b/drivers/net/wireless/rtlwifi/rtl8192ce/trx.h | |||
@@ -538,10 +538,10 @@ do { \ | |||
538 | } while (0); | 538 | } while (0); |
539 | 539 | ||
540 | #define RX_HAL_IS_CCK_RATE(_pdesc)\ | 540 | #define RX_HAL_IS_CCK_RATE(_pdesc)\ |
541 | (_pdesc->rxmcs == DESC92C_RATE1M || \ | 541 | (_pdesc->rxmcs == DESC92_RATE1M || \ |
542 | _pdesc->rxmcs == DESC92C_RATE2M || \ | 542 | _pdesc->rxmcs == DESC92_RATE2M || \ |
543 | _pdesc->rxmcs == DESC92C_RATE5_5M || \ | 543 | _pdesc->rxmcs == DESC92_RATE5_5M || \ |
544 | _pdesc->rxmcs == DESC92C_RATE11M) | 544 | _pdesc->rxmcs == DESC92_RATE11M) |
545 | 545 | ||
546 | struct rx_fwinfo_92c { | 546 | struct rx_fwinfo_92c { |
547 | u8 gain_trsw[4]; | 547 | u8 gain_trsw[4]; |