|
@@ -54,8 +54,39 @@ enum ath_btcoex_scheme {
|
|
ATH_BTCOEX_CFG_MCI,
|
|
ATH_BTCOEX_CFG_MCI,
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+struct ath9k_hw_mci {
|
|
|
|
+ u32 raw_intr;
|
|
|
|
+ u32 rx_msg_intr;
|
|
|
|
+ u32 cont_status;
|
|
|
|
+ u32 gpm_addr;
|
|
|
|
+ u32 gpm_len;
|
|
|
|
+ u32 gpm_idx;
|
|
|
|
+ u32 sched_addr;
|
|
|
|
+ u32 wlan_channels[4];
|
|
|
|
+ u32 wlan_cal_seq;
|
|
|
|
+ u32 wlan_cal_done;
|
|
|
|
+ u32 config;
|
|
|
|
+ u8 *gpm_buf;
|
|
|
|
+ u8 *sched_buf;
|
|
|
|
+ bool ready;
|
|
|
|
+ bool update_2g5g;
|
|
|
|
+ bool is_2g;
|
|
|
|
+ bool query_bt;
|
|
|
|
+ bool unhalt_bt_gpm; /* need send UNHALT */
|
|
|
|
+ bool halted_bt_gpm; /* HALT sent */
|
|
|
|
+ bool need_flush_btinfo;
|
|
|
|
+ bool bt_version_known;
|
|
|
|
+ bool wlan_channels_update;
|
|
|
|
+ u8 wlan_ver_major;
|
|
|
|
+ u8 wlan_ver_minor;
|
|
|
|
+ u8 bt_ver_major;
|
|
|
|
+ u8 bt_ver_minor;
|
|
|
|
+ u8 bt_state;
|
|
|
|
+};
|
|
|
|
+
|
|
struct ath_btcoex_hw {
|
|
struct ath_btcoex_hw {
|
|
enum ath_btcoex_scheme scheme;
|
|
enum ath_btcoex_scheme scheme;
|
|
|
|
+ struct ath9k_hw_mci mci;
|
|
bool enabled;
|
|
bool enabled;
|
|
u8 wlanactive_gpio;
|
|
u8 wlanactive_gpio;
|
|
u8 btactive_gpio;
|
|
u8 btactive_gpio;
|