aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/wmi.c
diff options
context:
space:
mode:
authorSujith Manoharan <Sujith.Manoharan@atheros.com>2011-04-13 01:56:58 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-04-13 15:24:41 -0400
commitfbc29d6c3da58bc51416f65a50bdb419d4ea85b8 (patch)
tree8a79d7a2c238015880358c7ee03b9919dd540abf /drivers/net/wireless/ath/ath9k/wmi.c
parent821f9414c0546fbc99a999e9dc613d1756e1de8a (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.c19
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) {