iwlwifi: keep track of bt coex enable/disable stage
For debugging purpose, keep track of the bt coex enable/disable state. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
This commit is contained in:
@@ -856,6 +856,9 @@ ssize_t iwl_ucode_bt_stats_read(struct file *file,
|
|||||||
if (!iwl_is_alive(priv))
|
if (!iwl_is_alive(priv))
|
||||||
return -EAGAIN;
|
return -EAGAIN;
|
||||||
|
|
||||||
|
if (!priv->bt_enable_flag)
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
/* make request to uCode to retrieve statistics information */
|
/* make request to uCode to retrieve statistics information */
|
||||||
mutex_lock(&priv->mutex);
|
mutex_lock(&priv->mutex);
|
||||||
ret = iwl_send_statistics_request(priv, CMD_SYNC, false);
|
ret = iwl_send_statistics_request(priv, CMD_SYNC, false);
|
||||||
|
@@ -1845,6 +1845,7 @@ void iwlagn_send_advance_bt_config(struct iwl_priv *priv)
|
|||||||
bt_cmd.flags |= IWLAGN_BT_FLAG_CHANNEL_INHIBITION;
|
bt_cmd.flags |= IWLAGN_BT_FLAG_CHANNEL_INHIBITION;
|
||||||
IWL_DEBUG_INFO(priv, "BT coex flag: 0X%x\n", bt_cmd.flags);
|
IWL_DEBUG_INFO(priv, "BT coex flag: 0X%x\n", bt_cmd.flags);
|
||||||
}
|
}
|
||||||
|
priv->bt_enable_flag = bt_cmd.flags;
|
||||||
if (priv->bt_full_concurrent)
|
if (priv->bt_full_concurrent)
|
||||||
memcpy(bt_cmd.bt3_lookup_table, iwlagn_concurrent_lookup,
|
memcpy(bt_cmd.bt3_lookup_table, iwlagn_concurrent_lookup,
|
||||||
sizeof(iwlagn_concurrent_lookup));
|
sizeof(iwlagn_concurrent_lookup));
|
||||||
|
@@ -1223,6 +1223,7 @@ void iwl_send_bt_config(struct iwl_priv *priv)
|
|||||||
else
|
else
|
||||||
bt_cmd.flags = BT_COEX_ENABLE;
|
bt_cmd.flags = BT_COEX_ENABLE;
|
||||||
|
|
||||||
|
priv->bt_enable_flag = bt_cmd.flags;
|
||||||
IWL_DEBUG_INFO(priv, "BT coex %s\n",
|
IWL_DEBUG_INFO(priv, "BT coex %s\n",
|
||||||
(bt_cmd.flags == BT_COEX_DISABLE) ? "disable" : "active");
|
(bt_cmd.flags == BT_COEX_DISABLE) ? "disable" : "active");
|
||||||
|
|
||||||
|
@@ -1567,6 +1567,13 @@ static ssize_t iwl_dbgfs_bt_traffic_read(struct file *file,
|
|||||||
const size_t bufsz = sizeof(buf);
|
const size_t bufsz = sizeof(buf);
|
||||||
ssize_t ret;
|
ssize_t ret;
|
||||||
|
|
||||||
|
if (!priv->bt_enable_flag) {
|
||||||
|
pos += scnprintf(buf + pos, bufsz - pos, "BT coex disabled\n");
|
||||||
|
ret = simple_read_from_buffer(user_buf, count, ppos, buf, pos);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
pos += scnprintf(buf + pos, bufsz - pos, "BT enable flag: 0x%x\n",
|
||||||
|
priv->bt_enable_flag);
|
||||||
pos += scnprintf(buf + pos, bufsz - pos, "BT in %s mode\n",
|
pos += scnprintf(buf + pos, bufsz - pos, "BT in %s mode\n",
|
||||||
priv->bt_full_concurrent ? "full concurrency" : "3-wire");
|
priv->bt_full_concurrent ? "full concurrency" : "3-wire");
|
||||||
pos += scnprintf(buf + pos, bufsz - pos, "BT status: %s, "
|
pos += scnprintf(buf + pos, bufsz - pos, "BT status: %s, "
|
||||||
|
@@ -1468,6 +1468,7 @@ struct iwl_priv {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/* bt coex */
|
/* bt coex */
|
||||||
|
u8 bt_enable_flag;
|
||||||
u8 bt_status;
|
u8 bt_status;
|
||||||
u8 bt_traffic_load, last_bt_traffic_load;
|
u8 bt_traffic_load, last_bt_traffic_load;
|
||||||
bool bt_ch_announce;
|
bool bt_ch_announce;
|
||||||
|
Reference in New Issue
Block a user