diff options
author | Sujith Manoharan <Sujith.Manoharan@atheros.com> | 2011-04-13 01:56:58 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-04-13 15:24:41 -0400 |
commit | fbc29d6c3da58bc51416f65a50bdb419d4ea85b8 (patch) | |
tree | 8a79d7a2c238015880358c7ee03b9919dd540abf /drivers/net/wireless/ath/ath9k/wmi.c | |
parent | 821f9414c0546fbc99a999e9dc613d1756e1de8a (diff) |
ath9k_htc: Add detailed firmware statistics
New debugfs files:
<debugfs_root>/ath9k_htc/<phy#>/tgt_int_stats
<debugfs_root>/ath9k_htc/<phy#>/tgt_tx_stats
<debugfs_root>/ath9k_htc/<phy#>/tgt_rx_stats
Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/wmi.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/wmi.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/drivers/net/wireless/ath/ath9k/wmi.c b/drivers/net/wireless/ath/ath9k/wmi.c index 697e5af842c1..8f095ad0a3db 100644 --- a/drivers/net/wireless/ath/ath9k/wmi.c +++ b/drivers/net/wireless/ath/ath9k/wmi.c | |||
@@ -67,12 +67,18 @@ static const char *wmi_cmd_to_name(enum wmi_cmd_id wmi_cmd) | |||
67 | return "WMI_RC_RATE_UPDATE_CMDID"; | 67 | return "WMI_RC_RATE_UPDATE_CMDID"; |
68 | case WMI_TARGET_IC_UPDATE_CMDID: | 68 | case WMI_TARGET_IC_UPDATE_CMDID: |
69 | return "WMI_TARGET_IC_UPDATE_CMDID"; | 69 | return "WMI_TARGET_IC_UPDATE_CMDID"; |
70 | case WMI_TGT_STATS_CMDID: | ||
71 | return "WMI_TGT_STATS_CMDID"; | ||
72 | case WMI_TX_AGGR_ENABLE_CMDID: | 70 | case WMI_TX_AGGR_ENABLE_CMDID: |
73 | return "WMI_TX_AGGR_ENABLE_CMDID"; | 71 | return "WMI_TX_AGGR_ENABLE_CMDID"; |
74 | case WMI_TGT_DETACH_CMDID: | 72 | case WMI_TGT_DETACH_CMDID: |
75 | return "WMI_TGT_DETACH_CMDID"; | 73 | return "WMI_TGT_DETACH_CMDID"; |
74 | case WMI_NODE_UPDATE_CMDID: | ||
75 | return "WMI_NODE_UPDATE_CMDID"; | ||
76 | case WMI_INT_STATS_CMDID: | ||
77 | return "WMI_INT_STATS_CMDID"; | ||
78 | case WMI_TX_STATS_CMDID: | ||
79 | return "WMI_TX_STATS_CMDID"; | ||
80 | case WMI_RX_STATS_CMDID: | ||
81 | return "WMI_RX_STATS_CMDID"; | ||
76 | case WMI_AGGR_LIMIT_CMD: | 82 | case WMI_AGGR_LIMIT_CMD: |
77 | return "WMI_AGGR_LIMIT_CMD"; | 83 | return "WMI_AGGR_LIMIT_CMD"; |
78 | } | 84 | } |
@@ -134,9 +140,6 @@ void ath9k_wmi_event_tasklet(unsigned long data) | |||
134 | struct sk_buff *skb = NULL; | 140 | struct sk_buff *skb = NULL; |
135 | unsigned long flags; | 141 | unsigned long flags; |
136 | u16 cmd_id; | 142 | u16 cmd_id; |
137 | #ifdef CONFIG_ATH9K_HTC_DEBUGFS | ||
138 | __be32 txrate; | ||
139 | #endif | ||
140 | 143 | ||
141 | do { | 144 | do { |
142 | spin_lock_irqsave(&wmi->wmi_lock, flags); | 145 | spin_lock_irqsave(&wmi->wmi_lock, flags); |
@@ -160,12 +163,6 @@ void ath9k_wmi_event_tasklet(unsigned long data) | |||
160 | ieee80211_queue_work(wmi->drv_priv->hw, | 163 | ieee80211_queue_work(wmi->drv_priv->hw, |
161 | &wmi->drv_priv->fatal_work); | 164 | &wmi->drv_priv->fatal_work); |
162 | break; | 165 | break; |
163 | case WMI_TXRATE_EVENTID: | ||
164 | #ifdef CONFIG_ATH9K_HTC_DEBUGFS | ||
165 | txrate = ((struct wmi_event_txrate *)wmi_event)->txrate; | ||
166 | wmi->drv_priv->debug.txrate = be32_to_cpu(txrate); | ||
167 | #endif | ||
168 | break; | ||
169 | case WMI_TXSTATUS_EVENTID: | 166 | case WMI_TXSTATUS_EVENTID: |
170 | spin_lock_bh(&priv->tx.tx_lock); | 167 | spin_lock_bh(&priv->tx.tx_lock); |
171 | if (priv->tx.flags & ATH9K_HTC_OP_TX_DRAIN) { | 168 | if (priv->tx.flags & ATH9K_HTC_OP_TX_DRAIN) { |