[PATCH 5/7] Cleanup TX debugging
Kalle Valo
kvalo at qca.qualcomm.com
Thu May 16 08:42:28 EDT 2013
Also simplify wcn36xx_tx() in the process.
Signed-off-by: Kalle Valo <kvalo at qca.qualcomm.com>
---
dxe.c | 3 +--
main.c | 28 ++++++++++++++++++++--------
2 files changed, 21 insertions(+), 10 deletions(-)
diff --git a/dxe.c b/dxe.c
index 0f90859..286b482 100644
--- a/dxe.c
+++ b/dxe.c
@@ -397,12 +397,11 @@ int wcn36xx_dxe_tx(struct wcn36xx *wcn, struct sk_buff *skb, u8 broadcast, bool
struct wcn36xx_dxe_desc *cur_dxe_desc = NULL;
struct wcn36xx_dxe_mem_pool * mem_pool = NULL;
struct wcn36xx_dxe_ch * cur_ch = NULL;
+
if(is_high) {
- wcn36xx_dbg(WCN36XX_DBG_TX, "DXE TX: MGMT");
mem_pool = &wcn->mgmt_mem_pool;
cur_ch = &wcn->dxe_tx_h_ch;
} else {
- wcn36xx_dbg(WCN36XX_DBG_TX, "DXE TX: DATA");
mem_pool = &wcn->data_mem_pool;
cur_ch = &wcn->dxe_tx_l_ch;
}
diff --git a/main.c b/main.c
index 6e4aace..f6f1942 100644
--- a/main.c
+++ b/main.c
@@ -131,17 +131,29 @@ static void wcn36xx_configure_filter(struct ieee80211_hw *hw,
*total &= WCN36XX_SUPPORTED_FILTERS;
}
-static void wcn36xx_tx(struct ieee80211_hw *hw, struct ieee80211_tx_control *control, struct sk_buff *skb)
+static void wcn36xx_tx(struct ieee80211_hw *hw,
+ struct ieee80211_tx_control *control,
+ struct sk_buff *skb)
{
struct ieee80211_mgmt *mgmt;
- ENTER();
+ bool high, bcast;
+
mgmt = (struct ieee80211_mgmt *)skb->data;
- wcn36xx_dbg(WCN36XX_DBG_TX, "wcn36xx_tx: = %x", mgmt->frame_control);
- if (ieee80211_is_data(mgmt->frame_control) || (ieee80211_is_data_qos(mgmt->frame_control))) {
- wcn36xx_dxe_tx(hw->priv, skb, is_broadcast_ether_addr(mgmt->da) || is_multicast_ether_addr(mgmt->da), false);
- } else {
- wcn36xx_dxe_tx(hw->priv, skb, is_broadcast_ether_addr(mgmt->da) || is_multicast_ether_addr(mgmt->da), true);
- }
+
+ high = !(ieee80211_is_data(mgmt->frame_control) ||
+ ieee80211_is_data_qos(mgmt->frame_control));
+
+ bcast = is_broadcast_ether_addr(mgmt->da) ||
+ is_multicast_ether_addr(mgmt->da);
+
+ wcn36xx_dbg(WCN36XX_DBG_TX,
+ "tx skb %p len %d fc %02x %s %s",
+ skb, skb->len, __le16_to_cpu(mgmt->frame_control),
+ high ? "high" : "low", bcast ? "bcast" : "ucast");
+
+ wcn36xx_dbg_dump(WCN36XX_DBG_TX_DUMP, "", skb->data, skb->len);
+
+ wcn36xx_dxe_tx(hw->priv, skb, bcast, high);
}
static int wcn36xx_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
More information about the wcn36xx
mailing list