iwlwifi: move tx fail code to agn
The code to print out TX failure reasons is AGN specific, so it can be in the AGN module. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
This commit is contained in:
parent
a30e3112a8
commit
69fdb710b2
@ -1391,3 +1391,43 @@ void iwlagn_rx_reply_compressed_ba(struct iwl_priv *priv,
|
||||
|
||||
spin_unlock_irqrestore(&priv->sta_lock, flags);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_IWLWIFI_DEBUG
|
||||
const char *iwl_get_tx_fail_reason(u32 status)
|
||||
{
|
||||
#define TX_STATUS_FAIL(x) case TX_STATUS_FAIL_ ## x: return #x
|
||||
#define TX_STATUS_POSTPONE(x) case TX_STATUS_POSTPONE_ ## x: return #x
|
||||
|
||||
switch (status & TX_STATUS_MSK) {
|
||||
case TX_STATUS_SUCCESS:
|
||||
return "SUCCESS";
|
||||
TX_STATUS_POSTPONE(DELAY);
|
||||
TX_STATUS_POSTPONE(FEW_BYTES);
|
||||
TX_STATUS_POSTPONE(BT_PRIO);
|
||||
TX_STATUS_POSTPONE(QUIET_PERIOD);
|
||||
TX_STATUS_POSTPONE(CALC_TTAK);
|
||||
TX_STATUS_FAIL(INTERNAL_CROSSED_RETRY);
|
||||
TX_STATUS_FAIL(SHORT_LIMIT);
|
||||
TX_STATUS_FAIL(LONG_LIMIT);
|
||||
TX_STATUS_FAIL(FIFO_UNDERRUN);
|
||||
TX_STATUS_FAIL(DRAIN_FLOW);
|
||||
TX_STATUS_FAIL(RFKILL_FLUSH);
|
||||
TX_STATUS_FAIL(LIFE_EXPIRE);
|
||||
TX_STATUS_FAIL(DEST_PS);
|
||||
TX_STATUS_FAIL(HOST_ABORTED);
|
||||
TX_STATUS_FAIL(BT_RETRY);
|
||||
TX_STATUS_FAIL(STA_INVALID);
|
||||
TX_STATUS_FAIL(FRAG_DROPPED);
|
||||
TX_STATUS_FAIL(TID_DISABLE);
|
||||
TX_STATUS_FAIL(FIFO_FLUSHED);
|
||||
TX_STATUS_FAIL(INSUFFICIENT_CF_POLL);
|
||||
TX_STATUS_FAIL(PASSIVE_NO_RX);
|
||||
TX_STATUS_FAIL(NO_BEACON_ON_RADAR);
|
||||
}
|
||||
|
||||
return "UNKNOWN";
|
||||
|
||||
#undef TX_STATUS_FAIL
|
||||
#undef TX_STATUS_POSTPONE
|
||||
}
|
||||
#endif /* CONFIG_IWLWIFI_DEBUG */
|
||||
|
@ -248,8 +248,10 @@ void iwlagn_bt_setup_deferred_work(struct iwl_priv *priv);
|
||||
void iwlagn_bt_cancel_deferred_work(struct iwl_priv *priv);
|
||||
|
||||
#ifdef CONFIG_IWLWIFI_DEBUG
|
||||
const char *iwl_get_tx_fail_reason(u32 status);
|
||||
const char *iwl_get_agg_tx_fail_reason(u16 status);
|
||||
#else
|
||||
static inline const char *iwl_get_tx_fail_reason(u32 status) { return ""; }
|
||||
static inline const char *iwl_get_agg_tx_fail_reason(u16 status) { return ""; }
|
||||
#endif
|
||||
|
||||
|
@ -1566,7 +1566,6 @@ static inline void iwl_txq_ctx_deactivate(struct iwl_priv *priv, int txq_id)
|
||||
}
|
||||
|
||||
#ifdef CONFIG_IWLWIFI_DEBUG
|
||||
const char *iwl_get_tx_fail_reason(u32 status);
|
||||
/*
|
||||
* iwl_get_debug_level: Return active debug level for device
|
||||
*
|
||||
@ -1582,8 +1581,6 @@ static inline u32 iwl_get_debug_level(struct iwl_priv *priv)
|
||||
return iwl_debug_level;
|
||||
}
|
||||
#else
|
||||
static inline const char *iwl_get_tx_fail_reason(u32 status) { return ""; }
|
||||
|
||||
static inline u32 iwl_get_debug_level(struct iwl_priv *priv)
|
||||
{
|
||||
return iwl_debug_level;
|
||||
|
@ -636,41 +636,3 @@ void iwl_tx_cmd_complete(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb)
|
||||
meta->flags = 0;
|
||||
}
|
||||
EXPORT_SYMBOL(iwl_tx_cmd_complete);
|
||||
|
||||
#ifdef CONFIG_IWLWIFI_DEBUG
|
||||
#define TX_STATUS_FAIL(x) case TX_STATUS_FAIL_ ## x: return #x
|
||||
#define TX_STATUS_POSTPONE(x) case TX_STATUS_POSTPONE_ ## x: return #x
|
||||
|
||||
const char *iwl_get_tx_fail_reason(u32 status)
|
||||
{
|
||||
switch (status & TX_STATUS_MSK) {
|
||||
case TX_STATUS_SUCCESS:
|
||||
return "SUCCESS";
|
||||
TX_STATUS_POSTPONE(DELAY);
|
||||
TX_STATUS_POSTPONE(FEW_BYTES);
|
||||
TX_STATUS_POSTPONE(BT_PRIO);
|
||||
TX_STATUS_POSTPONE(QUIET_PERIOD);
|
||||
TX_STATUS_POSTPONE(CALC_TTAK);
|
||||
TX_STATUS_FAIL(INTERNAL_CROSSED_RETRY);
|
||||
TX_STATUS_FAIL(SHORT_LIMIT);
|
||||
TX_STATUS_FAIL(LONG_LIMIT);
|
||||
TX_STATUS_FAIL(FIFO_UNDERRUN);
|
||||
TX_STATUS_FAIL(DRAIN_FLOW);
|
||||
TX_STATUS_FAIL(RFKILL_FLUSH);
|
||||
TX_STATUS_FAIL(LIFE_EXPIRE);
|
||||
TX_STATUS_FAIL(DEST_PS);
|
||||
TX_STATUS_FAIL(HOST_ABORTED);
|
||||
TX_STATUS_FAIL(BT_RETRY);
|
||||
TX_STATUS_FAIL(STA_INVALID);
|
||||
TX_STATUS_FAIL(FRAG_DROPPED);
|
||||
TX_STATUS_FAIL(TID_DISABLE);
|
||||
TX_STATUS_FAIL(FIFO_FLUSHED);
|
||||
TX_STATUS_FAIL(INSUFFICIENT_CF_POLL);
|
||||
TX_STATUS_FAIL(PASSIVE_NO_RX);
|
||||
TX_STATUS_FAIL(NO_BEACON_ON_RADAR);
|
||||
}
|
||||
|
||||
return "UNKNOWN";
|
||||
}
|
||||
EXPORT_SYMBOL(iwl_get_tx_fail_reason);
|
||||
#endif /* CONFIG_IWLWIFI_DEBUG */
|
||||
|
Loading…
Reference in New Issue
Block a user