aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/b43/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/b43/main.c')
-rw-r--r--drivers/net/wireless/b43/main.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
index 7d22dadfd890..6468bbeba687 100644
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -1830,6 +1830,16 @@ static void b43_do_interrupt_thread(struct b43_wldev *dev)
1830 1830
1831 /* Re-enable interrupts on the device by restoring the current interrupt mask. */ 1831 /* Re-enable interrupts on the device by restoring the current interrupt mask. */
1832 b43_write32(dev, B43_MMIO_GEN_IRQ_MASK, dev->irq_mask); 1832 b43_write32(dev, B43_MMIO_GEN_IRQ_MASK, dev->irq_mask);
1833
1834#if B43_DEBUG
1835 if (b43_debug(dev, B43_DBG_VERBOSESTATS)) {
1836 dev->irq_count++;
1837 for (i = 0; i < ARRAY_SIZE(dev->irq_bit_count); i++) {
1838 if (reason & (1 << i))
1839 dev->irq_bit_count[i]++;
1840 }
1841 }
1842#endif
1833} 1843}
1834 1844
1835/* Interrupt thread handler. Handles device interrupts in thread context. */ 1845/* Interrupt thread handler. Handles device interrupts in thread context. */
@@ -2893,6 +2903,27 @@ static void b43_periodic_every15sec(struct b43_wldev *dev)
2893 2903
2894 atomic_set(&phy->txerr_cnt, B43_PHY_TX_BADNESS_LIMIT); 2904 atomic_set(&phy->txerr_cnt, B43_PHY_TX_BADNESS_LIMIT);
2895 wmb(); 2905 wmb();
2906
2907#if B43_DEBUG
2908 if (b43_debug(dev, B43_DBG_VERBOSESTATS)) {
2909 unsigned int i;
2910
2911 b43dbg(dev->wl, "Stats: %7u IRQs/sec, %7u TX/sec, %7u RX/sec\n",
2912 dev->irq_count / 15,
2913 dev->tx_count / 15,
2914 dev->rx_count / 15);
2915 dev->irq_count = 0;
2916 dev->tx_count = 0;
2917 dev->rx_count = 0;
2918 for (i = 0; i < ARRAY_SIZE(dev->irq_bit_count); i++) {
2919 if (dev->irq_bit_count[i]) {
2920 b43dbg(dev->wl, "Stats: %7u IRQ-%02u/sec (0x%08X)\n",
2921 dev->irq_bit_count[i] / 15, i, (1 << i));
2922 dev->irq_bit_count[i] = 0;
2923 }
2924 }
2925 }
2926#endif
2896} 2927}
2897 2928
2898static void do_periodic_work(struct b43_wldev *dev) 2929static void do_periodic_work(struct b43_wldev *dev)
@@ -3092,6 +3123,9 @@ static void b43_tx_work(struct work_struct *work)
3092 dev_kfree_skb(skb); /* Drop it */ 3123 dev_kfree_skb(skb); /* Drop it */
3093 } 3124 }
3094 3125
3126#if B43_DEBUG
3127 dev->tx_count++;
3128#endif
3095 mutex_unlock(&wl->mutex); 3129 mutex_unlock(&wl->mutex);
3096} 3130}
3097 3131