17 #include <linux/export.h>
41 { 0xfffffff0, 0xfffffff0, 0xfffffff0, 0xfffffff0 },
42 { 0x88888880, 0x88888880, 0x88888880, 0x88888880 },
43 { 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
48 { 0x01017d01, 0x41414101, 0x41414101, 0x41414141 },
49 { 0x01017d01, 0x3b3b3b01, 0x3b3b3b01, 0x3b3b3b3b },
50 { 0x01017d01, 0x01010101, 0x01010101, 0x01010101 },
51 { 0x01017d01, 0x013b0101, 0x3b3b0101, 0x3b3b013b },
59 .bt_txstate_extend =
true,
60 .bt_txframe_extend =
true,
62 .bt_quiet_collision =
true,
63 .bt_rxclear_polarity =
true,
64 .bt_priority_time = 2,
65 .bt_first_slot_time = 5,
66 .bt_hold_rx_clear =
true,
91 for (i = 0; i < 32; i++) {
92 idx = (debruijn32 << i) >> 27;
180 ah->btcoex_hw.mci.ready =
false;
181 ah->btcoex_hw.mci.bt_state = 0;
182 ah->btcoex_hw.mci.bt_ver_major = 3;
183 ah->btcoex_hw.mci.bt_ver_minor = 0;
184 ah->btcoex_hw.mci.bt_version_known =
false;
185 ah->btcoex_hw.mci.update_2g5g =
true;
186 ah->btcoex_hw.mci.is_2g =
true;
187 ah->btcoex_hw.mci.wlan_channels_update =
false;
188 ah->btcoex_hw.mci.wlan_channels[0] = 0x00000000;
189 ah->btcoex_hw.mci.wlan_channels[1] = 0xffffffff;
190 ah->btcoex_hw.mci.wlan_channels[2] = 0xffffffff;
191 ah->btcoex_hw.mci.wlan_channels[3] = 0x7fffffff;
192 ah->btcoex_hw.mci.query_bt =
true;
193 ah->btcoex_hw.mci.unhalt_bt_gpm =
true;
194 ah->btcoex_hw.mci.halted_bt_gpm =
false;
195 ah->btcoex_hw.mci.need_flush_btinfo =
false;
196 ah->btcoex_hw.mci.wlan_cal_seq = 0;
197 ah->btcoex_hw.mci.wlan_cal_done = 0;
198 ah->btcoex_hw.mci.
config = 0x2201;
202 static void ath9k_hw_btcoex_enable_2wire(
struct ath_hw *
ah)
223 const u32 *
weight = ar9003_wlan_weights[stomp_type];
228 btcoex_hw->
mci.stomp_ftp)
230 weight = mci_wlan_weights[stomp_type];
246 static void ath9k_hw_btcoex_enable_3wire(
struct ath_hw *
ah)
284 static void ath9k_hw_btcoex_enable_mci(
struct ath_hw *ah)
301 switch (ath9k_hw_get_btcoex_scheme(ah)) {
305 ath9k_hw_btcoex_enable_2wire(ah);
309 ath9k_hw_btcoex_enable_mci(ah);
312 ath9k_hw_btcoex_enable_3wire(ah);
320 ah->btcoex_hw.enabled =
true;
369 switch (stomp_type) {
383 ath_dbg(ath9k_hw_common(ah), BTCOEX,
"Invalid Stomptype\n");