linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op
@ 2010-02-07  8:20 Kalle Valo
  2010-02-07  8:20 ` [PATCH 02/10] mwl8k: " Kalle Valo
                   ` (8 more replies)
  0 siblings, 9 replies; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:20 UTC (permalink / raw)
  To: linux-wireless; +Cc: Michael Wu

get_tx_stats() will be removed from mac80211.

Compile-tested only.

Cc: Michael Wu <flamingice@sourmilk.net>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/adm8211.c |   13 -------------
 1 files changed, 0 insertions(+), 13 deletions(-)

diff --git a/drivers/net/wireless/adm8211.c b/drivers/net/wireless/adm8211.c
index e1f04bb..6508515 100644
--- a/drivers/net/wireless/adm8211.c
+++ b/drivers/net/wireless/adm8211.c
@@ -302,18 +302,6 @@ static int adm8211_get_stats(struct ieee80211_hw *dev,
 	return 0;
 }
 
-static int adm8211_get_tx_stats(struct ieee80211_hw *dev,
-				struct ieee80211_tx_queue_stats *stats)
-{
-	struct adm8211_priv *priv = dev->priv;
-
-	stats[0].len = priv->cur_tx - priv->dirty_tx;
-	stats[0].limit = priv->tx_ring_size - 2;
-	stats[0].count = priv->dirty_tx;
-
-	return 0;
-}
-
 static void adm8211_interrupt_tci(struct ieee80211_hw *dev)
 {
 	struct adm8211_priv *priv = dev->priv;
@@ -1773,7 +1761,6 @@ static const struct ieee80211_ops adm8211_ops = {
 	.prepare_multicast	= adm8211_prepare_multicast,
 	.configure_filter	= adm8211_configure_filter,
 	.get_stats		= adm8211_get_stats,
-	.get_tx_stats		= adm8211_get_tx_stats,
 	.get_tsf		= adm8211_get_tsft
 };
 


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 02/10] mwl8k: remove get_tx_stats() mac80211 op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
@ 2010-02-07  8:20 ` Kalle Valo
  2010-02-07  8:21 ` [PATCH 03/10] ar9170: " Kalle Valo
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:20 UTC (permalink / raw)
  To: linux-wireless; +Cc: Lennert Buytenhek

get_tx_stats() will be removed from mac80211.

mwl8k used struct ieee80211_tx_queue_stats internally to track the queue
lenght. Replace struct ieee80211_tx_queue_stats with a simple len field
in struct mwl8k_tx_queue. Limit and count fields seemed to be unused.

Compile-tested only.

Cc: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/mwl8k.c |   35 +++++++----------------------------
 1 files changed, 7 insertions(+), 28 deletions(-)

diff --git a/drivers/net/wireless/mwl8k.c b/drivers/net/wireless/mwl8k.c
index f0f08f3..0cfdb9d 100644
--- a/drivers/net/wireless/mwl8k.c
+++ b/drivers/net/wireless/mwl8k.c
@@ -119,7 +119,7 @@ struct mwl8k_tx_queue {
 	/* sw appends here */
 	int tail;
 
-	struct ieee80211_tx_queue_stats stats;
+	unsigned int len;
 	struct mwl8k_tx_desc *txd;
 	dma_addr_t txd_dma;
 	struct sk_buff **skb;
@@ -1136,8 +1136,7 @@ static int mwl8k_txq_init(struct ieee80211_hw *hw, int index)
 	int size;
 	int i;
 
-	memset(&txq->stats, 0, sizeof(struct ieee80211_tx_queue_stats));
-	txq->stats.limit = MWL8K_TX_DESCS;
+	txq->len = 0;
 	txq->head = 0;
 	txq->tail = 0;
 
@@ -1213,7 +1212,7 @@ static void mwl8k_dump_tx_rings(struct ieee80211_hw *hw)
 		printk(KERN_ERR "%s: txq[%d] len=%d head=%d tail=%d "
 		       "fw_owned=%d drv_owned=%d unused=%d\n",
 		       wiphy_name(hw->wiphy), i,
-		       txq->stats.len, txq->head, txq->tail,
+		       txq->len, txq->head, txq->tail,
 		       fw_owned, drv_owned, unused);
 	}
 }
@@ -1299,7 +1298,7 @@ mwl8k_txq_reclaim(struct ieee80211_hw *hw, int index, int limit, int force)
 	int processed;
 
 	processed = 0;
-	while (txq->stats.len > 0 && limit--) {
+	while (txq->len > 0 && limit--) {
 		int tx;
 		struct mwl8k_tx_desc *tx_desc;
 		unsigned long addr;
@@ -1321,8 +1320,8 @@ mwl8k_txq_reclaim(struct ieee80211_hw *hw, int index, int limit, int force)
 		}
 
 		txq->head = (tx + 1) % MWL8K_TX_DESCS;
-		BUG_ON(txq->stats.len == 0);
-		txq->stats.len--;
+		BUG_ON(txq->len == 0);
+		txq->len--;
 		priv->pending_tx_pkts--;
 
 		addr = le32_to_cpu(tx_desc->pkt_phys_addr);
@@ -1454,8 +1453,7 @@ mwl8k_txq_xmit(struct ieee80211_hw *hw, int index, struct sk_buff *skb)
 	wmb();
 	tx->status = cpu_to_le32(MWL8K_TXD_STATUS_FW_OWNED | txstatus);
 
-	txq->stats.count++;
-	txq->stats.len++;
+	txq->len++;
 	priv->pending_tx_pkts++;
 
 	txq->tail++;
@@ -3818,24 +3816,6 @@ static int mwl8k_conf_tx(struct ieee80211_hw *hw, u16 queue,
 	return rc;
 }
 
-static int mwl8k_get_tx_stats(struct ieee80211_hw *hw,
-			      struct ieee80211_tx_queue_stats *stats)
-{
-	struct mwl8k_priv *priv = hw->priv;
-	struct mwl8k_tx_queue *txq;
-	int index;
-
-	spin_lock_bh(&priv->tx_lock);
-	for (index = 0; index < MWL8K_TX_QUEUES; index++) {
-		txq = priv->txq + index;
-		memcpy(&stats[index], &txq->stats,
-			sizeof(struct ieee80211_tx_queue_stats));
-	}
-	spin_unlock_bh(&priv->tx_lock);
-
-	return 0;
-}
-
 static int mwl8k_get_stats(struct ieee80211_hw *hw,
 			   struct ieee80211_low_level_stats *stats)
 {
@@ -3871,7 +3851,6 @@ static const struct ieee80211_ops mwl8k_ops = {
 	.set_rts_threshold	= mwl8k_set_rts_threshold,
 	.sta_notify		= mwl8k_sta_notify,
 	.conf_tx		= mwl8k_conf_tx,
-	.get_tx_stats		= mwl8k_get_tx_stats,
 	.get_stats		= mwl8k_get_stats,
 	.ampdu_action		= mwl8k_ampdu_action,
 };


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 03/10] ar9170: remove get_tx_stats() mac80211 op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
  2010-02-07  8:20 ` [PATCH 02/10] mwl8k: " Kalle Valo
@ 2010-02-07  8:21 ` Kalle Valo
  2010-02-07 13:53   ` Christian Lamparter
  2010-02-07  8:21 ` [PATCH 04/10] ath5k: " Kalle Valo
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:21 UTC (permalink / raw)
  To: linux-wireless; +Cc: Christian Lamparter

get_tx_stats() will be removed from mac80211.

Because ar9170 uses ieee80211_tx_queue_stats internally, create a new
identical struct ar9170_tx_queue_stats which the driver can use.

Compile-tested only.

Cc: Christian Lamparter <chunkeey@web.de>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/ath/ar9170/ar9170.h |    8 +++++++-
 drivers/net/wireless/ath/ar9170/main.c   |   13 -------------
 2 files changed, 7 insertions(+), 14 deletions(-)

diff --git a/drivers/net/wireless/ath/ar9170/ar9170.h b/drivers/net/wireless/ath/ar9170/ar9170.h
index 04525ff..dc662b7 100644
--- a/drivers/net/wireless/ath/ar9170/ar9170.h
+++ b/drivers/net/wireless/ath/ar9170/ar9170.h
@@ -144,6 +144,12 @@ struct ar9170_sta_tid {
 	bool active;
 };
 
+struct ar9170_tx_queue_stats {
+	unsigned int len;
+	unsigned int limit;
+	unsigned int count;
+};
+
 #define AR9170_QUEUE_TIMEOUT		64
 #define AR9170_TX_TIMEOUT		8
 #define AR9170_BA_TIMEOUT		4
@@ -212,7 +218,7 @@ struct ar9170 {
 
 	/* qos queue settings */
 	spinlock_t tx_stats_lock;
-	struct ieee80211_tx_queue_stats tx_stats[5];
+	struct ar9170_tx_queue_stats tx_stats[5];
 	struct ieee80211_tx_queue_params edcf[5];
 
 	spinlock_t cmdlock;
diff --git a/drivers/net/wireless/ath/ar9170/main.c b/drivers/net/wireless/ath/ar9170/main.c
index b8a482c..2b67b03 100644
--- a/drivers/net/wireless/ath/ar9170/main.c
+++ b/drivers/net/wireless/ath/ar9170/main.c
@@ -2396,18 +2396,6 @@ static int ar9170_get_stats(struct ieee80211_hw *hw,
 	return 0;
 }
 
-static int ar9170_get_tx_stats(struct ieee80211_hw *hw,
-			       struct ieee80211_tx_queue_stats *tx_stats)
-{
-	struct ar9170 *ar = hw->priv;
-
-	spin_lock_bh(&ar->tx_stats_lock);
-	memcpy(tx_stats, ar->tx_stats, sizeof(tx_stats[0]) * hw->queues);
-	spin_unlock_bh(&ar->tx_stats_lock);
-
-	return 0;
-}
-
 static int ar9170_conf_tx(struct ieee80211_hw *hw, u16 queue,
 			  const struct ieee80211_tx_queue_params *param)
 {
@@ -2509,7 +2497,6 @@ static const struct ieee80211_ops ar9170_ops = {
 	.set_key		= ar9170_set_key,
 	.sta_notify		= ar9170_sta_notify,
 	.get_stats		= ar9170_get_stats,
-	.get_tx_stats		= ar9170_get_tx_stats,
 	.ampdu_action		= ar9170_ampdu_action,
 };
 


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 04/10] ath5k: remove get_tx_stats() mac80211 op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
  2010-02-07  8:20 ` [PATCH 02/10] mwl8k: " Kalle Valo
  2010-02-07  8:21 ` [PATCH 03/10] ar9170: " Kalle Valo
@ 2010-02-07  8:21 ` Kalle Valo
  2010-02-07 15:04   ` Bob Copeland
  2010-02-07  8:21 ` [PATCH 05/10] b43: " Kalle Valo
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:21 UTC (permalink / raw)
  To: linux-wireless
  Cc: Bob Copeland, Luis R. Rodriguez, Jiri Slaby, Nick Kossifidis

get_tx_stats() will be removed from mac80211.

Compile-tested only.

Cc: Jiri Slaby <jirislaby@gmail.com>
Cc: Nick Kossifidis <mickflemm@gmail.com>
Cc: Luis R. Rodriguez <lrodriguez@atheros.com>
Cc: Bob Copeland <me@bobcopeland.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/ath/ath5k/base.c |   18 ------------------
 drivers/net/wireless/ath/ath5k/base.h |    1 -
 2 files changed, 0 insertions(+), 19 deletions(-)

diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c
index 535a6af..97d6425 100644
--- a/drivers/net/wireless/ath/ath5k/base.c
+++ b/drivers/net/wireless/ath/ath5k/base.c
@@ -241,8 +241,6 @@ static int ath5k_set_key(struct ieee80211_hw *hw,
 		struct ieee80211_key_conf *key);
 static int ath5k_get_stats(struct ieee80211_hw *hw,
 		struct ieee80211_low_level_stats *stats);
-static int ath5k_get_tx_stats(struct ieee80211_hw *hw,
-		struct ieee80211_tx_queue_stats *stats);
 static u64 ath5k_get_tsf(struct ieee80211_hw *hw);
 static void ath5k_set_tsf(struct ieee80211_hw *hw, u64 tsf);
 static void ath5k_reset_tsf(struct ieee80211_hw *hw);
@@ -269,7 +267,6 @@ static const struct ieee80211_ops ath5k_hw_ops = {
 	.set_key 	= ath5k_set_key,
 	.get_stats 	= ath5k_get_stats,
 	.conf_tx 	= NULL,
-	.get_tx_stats 	= ath5k_get_tx_stats,
 	.get_tsf 	= ath5k_get_tsf,
 	.set_tsf 	= ath5k_set_tsf,
 	.reset_tsf 	= ath5k_reset_tsf,
@@ -1332,7 +1329,6 @@ ath5k_txbuf_setup(struct ath5k_softc *sc, struct ath5k_buf *bf,
 
 	spin_lock_bh(&txq->lock);
 	list_add_tail(&bf->list, &txq->q);
-	sc->tx_stats[txq->qnum].len++;
 	if (txq->link == NULL) /* is this first packet? */
 		ath5k_hw_set_txdp(ah, txq->qnum, bf->daddr);
 	else /* no, so only link it */
@@ -1581,7 +1577,6 @@ ath5k_txq_drainq(struct ath5k_softc *sc, struct ath5k_txq *txq)
 		ath5k_txbuf_free(sc, bf);
 
 		spin_lock_bh(&sc->txbuflock);
-		sc->tx_stats[txq->qnum].len--;
 		list_move_tail(&bf->list, &sc->txbuf);
 		sc->txbuf_len++;
 		spin_unlock_bh(&sc->txbuflock);
@@ -2011,10 +2006,8 @@ ath5k_tx_processq(struct ath5k_softc *sc, struct ath5k_txq *txq)
 		}
 
 		ieee80211_tx_status(sc->hw, skb);
-		sc->tx_stats[txq->qnum].count++;
 
 		spin_lock(&sc->txbuflock);
-		sc->tx_stats[txq->qnum].len--;
 		list_move_tail(&bf->list, &sc->txbuf);
 		sc->txbuf_len++;
 		spin_unlock(&sc->txbuflock);
@@ -3116,17 +3109,6 @@ ath5k_get_stats(struct ieee80211_hw *hw,
 	return 0;
 }
 
-static int
-ath5k_get_tx_stats(struct ieee80211_hw *hw,
-		struct ieee80211_tx_queue_stats *stats)
-{
-	struct ath5k_softc *sc = hw->priv;
-
-	memcpy(stats, &sc->tx_stats, sizeof(sc->tx_stats));
-
-	return 0;
-}
-
 static u64
 ath5k_get_tsf(struct ieee80211_hw *hw)
 {
diff --git a/drivers/net/wireless/ath/ath5k/base.h b/drivers/net/wireless/ath/ath5k/base.h
index 952b3a2..7e1a88a 100644
--- a/drivers/net/wireless/ath/ath5k/base.h
+++ b/drivers/net/wireless/ath/ath5k/base.h
@@ -117,7 +117,6 @@ struct ath5k_softc {
 	struct pci_dev		*pdev;		/* for dma mapping */
 	void __iomem		*iobase;	/* address of the device */
 	struct mutex		lock;		/* dev-level lock */
-	struct ieee80211_tx_queue_stats tx_stats[AR5K_NUM_TX_QUEUES];
 	struct ieee80211_low_level_stats ll_stats;
 	struct ieee80211_hw	*hw;		/* IEEE 802.11 common */
 	struct ieee80211_supported_band sbands[IEEE80211_NUM_BANDS];


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 05/10] b43: remove get_tx_stats() mac80211 op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
                   ` (2 preceding siblings ...)
  2010-02-07  8:21 ` [PATCH 04/10] ath5k: " Kalle Valo
@ 2010-02-07  8:21 ` Kalle Valo
  2010-02-07 11:32   ` Michael Buesch
  2010-02-07  8:21 ` [PATCH 06/10] " Kalle Valo
                   ` (4 subsequent siblings)
  8 siblings, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:21 UTC (permalink / raw)
  To: linux-wireless; +Cc: Michael Buesch, Stefano Brivio, Larry Finger

get_tx_stats() will be removed from mac80211.

Compile-tested only.

Cc: Stefano Brivio <stefano.brivio@polimi.it>
Cc: Michael Buesch <mb@bu3sch.de>
Cc: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/b43/dma.c  |   16 ----------------
 drivers/net/wireless/b43/dma.h  |    3 ---
 drivers/net/wireless/b43/main.c |   22 ----------------------
 drivers/net/wireless/b43/pio.c  |   16 ----------------
 drivers/net/wireless/b43/pio.h  |    2 --
 5 files changed, 0 insertions(+), 59 deletions(-)

diff --git a/drivers/net/wireless/b43/dma.c b/drivers/net/wireless/b43/dma.c
index 615af22..02adfdb 100644
--- a/drivers/net/wireless/b43/dma.c
+++ b/drivers/net/wireless/b43/dma.c
@@ -1500,22 +1500,6 @@ void b43_dma_handle_txstatus(struct b43_wldev *dev,
 	}
 }
 
-void b43_dma_get_tx_stats(struct b43_wldev *dev,
-			  struct ieee80211_tx_queue_stats *stats)
-{
-	const int nr_queues = dev->wl->hw->queues;
-	struct b43_dmaring *ring;
-	int i;
-
-	for (i = 0; i < nr_queues; i++) {
-		ring = select_ring_by_priority(dev, i);
-
-		stats[i].len = ring->used_slots / TX_SLOTS_PER_FRAME;
-		stats[i].limit = ring->nr_slots / TX_SLOTS_PER_FRAME;
-		stats[i].count = ring->nr_tx_packets;
-	}
-}
-
 static void dma_rx(struct b43_dmaring *ring, int *slot)
 {
 	const struct b43_dma_ops *ops = ring->ops;
diff --git a/drivers/net/wireless/b43/dma.h b/drivers/net/wireless/b43/dma.h
index f7ab37c..8c3f6bc 100644
--- a/drivers/net/wireless/b43/dma.h
+++ b/drivers/net/wireless/b43/dma.h
@@ -278,9 +278,6 @@ void b43_dma_free(struct b43_wldev *dev);
 void b43_dma_tx_suspend(struct b43_wldev *dev);
 void b43_dma_tx_resume(struct b43_wldev *dev);
 
-void b43_dma_get_tx_stats(struct b43_wldev *dev,
-			  struct ieee80211_tx_queue_stats *stats);
-
 int b43_dma_tx(struct b43_wldev *dev,
 	       struct sk_buff *skb);
 void b43_dma_handle_txstatus(struct b43_wldev *dev,
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
index 6a87e08..eba3978 100644
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -3356,27 +3356,6 @@ out_unlock:
 	return err;
 }
 
-static int b43_op_get_tx_stats(struct ieee80211_hw *hw,
-			       struct ieee80211_tx_queue_stats *stats)
-{
-	struct b43_wl *wl = hw_to_b43_wl(hw);
-	struct b43_wldev *dev;
-	int err = -ENODEV;
-
-	mutex_lock(&wl->mutex);
-	dev = wl->current_dev;
-	if (dev && b43_status(dev) >= B43_STAT_STARTED) {
-		if (b43_using_pio_transfers(dev))
-			b43_pio_get_tx_stats(dev, stats);
-		else
-			b43_dma_get_tx_stats(dev, stats);
-		err = 0;
-	}
-	mutex_unlock(&wl->mutex);
-
-	return err;
-}
-
 static int b43_op_get_stats(struct ieee80211_hw *hw,
 			    struct ieee80211_low_level_stats *stats)
 {
@@ -4603,7 +4582,6 @@ static const struct ieee80211_ops b43_hw_ops = {
 	.set_key		= b43_op_set_key,
 	.update_tkip_key	= b43_op_update_tkip_key,
 	.get_stats		= b43_op_get_stats,
-	.get_tx_stats		= b43_op_get_tx_stats,
 	.get_tsf		= b43_op_get_tsf,
 	.set_tsf		= b43_op_set_tsf,
 	.start			= b43_op_start,
diff --git a/drivers/net/wireless/b43/pio.c b/drivers/net/wireless/b43/pio.c
index c01b8e0..3c3e9d4 100644
--- a/drivers/net/wireless/b43/pio.c
+++ b/drivers/net/wireless/b43/pio.c
@@ -605,22 +605,6 @@ void b43_pio_handle_txstatus(struct b43_wldev *dev,
 	}
 }
 
-void b43_pio_get_tx_stats(struct b43_wldev *dev,
-			  struct ieee80211_tx_queue_stats *stats)
-{
-	const int nr_queues = dev->wl->hw->queues;
-	struct b43_pio_txqueue *q;
-	int i;
-
-	for (i = 0; i < nr_queues; i++) {
-		q = select_queue_by_priority(dev, i);
-
-		stats[i].len = B43_PIO_MAX_NR_TXPACKETS - q->free_packet_slots;
-		stats[i].limit = B43_PIO_MAX_NR_TXPACKETS;
-		stats[i].count = q->nr_tx_packets;
-	}
-}
-
 /* Returns whether we should fetch another frame. */
 static bool pio_rx_frame(struct b43_pio_rxqueue *q)
 {
diff --git a/drivers/net/wireless/b43/pio.h b/drivers/net/wireless/b43/pio.h
index 7b3c42f..611a32e 100644
--- a/drivers/net/wireless/b43/pio.h
+++ b/drivers/net/wireless/b43/pio.h
@@ -160,8 +160,6 @@ void b43_pio_free(struct b43_wldev *dev);
 int b43_pio_tx(struct b43_wldev *dev, struct sk_buff *skb);
 void b43_pio_handle_txstatus(struct b43_wldev *dev,
 			     const struct b43_txstatus *status);
-void b43_pio_get_tx_stats(struct b43_wldev *dev,
-			  struct ieee80211_tx_queue_stats *stats);
 void b43_pio_rx(struct b43_pio_rxqueue *q);
 
 void b43_pio_tx_suspend(struct b43_wldev *dev);


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 06/10] b43legacy: remove get_tx_stats() mac80211 op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
                   ` (3 preceding siblings ...)
  2010-02-07  8:21 ` [PATCH 05/10] b43: " Kalle Valo
@ 2010-02-07  8:21 ` Kalle Valo
  2010-02-07  8:21 ` [PATCH 07/10] iwlwifi: " Kalle Valo
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:21 UTC (permalink / raw)
  To: linux-wireless; +Cc: Stefano Brivio, Larry Finger

get_tx_stats() will be removed from mac80211.

Compile-tested only.

Cc: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stefano Brivio <stefano.brivio@polimi.it>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/b43legacy/dma.c  |   19 -------------------
 drivers/net/wireless/b43legacy/dma.h  |    8 --------
 drivers/net/wireless/b43legacy/main.c |   24 ------------------------
 drivers/net/wireless/b43legacy/pio.c  |   12 ------------
 drivers/net/wireless/b43legacy/pio.h  |    7 -------
 5 files changed, 0 insertions(+), 70 deletions(-)

diff --git a/drivers/net/wireless/b43legacy/dma.c b/drivers/net/wireless/b43legacy/dma.c
index 0a86bdf..e9a33b3 100644
--- a/drivers/net/wireless/b43legacy/dma.c
+++ b/drivers/net/wireless/b43legacy/dma.c
@@ -1527,25 +1527,6 @@ void b43legacy_dma_handle_txstatus(struct b43legacy_wldev *dev,
 	spin_unlock(&ring->lock);
 }
 
-void b43legacy_dma_get_tx_stats(struct b43legacy_wldev *dev,
-			      struct ieee80211_tx_queue_stats *stats)
-{
-	const int nr_queues = dev->wl->hw->queues;
-	struct b43legacy_dmaring *ring;
-	unsigned long flags;
-	int i;
-
-	for (i = 0; i < nr_queues; i++) {
-		ring = priority_to_txring(dev, i);
-
-		spin_lock_irqsave(&ring->lock, flags);
-		stats[i].len = ring->used_slots / SLOTS_PER_PACKET;
-		stats[i].limit = ring->nr_slots / SLOTS_PER_PACKET;
-		stats[i].count = ring->nr_tx_packets;
-		spin_unlock_irqrestore(&ring->lock, flags);
-	}
-}
-
 static void dma_rx(struct b43legacy_dmaring *ring,
 		   int *slot)
 {
diff --git a/drivers/net/wireless/b43legacy/dma.h b/drivers/net/wireless/b43legacy/dma.h
index 2f18600..a7dac14 100644
--- a/drivers/net/wireless/b43legacy/dma.h
+++ b/drivers/net/wireless/b43legacy/dma.h
@@ -292,9 +292,6 @@ void b43legacy_dma_free(struct b43legacy_wldev *dev);
 void b43legacy_dma_tx_suspend(struct b43legacy_wldev *dev);
 void b43legacy_dma_tx_resume(struct b43legacy_wldev *dev);
 
-void b43legacy_dma_get_tx_stats(struct b43legacy_wldev *dev,
-				struct ieee80211_tx_queue_stats *stats);
-
 int b43legacy_dma_tx(struct b43legacy_wldev *dev,
 		     struct sk_buff *skb);
 void b43legacy_dma_handle_txstatus(struct b43legacy_wldev *dev,
@@ -315,11 +312,6 @@ void b43legacy_dma_free(struct b43legacy_wldev *dev)
 {
 }
 static inline
-void b43legacy_dma_get_tx_stats(struct b43legacy_wldev *dev,
-				struct ieee80211_tx_queue_stats *stats)
-{
-}
-static inline
 int b43legacy_dma_tx(struct b43legacy_wldev *dev,
 		     struct sk_buff *skb)
 {
diff --git a/drivers/net/wireless/b43legacy/main.c b/drivers/net/wireless/b43legacy/main.c
index 874a64a..d56f86c 100644
--- a/drivers/net/wireless/b43legacy/main.c
+++ b/drivers/net/wireless/b43legacy/main.c
@@ -2446,29 +2446,6 @@ static int b43legacy_op_conf_tx(struct ieee80211_hw *hw, u16 queue,
 	return 0;
 }
 
-static int b43legacy_op_get_tx_stats(struct ieee80211_hw *hw,
-				     struct ieee80211_tx_queue_stats *stats)
-{
-	struct b43legacy_wl *wl = hw_to_b43legacy_wl(hw);
-	struct b43legacy_wldev *dev = wl->current_dev;
-	unsigned long flags;
-	int err = -ENODEV;
-
-	if (!dev)
-		goto out;
-	spin_lock_irqsave(&wl->irq_lock, flags);
-	if (likely(b43legacy_status(dev) >= B43legacy_STAT_STARTED)) {
-		if (b43legacy_using_pio(dev))
-			b43legacy_pio_get_tx_stats(dev, stats);
-		else
-			b43legacy_dma_get_tx_stats(dev, stats);
-		err = 0;
-	}
-	spin_unlock_irqrestore(&wl->irq_lock, flags);
-out:
-	return err;
-}
-
 static int b43legacy_op_get_stats(struct ieee80211_hw *hw,
 				  struct ieee80211_low_level_stats *stats)
 {
@@ -3511,7 +3488,6 @@ static const struct ieee80211_ops b43legacy_hw_ops = {
 	.bss_info_changed	= b43legacy_op_bss_info_changed,
 	.configure_filter	= b43legacy_op_configure_filter,
 	.get_stats		= b43legacy_op_get_stats,
-	.get_tx_stats		= b43legacy_op_get_tx_stats,
 	.start			= b43legacy_op_start,
 	.stop			= b43legacy_op_stop,
 	.set_tim		= b43legacy_op_beacon_set_tim,
diff --git a/drivers/net/wireless/b43legacy/pio.c b/drivers/net/wireless/b43legacy/pio.c
index 51866c9..3c743f2 100644
--- a/drivers/net/wireless/b43legacy/pio.c
+++ b/drivers/net/wireless/b43legacy/pio.c
@@ -546,18 +546,6 @@ void b43legacy_pio_handle_txstatus(struct b43legacy_wldev *dev,
 		tasklet_schedule(&queue->txtask);
 }
 
-void b43legacy_pio_get_tx_stats(struct b43legacy_wldev *dev,
-				struct ieee80211_tx_queue_stats *stats)
-{
-	struct b43legacy_pio *pio = &dev->pio;
-	struct b43legacy_pioqueue *queue;
-
-	queue = pio->queue1;
-	stats[0].len = B43legacy_PIO_MAXTXPACKETS - queue->nr_txfree;
-	stats[0].limit = B43legacy_PIO_MAXTXPACKETS;
-	stats[0].count = queue->nr_tx_packets;
-}
-
 static void pio_rx_error(struct b43legacy_pioqueue *queue,
 			 int clear_buffers,
 			 const char *error)
diff --git a/drivers/net/wireless/b43legacy/pio.h b/drivers/net/wireless/b43legacy/pio.h
index 464fec0..dc551fc 100644
--- a/drivers/net/wireless/b43legacy/pio.h
+++ b/drivers/net/wireless/b43legacy/pio.h
@@ -106,8 +106,6 @@ int b43legacy_pio_tx(struct b43legacy_wldev *dev,
 		   struct sk_buff *skb);
 void b43legacy_pio_handle_txstatus(struct b43legacy_wldev *dev,
 				 const struct b43legacy_txstatus *status);
-void b43legacy_pio_get_tx_stats(struct b43legacy_wldev *dev,
-			      struct ieee80211_tx_queue_stats *stats);
 void b43legacy_pio_rx(struct b43legacy_pioqueue *queue);
 
 /* Suspend TX queue in hardware. */
@@ -140,11 +138,6 @@ void b43legacy_pio_handle_txstatus(struct b43legacy_wldev *dev,
 {
 }
 static inline
-void b43legacy_pio_get_tx_stats(struct b43legacy_wldev *dev,
-			      struct ieee80211_tx_queue_stats *stats)
-{
-}
-static inline
 void b43legacy_pio_rx(struct b43legacy_pioqueue *queue)
 {
 }


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 07/10] iwlwifi: remove get_tx_stats() mac80211 op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
                   ` (4 preceding siblings ...)
  2010-02-07  8:21 ` [PATCH 06/10] " Kalle Valo
@ 2010-02-07  8:21 ` Kalle Valo
  2010-02-08 17:09   ` reinette chatre
  2010-02-07  8:21 ` [PATCH 08/10] p54: " Kalle Valo
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:21 UTC (permalink / raw)
  To: linux-wireless; +Cc: Zhu Yi, Reinette Chatre

get_tx_stats() will be removed from mac80211.

Compile-tested only.

Cc: Zhu Yi <yi.zhu@intel.com>
Cc: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/iwlwifi/iwl-agn.c      |    1 -
 drivers/net/wireless/iwlwifi/iwl-core.c     |   36 ---------------------------
 drivers/net/wireless/iwlwifi/iwl-core.h     |    2 --
 drivers/net/wireless/iwlwifi/iwl3945-base.c |    1 -
 4 files changed, 0 insertions(+), 40 deletions(-)

diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c
index 3b950ae..19e8a17 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
@@ -3448,7 +3448,6 @@ static struct ieee80211_ops iwl_hw_ops = {
 	.set_key = iwl_mac_set_key,
 	.update_tkip_key = iwl_mac_update_tkip_key,
 	.get_stats = iwl_mac_get_stats,
-	.get_tx_stats = iwl_mac_get_tx_stats,
 	.conf_tx = iwl_mac_conf_tx,
 	.reset_tsf = iwl_mac_reset_tsf,
 	.bss_info_changed = iwl_bss_info_changed,
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c
index 02bf17e..6733ed0 100644
--- a/drivers/net/wireless/iwlwifi/iwl-core.c
+++ b/drivers/net/wireless/iwlwifi/iwl-core.c
@@ -2850,42 +2850,6 @@ out:
 }
 EXPORT_SYMBOL(iwl_mac_config);
 
-int iwl_mac_get_tx_stats(struct ieee80211_hw *hw,
-			 struct ieee80211_tx_queue_stats *stats)
-{
-	struct iwl_priv *priv = hw->priv;
-	int i, avail;
-	struct iwl_tx_queue *txq;
-	struct iwl_queue *q;
-	unsigned long flags;
-
-	IWL_DEBUG_MAC80211(priv, "enter\n");
-
-	if (!iwl_is_ready_rf(priv)) {
-		IWL_DEBUG_MAC80211(priv, "leave - RF not ready\n");
-		return -EIO;
-	}
-
-	spin_lock_irqsave(&priv->lock, flags);
-
-	for (i = 0; i < AC_NUM; i++) {
-		txq = &priv->txq[i];
-		q = &txq->q;
-		avail = iwl_queue_space(q);
-
-		stats[i].len = q->n_window - avail;
-		stats[i].limit = q->n_window - q->high_mark;
-		stats[i].count = q->n_window;
-
-	}
-	spin_unlock_irqrestore(&priv->lock, flags);
-
-	IWL_DEBUG_MAC80211(priv, "leave\n");
-
-	return 0;
-}
-EXPORT_SYMBOL(iwl_mac_get_tx_stats);
-
 void iwl_mac_reset_tsf(struct ieee80211_hw *hw)
 {
 	struct iwl_priv *priv = hw->priv;
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.h b/drivers/net/wireless/iwlwifi/iwl-core.h
index ec1fe1d..92d8060 100644
--- a/drivers/net/wireless/iwlwifi/iwl-core.h
+++ b/drivers/net/wireless/iwlwifi/iwl-core.h
@@ -341,8 +341,6 @@ void iwl_mac_remove_interface(struct ieee80211_hw *hw,
 			      struct ieee80211_vif *vif);
 int iwl_mac_config(struct ieee80211_hw *hw, u32 changed);
 void iwl_config_ap(struct iwl_priv *priv);
-int iwl_mac_get_tx_stats(struct ieee80211_hw *hw,
-			 struct ieee80211_tx_queue_stats *stats);
 void iwl_mac_reset_tsf(struct ieee80211_hw *hw);
 int iwl_alloc_txq_mem(struct iwl_priv *priv);
 void iwl_free_txq_mem(struct iwl_priv *priv);
diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c b/drivers/net/wireless/iwlwifi/iwl3945-base.c
index 119da54..eac2b9a 100644
--- a/drivers/net/wireless/iwlwifi/iwl3945-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c
@@ -3835,7 +3835,6 @@ static struct ieee80211_ops iwl3945_hw_ops = {
 	.config = iwl_mac_config,
 	.configure_filter = iwl_configure_filter,
 	.set_key = iwl3945_mac_set_key,
-	.get_tx_stats = iwl_mac_get_tx_stats,
 	.conf_tx = iwl_mac_conf_tx,
 	.reset_tsf = iwl_mac_reset_tsf,
 	.bss_info_changed = iwl_bss_info_changed,


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 08/10] p54: remove get_tx_stats() mac80211 op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
                   ` (5 preceding siblings ...)
  2010-02-07  8:21 ` [PATCH 07/10] iwlwifi: " Kalle Valo
@ 2010-02-07  8:21 ` Kalle Valo
  2010-02-07 13:52   ` Christian Lamparter
  2010-02-07  8:21 ` [PATCH 09/10] rt2x00: " Kalle Valo
  2010-02-07  8:22 ` [PATCH 10/10] mac80211: remove get_tx_stats() driver op Kalle Valo
  8 siblings, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:21 UTC (permalink / raw)
  To: linux-wireless; +Cc: Christian Lamparter

get_tx_stats() will be removed from mac80211.

p54 uses struct ieee80211_tx_queue_stats also internally, so create a new
identical struct p54_tx_queue_stats which the driver can use.

Compile-tested only.

Cc: Christian Lamparter <chunkeey@web.de>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/p54/main.c |   11 -----------
 drivers/net/wireless/p54/p54.h  |    8 +++++++-
 drivers/net/wireless/p54/txrx.c |    2 +-
 3 files changed, 8 insertions(+), 13 deletions(-)

diff --git a/drivers/net/wireless/p54/main.c b/drivers/net/wireless/p54/main.c
index 26428e4..3fe6366 100644
--- a/drivers/net/wireless/p54/main.c
+++ b/drivers/net/wireless/p54/main.c
@@ -358,16 +358,6 @@ static int p54_get_stats(struct ieee80211_hw *dev,
 	return 0;
 }
 
-static int p54_get_tx_stats(struct ieee80211_hw *dev,
-			    struct ieee80211_tx_queue_stats *stats)
-{
-	struct p54_common *priv = dev->priv;
-
-	memcpy(stats, &priv->tx_stats[P54_QUEUE_DATA],
-	       sizeof(stats[0]) * dev->queues);
-	return 0;
-}
-
 static void p54_bss_info_changed(struct ieee80211_hw *dev,
 				 struct ieee80211_vif *vif,
 				 struct ieee80211_bss_conf *info,
@@ -522,7 +512,6 @@ static const struct ieee80211_ops p54_ops = {
 	.configure_filter	= p54_configure_filter,
 	.conf_tx		= p54_conf_tx,
 	.get_stats		= p54_get_stats,
-	.get_tx_stats		= p54_get_tx_stats
 };
 
 struct ieee80211_hw *p54_init_common(size_t priv_data_len)
diff --git a/drivers/net/wireless/p54/p54.h b/drivers/net/wireless/p54/p54.h
index 1afc394..43a3b2e 100644
--- a/drivers/net/wireless/p54/p54.h
+++ b/drivers/net/wireless/p54/p54.h
@@ -157,6 +157,12 @@ struct p54_led_dev {
 
 #endif /* CONFIG_P54_LEDS */
 
+struct p54_tx_queue_stats {
+	unsigned int len;
+	unsigned int limit;
+	unsigned int count;
+};
+
 struct p54_common {
 	struct ieee80211_hw *hw;
 	struct ieee80211_vif *vif;
@@ -183,7 +189,7 @@ struct p54_common {
 	/* (e)DCF / QOS state */
 	bool use_short_slot;
 	spinlock_t tx_stats_lock;
-	struct ieee80211_tx_queue_stats tx_stats[8];
+	struct p54_tx_queue_stats tx_stats[8];
 	struct p54_edcf_queue_param qos_params[8];
 
 	/* Radio data */
diff --git a/drivers/net/wireless/p54/txrx.c b/drivers/net/wireless/p54/txrx.c
index b6dda2b..0e8f694 100644
--- a/drivers/net/wireless/p54/txrx.c
+++ b/drivers/net/wireless/p54/txrx.c
@@ -183,7 +183,7 @@ static int p54_tx_qos_accounting_alloc(struct p54_common *priv,
 				       struct sk_buff *skb,
 				       const u16 p54_queue)
 {
-	struct ieee80211_tx_queue_stats *queue;
+	struct p54_tx_queue_stats *queue;
 	unsigned long flags;
 
 	if (WARN_ON(p54_queue > P54_QUEUE_NUM))


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 09/10] rt2x00: remove get_tx_stats() mac80211 op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
                   ` (6 preceding siblings ...)
  2010-02-07  8:21 ` [PATCH 08/10] p54: " Kalle Valo
@ 2010-02-07  8:21 ` Kalle Valo
  2010-02-07 11:52   ` Gertjan van Wingerde
  2010-02-07 14:03   ` Ivo van Doorn
  2010-02-07  8:22 ` [PATCH 10/10] mac80211: remove get_tx_stats() driver op Kalle Valo
  8 siblings, 2 replies; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:21 UTC (permalink / raw)
  To: linux-wireless; +Cc: Ivo van Doorn, Gertjan van Wingerde

get_tx_stats() will be removed from mac80211.

Compile-tested only.

Cc: Ivo van Doorn <IvDoorn@gmail.com>
Cc: Gertjan van Wingerde <gwingerde@gmail.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/rt2x00/rt2400pci.c |    1 -
 drivers/net/wireless/rt2x00/rt2500pci.c |    1 -
 drivers/net/wireless/rt2x00/rt2500usb.c |    1 -
 drivers/net/wireless/rt2x00/rt2800lib.c |    1 -
 drivers/net/wireless/rt2x00/rt2x00.h    |    2 --
 drivers/net/wireless/rt2x00/rt2x00mac.c |   16 ----------------
 drivers/net/wireless/rt2x00/rt61pci.c   |    1 -
 drivers/net/wireless/rt2x00/rt73usb.c   |    1 -
 8 files changed, 0 insertions(+), 24 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2400pci.c b/drivers/net/wireless/rt2x00/rt2400pci.c
index d86d233..1843359 100644
--- a/drivers/net/wireless/rt2x00/rt2400pci.c
+++ b/drivers/net/wireless/rt2x00/rt2400pci.c
@@ -1561,7 +1561,6 @@ static const struct ieee80211_ops rt2400pci_mac80211_ops = {
 	.get_stats		= rt2x00mac_get_stats,
 	.bss_info_changed	= rt2x00mac_bss_info_changed,
 	.conf_tx		= rt2400pci_conf_tx,
-	.get_tx_stats		= rt2x00mac_get_tx_stats,
 	.get_tsf		= rt2400pci_get_tsf,
 	.tx_last_beacon		= rt2400pci_tx_last_beacon,
 	.rfkill_poll		= rt2x00mac_rfkill_poll,
diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c
index 46cbc6e..7dfcffa 100644
--- a/drivers/net/wireless/rt2x00/rt2500pci.c
+++ b/drivers/net/wireless/rt2x00/rt2500pci.c
@@ -1859,7 +1859,6 @@ static const struct ieee80211_ops rt2500pci_mac80211_ops = {
 	.get_stats		= rt2x00mac_get_stats,
 	.bss_info_changed	= rt2x00mac_bss_info_changed,
 	.conf_tx		= rt2x00mac_conf_tx,
-	.get_tx_stats		= rt2x00mac_get_tx_stats,
 	.get_tsf		= rt2500pci_get_tsf,
 	.tx_last_beacon		= rt2500pci_tx_last_beacon,
 	.rfkill_poll		= rt2x00mac_rfkill_poll,
diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c
index 9e6f865..81ca4ec 100644
--- a/drivers/net/wireless/rt2x00/rt2500usb.c
+++ b/drivers/net/wireless/rt2x00/rt2500usb.c
@@ -1761,7 +1761,6 @@ static const struct ieee80211_ops rt2500usb_mac80211_ops = {
 	.get_stats		= rt2x00mac_get_stats,
 	.bss_info_changed	= rt2x00mac_bss_info_changed,
 	.conf_tx		= rt2x00mac_conf_tx,
-	.get_tx_stats		= rt2x00mac_get_tx_stats,
 	.rfkill_poll		= rt2x00mac_rfkill_poll,
 };
 
diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
index 529a373..a45e027 100644
--- a/drivers/net/wireless/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/rt2x00/rt2800lib.c
@@ -2297,7 +2297,6 @@ const struct ieee80211_ops rt2800_mac80211_ops = {
 	.set_rts_threshold	= rt2800_set_rts_threshold,
 	.bss_info_changed	= rt2x00mac_bss_info_changed,
 	.conf_tx		= rt2800_conf_tx,
-	.get_tx_stats		= rt2x00mac_get_tx_stats,
 	.get_tsf		= rt2800_get_tsf,
 	.rfkill_poll		= rt2x00mac_rfkill_poll,
 };
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h
index 096da85..43b70c6 100644
--- a/drivers/net/wireless/rt2x00/rt2x00.h
+++ b/drivers/net/wireless/rt2x00/rt2x00.h
@@ -1044,8 +1044,6 @@ int rt2x00mac_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 #endif /* CONFIG_RT2X00_LIB_CRYPTO */
 int rt2x00mac_get_stats(struct ieee80211_hw *hw,
 			struct ieee80211_low_level_stats *stats);
-int rt2x00mac_get_tx_stats(struct ieee80211_hw *hw,
-			   struct ieee80211_tx_queue_stats *stats);
 void rt2x00mac_bss_info_changed(struct ieee80211_hw *hw,
 				struct ieee80211_vif *vif,
 				struct ieee80211_bss_conf *bss_conf,
diff --git a/drivers/net/wireless/rt2x00/rt2x00mac.c b/drivers/net/wireless/rt2x00/rt2x00mac.c
index 00f1f93..abbd857 100644
--- a/drivers/net/wireless/rt2x00/rt2x00mac.c
+++ b/drivers/net/wireless/rt2x00/rt2x00mac.c
@@ -555,22 +555,6 @@ int rt2x00mac_get_stats(struct ieee80211_hw *hw,
 }
 EXPORT_SYMBOL_GPL(rt2x00mac_get_stats);
 
-int rt2x00mac_get_tx_stats(struct ieee80211_hw *hw,
-			   struct ieee80211_tx_queue_stats *stats)
-{
-	struct rt2x00_dev *rt2x00dev = hw->priv;
-	unsigned int i;
-
-	for (i = 0; i < rt2x00dev->ops->tx_queues; i++) {
-		stats[i].len = rt2x00dev->tx[i].length;
-		stats[i].limit = rt2x00dev->tx[i].limit;
-		stats[i].count = rt2x00dev->tx[i].count;
-	}
-
-	return 0;
-}
-EXPORT_SYMBOL_GPL(rt2x00mac_get_tx_stats);
-
 void rt2x00mac_bss_info_changed(struct ieee80211_hw *hw,
 				struct ieee80211_vif *vif,
 				struct ieee80211_bss_conf *bss_conf,
diff --git a/drivers/net/wireless/rt2x00/rt61pci.c b/drivers/net/wireless/rt2x00/rt61pci.c
index c353b49..8813400 100644
--- a/drivers/net/wireless/rt2x00/rt61pci.c
+++ b/drivers/net/wireless/rt2x00/rt61pci.c
@@ -2730,7 +2730,6 @@ static const struct ieee80211_ops rt61pci_mac80211_ops = {
 	.get_stats		= rt2x00mac_get_stats,
 	.bss_info_changed	= rt2x00mac_bss_info_changed,
 	.conf_tx		= rt61pci_conf_tx,
-	.get_tx_stats		= rt2x00mac_get_tx_stats,
 	.get_tsf		= rt61pci_get_tsf,
 	.rfkill_poll		= rt2x00mac_rfkill_poll,
 };
diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c
index a026912..3781eb7 100644
--- a/drivers/net/wireless/rt2x00/rt73usb.c
+++ b/drivers/net/wireless/rt2x00/rt73usb.c
@@ -2245,7 +2245,6 @@ static const struct ieee80211_ops rt73usb_mac80211_ops = {
 	.get_stats		= rt2x00mac_get_stats,
 	.bss_info_changed	= rt2x00mac_bss_info_changed,
 	.conf_tx		= rt73usb_conf_tx,
-	.get_tx_stats		= rt2x00mac_get_tx_stats,
 	.get_tsf		= rt73usb_get_tsf,
 	.rfkill_poll		= rt2x00mac_rfkill_poll,
 };


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 10/10] mac80211: remove get_tx_stats() driver op
  2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
                   ` (7 preceding siblings ...)
  2010-02-07  8:21 ` [PATCH 09/10] rt2x00: " Kalle Valo
@ 2010-02-07  8:22 ` Kalle Valo
  2010-02-08  9:25   ` Johannes Berg
  8 siblings, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07  8:22 UTC (permalink / raw)
  To: linux-wireless; +Cc: Johannes Berg

get_tx_stats() driver operation is not currently used anywhere in mac80211
and there are no plans to use it in the not-so-near future. So it can go
without anyone missing it.

Cc: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 Documentation/DocBook/mac80211.tmpl |    1 -
 include/net/mac80211.h              |   22 ----------------------
 net/mac80211/driver-ops.h           |    8 --------
 net/mac80211/driver-trace.h         |   23 -----------------------
 4 files changed, 0 insertions(+), 54 deletions(-)

diff --git a/Documentation/DocBook/mac80211.tmpl b/Documentation/DocBook/mac80211.tmpl
index 971d1c0..affb15a 100644
--- a/Documentation/DocBook/mac80211.tmpl
+++ b/Documentation/DocBook/mac80211.tmpl
@@ -234,7 +234,6 @@ usage should require reading the full document.
       <title>Multiple queues and QoS support</title>
       <para>TBD</para>
 !Finclude/net/mac80211.h ieee80211_tx_queue_params
-!Finclude/net/mac80211.h ieee80211_tx_queue_stats
     </chapter>
 
     <chapter id="AP">
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index 74ccf30..b50d13e 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -117,19 +117,6 @@ struct ieee80211_tx_queue_params {
 	bool uapsd;
 };
 
-/**
- * struct ieee80211_tx_queue_stats - transmit queue statistics
- *
- * @len: number of packets in queue
- * @limit: queue length limit
- * @count: number of frames sent
- */
-struct ieee80211_tx_queue_stats {
-	unsigned int len;
-	unsigned int limit;
-	unsigned int count;
-};
-
 struct ieee80211_low_level_stats {
 	unsigned int dot11ACKFailureCount;
 	unsigned int dot11RTSFailureCount;
@@ -1543,13 +1530,6 @@ enum ieee80211_ampdu_mlme_action {
  *	Returns a negative error code on failure.
  *	The callback can sleep.
  *
- * @get_tx_stats: Get statistics of the current TX queue status. This is used
- *	to get number of currently queued packets (queue length), maximum queue
- *	size (limit), and total number of packets sent using each TX queue
- *	(count). The 'stats' pointer points to an array that has hw->queues
- *	items.
- *	The callback must be atomic.
- *
  * @get_tsf: Get the current TSF timer value from firmware/hardware. Currently,
  *	this is only used for IBSS mode BSSID merging and debugging. Is not a
  *	required function.
@@ -1639,8 +1619,6 @@ struct ieee80211_ops {
 			enum sta_notify_cmd, struct ieee80211_sta *sta);
 	int (*conf_tx)(struct ieee80211_hw *hw, u16 queue,
 		       const struct ieee80211_tx_queue_params *params);
-	int (*get_tx_stats)(struct ieee80211_hw *hw,
-			    struct ieee80211_tx_queue_stats *stats);
 	u64 (*get_tsf)(struct ieee80211_hw *hw);
 	void (*set_tsf)(struct ieee80211_hw *hw, u64 tsf);
 	void (*reset_tsf)(struct ieee80211_hw *hw);
diff --git a/net/mac80211/driver-ops.h b/net/mac80211/driver-ops.h
index 6c31f38..c447228 100644
--- a/net/mac80211/driver-ops.h
+++ b/net/mac80211/driver-ops.h
@@ -256,14 +256,6 @@ static inline int drv_conf_tx(struct ieee80211_local *local, u16 queue,
 	return ret;
 }
 
-static inline int drv_get_tx_stats(struct ieee80211_local *local,
-				   struct ieee80211_tx_queue_stats *stats)
-{
-	int ret = local->ops->get_tx_stats(&local->hw, stats);
-	trace_drv_get_tx_stats(local, stats, ret);
-	return ret;
-}
-
 static inline u64 drv_get_tsf(struct ieee80211_local *local)
 {
 	u64 ret = -1ULL;
diff --git a/net/mac80211/driver-trace.h b/net/mac80211/driver-trace.h
index 502424b..70e8bc6 100644
--- a/net/mac80211/driver-trace.h
+++ b/net/mac80211/driver-trace.h
@@ -578,29 +578,6 @@ TRACE_EVENT(drv_conf_tx,
 	)
 );
 
-TRACE_EVENT(drv_get_tx_stats,
-	TP_PROTO(struct ieee80211_local *local,
-		 struct ieee80211_tx_queue_stats *stats,
-		 int ret),
-
-	TP_ARGS(local, stats, ret),
-
-	TP_STRUCT__entry(
-		LOCAL_ENTRY
-		__field(int, ret)
-	),
-
-	TP_fast_assign(
-		LOCAL_ASSIGN;
-		__entry->ret = ret;
-	),
-
-	TP_printk(
-		LOCAL_PR_FMT " ret:%d",
-		LOCAL_PR_ARG, __entry->ret
-	)
-);
-
 TRACE_EVENT(drv_get_tsf,
 	TP_PROTO(struct ieee80211_local *local, u64 ret),
 


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* Re: [PATCH 05/10] b43: remove get_tx_stats() mac80211 op
  2010-02-07  8:21 ` [PATCH 05/10] b43: " Kalle Valo
@ 2010-02-07 11:32   ` Michael Buesch
  2010-02-07 17:02     ` Kalle Valo
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Buesch @ 2010-02-07 11:32 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless, Stefano Brivio, Larry Finger

On Sunday 07 February 2010 09:21:19 Kalle Valo wrote:
> -		stats[i].count = ring->nr_tx_packets;

> -		stats[i].count = q->nr_tx_packets;

So you can remove the whole nr_tx_packets variable from the data structures,
because it's only used for the get_stats callback.

-- 
Greetings, Michael.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 09/10] rt2x00: remove get_tx_stats() mac80211 op
  2010-02-07  8:21 ` [PATCH 09/10] rt2x00: " Kalle Valo
@ 2010-02-07 11:52   ` Gertjan van Wingerde
  2010-02-07 17:04     ` Kalle Valo
  2010-02-07 14:03   ` Ivo van Doorn
  1 sibling, 1 reply; 25+ messages in thread
From: Gertjan van Wingerde @ 2010-02-07 11:52 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless, Ivo van Doorn

On 02/07/10 09:21, Kalle Valo wrote:
> get_tx_stats() will be removed from mac80211.
> 
> Compile-tested only.
> 
> Cc: Ivo van Doorn <IvDoorn@gmail.com>
> Cc: Gertjan van Wingerde <gwingerde@gmail.com>
> Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
> ---

Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>

Although I seem to be missing the actual removal of the
get_tx_stats from mac80211.

---
Gertjan.

>  drivers/net/wireless/rt2x00/rt2400pci.c |    1 -
>  drivers/net/wireless/rt2x00/rt2500pci.c |    1 -
>  drivers/net/wireless/rt2x00/rt2500usb.c |    1 -
>  drivers/net/wireless/rt2x00/rt2800lib.c |    1 -
>  drivers/net/wireless/rt2x00/rt2x00.h    |    2 --
>  drivers/net/wireless/rt2x00/rt2x00mac.c |   16 ----------------
>  drivers/net/wireless/rt2x00/rt61pci.c   |    1 -
>  drivers/net/wireless/rt2x00/rt73usb.c   |    1 -
>  8 files changed, 0 insertions(+), 24 deletions(-)
> 
> diff --git a/drivers/net/wireless/rt2x00/rt2400pci.c b/drivers/net/wireless/rt2x00/rt2400pci.c
> index d86d233..1843359 100644
> --- a/drivers/net/wireless/rt2x00/rt2400pci.c
> +++ b/drivers/net/wireless/rt2x00/rt2400pci.c
> @@ -1561,7 +1561,6 @@ static const struct ieee80211_ops rt2400pci_mac80211_ops = {
>  	.get_stats		= rt2x00mac_get_stats,
>  	.bss_info_changed	= rt2x00mac_bss_info_changed,
>  	.conf_tx		= rt2400pci_conf_tx,
> -	.get_tx_stats		= rt2x00mac_get_tx_stats,
>  	.get_tsf		= rt2400pci_get_tsf,
>  	.tx_last_beacon		= rt2400pci_tx_last_beacon,
>  	.rfkill_poll		= rt2x00mac_rfkill_poll,
> diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c
> index 46cbc6e..7dfcffa 100644
> --- a/drivers/net/wireless/rt2x00/rt2500pci.c
> +++ b/drivers/net/wireless/rt2x00/rt2500pci.c
> @@ -1859,7 +1859,6 @@ static const struct ieee80211_ops rt2500pci_mac80211_ops = {
>  	.get_stats		= rt2x00mac_get_stats,
>  	.bss_info_changed	= rt2x00mac_bss_info_changed,
>  	.conf_tx		= rt2x00mac_conf_tx,
> -	.get_tx_stats		= rt2x00mac_get_tx_stats,
>  	.get_tsf		= rt2500pci_get_tsf,
>  	.tx_last_beacon		= rt2500pci_tx_last_beacon,
>  	.rfkill_poll		= rt2x00mac_rfkill_poll,
> diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c
> index 9e6f865..81ca4ec 100644
> --- a/drivers/net/wireless/rt2x00/rt2500usb.c
> +++ b/drivers/net/wireless/rt2x00/rt2500usb.c
> @@ -1761,7 +1761,6 @@ static const struct ieee80211_ops rt2500usb_mac80211_ops = {
>  	.get_stats		= rt2x00mac_get_stats,
>  	.bss_info_changed	= rt2x00mac_bss_info_changed,
>  	.conf_tx		= rt2x00mac_conf_tx,
> -	.get_tx_stats		= rt2x00mac_get_tx_stats,
>  	.rfkill_poll		= rt2x00mac_rfkill_poll,
>  };
>  
> diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
> index 529a373..a45e027 100644
> --- a/drivers/net/wireless/rt2x00/rt2800lib.c
> +++ b/drivers/net/wireless/rt2x00/rt2800lib.c
> @@ -2297,7 +2297,6 @@ const struct ieee80211_ops rt2800_mac80211_ops = {
>  	.set_rts_threshold	= rt2800_set_rts_threshold,
>  	.bss_info_changed	= rt2x00mac_bss_info_changed,
>  	.conf_tx		= rt2800_conf_tx,
> -	.get_tx_stats		= rt2x00mac_get_tx_stats,
>  	.get_tsf		= rt2800_get_tsf,
>  	.rfkill_poll		= rt2x00mac_rfkill_poll,
>  };
> diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h
> index 096da85..43b70c6 100644
> --- a/drivers/net/wireless/rt2x00/rt2x00.h
> +++ b/drivers/net/wireless/rt2x00/rt2x00.h
> @@ -1044,8 +1044,6 @@ int rt2x00mac_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
>  #endif /* CONFIG_RT2X00_LIB_CRYPTO */
>  int rt2x00mac_get_stats(struct ieee80211_hw *hw,
>  			struct ieee80211_low_level_stats *stats);
> -int rt2x00mac_get_tx_stats(struct ieee80211_hw *hw,
> -			   struct ieee80211_tx_queue_stats *stats);
>  void rt2x00mac_bss_info_changed(struct ieee80211_hw *hw,
>  				struct ieee80211_vif *vif,
>  				struct ieee80211_bss_conf *bss_conf,
> diff --git a/drivers/net/wireless/rt2x00/rt2x00mac.c b/drivers/net/wireless/rt2x00/rt2x00mac.c
> index 00f1f93..abbd857 100644
> --- a/drivers/net/wireless/rt2x00/rt2x00mac.c
> +++ b/drivers/net/wireless/rt2x00/rt2x00mac.c
> @@ -555,22 +555,6 @@ int rt2x00mac_get_stats(struct ieee80211_hw *hw,
>  }
>  EXPORT_SYMBOL_GPL(rt2x00mac_get_stats);
>  
> -int rt2x00mac_get_tx_stats(struct ieee80211_hw *hw,
> -			   struct ieee80211_tx_queue_stats *stats)
> -{
> -	struct rt2x00_dev *rt2x00dev = hw->priv;
> -	unsigned int i;
> -
> -	for (i = 0; i < rt2x00dev->ops->tx_queues; i++) {
> -		stats[i].len = rt2x00dev->tx[i].length;
> -		stats[i].limit = rt2x00dev->tx[i].limit;
> -		stats[i].count = rt2x00dev->tx[i].count;
> -	}
> -
> -	return 0;
> -}
> -EXPORT_SYMBOL_GPL(rt2x00mac_get_tx_stats);
> -
>  void rt2x00mac_bss_info_changed(struct ieee80211_hw *hw,
>  				struct ieee80211_vif *vif,
>  				struct ieee80211_bss_conf *bss_conf,
> diff --git a/drivers/net/wireless/rt2x00/rt61pci.c b/drivers/net/wireless/rt2x00/rt61pci.c
> index c353b49..8813400 100644
> --- a/drivers/net/wireless/rt2x00/rt61pci.c
> +++ b/drivers/net/wireless/rt2x00/rt61pci.c
> @@ -2730,7 +2730,6 @@ static const struct ieee80211_ops rt61pci_mac80211_ops = {
>  	.get_stats		= rt2x00mac_get_stats,
>  	.bss_info_changed	= rt2x00mac_bss_info_changed,
>  	.conf_tx		= rt61pci_conf_tx,
> -	.get_tx_stats		= rt2x00mac_get_tx_stats,
>  	.get_tsf		= rt61pci_get_tsf,
>  	.rfkill_poll		= rt2x00mac_rfkill_poll,
>  };
> diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c
> index a026912..3781eb7 100644
> --- a/drivers/net/wireless/rt2x00/rt73usb.c
> +++ b/drivers/net/wireless/rt2x00/rt73usb.c
> @@ -2245,7 +2245,6 @@ static const struct ieee80211_ops rt73usb_mac80211_ops = {
>  	.get_stats		= rt2x00mac_get_stats,
>  	.bss_info_changed	= rt2x00mac_bss_info_changed,
>  	.conf_tx		= rt73usb_conf_tx,
> -	.get_tx_stats		= rt2x00mac_get_tx_stats,
>  	.get_tsf		= rt73usb_get_tsf,
>  	.rfkill_poll		= rt2x00mac_rfkill_poll,
>  };
> 
> 


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 08/10] p54: remove get_tx_stats() mac80211 op
  2010-02-07  8:21 ` [PATCH 08/10] p54: " Kalle Valo
@ 2010-02-07 13:52   ` Christian Lamparter
  0 siblings, 0 replies; 25+ messages in thread
From: Christian Lamparter @ 2010-02-07 13:52 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless, Christian Lamparter

On Sunday 07 February 2010 09:21:46 Kalle Valo wrote:
> get_tx_stats() will be removed from mac80211.
> 
> p54 uses struct ieee80211_tx_queue_stats also internally, so create a new
> identical struct p54_tx_queue_stats which the driver can use.
> 
> Cc: Christian Lamparter <chunkeey@web.de>
> Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
> ---

Tested-by: Christian Lamparter <chunkeey@googlemail.com>

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 03/10] ar9170: remove get_tx_stats() mac80211 op
  2010-02-07  8:21 ` [PATCH 03/10] ar9170: " Kalle Valo
@ 2010-02-07 13:53   ` Christian Lamparter
  0 siblings, 0 replies; 25+ messages in thread
From: Christian Lamparter @ 2010-02-07 13:53 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless, Christian Lamparter

On Sunday 07 February 2010 09:21:00 Kalle Valo wrote:
> get_tx_stats() will be removed from mac80211.
> 
> Because ar9170 uses ieee80211_tx_queue_stats internally, create a new
> identical struct ar9170_tx_queue_stats which the driver can use.
> 
> Cc: Christian Lamparter <chunkeey@web.de>
> Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
> ---

Tested-by: Christian Lamparter <chunkeey@googlemail.com>

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 09/10] rt2x00: remove get_tx_stats() mac80211 op
  2010-02-07  8:21 ` [PATCH 09/10] rt2x00: " Kalle Valo
  2010-02-07 11:52   ` Gertjan van Wingerde
@ 2010-02-07 14:03   ` Ivo van Doorn
  1 sibling, 0 replies; 25+ messages in thread
From: Ivo van Doorn @ 2010-02-07 14:03 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless, Gertjan van Wingerde

On Sunday 07 February 2010, Kalle Valo wrote:
> get_tx_stats() will be removed from mac80211.
> 
> Compile-tested only.
> 
> Cc: Ivo van Doorn <IvDoorn@gmail.com>
> Cc: Gertjan van Wingerde <gwingerde@gmail.com>
> Signed-off-by: Kalle Valo <kalle.valo@iki.fi>

Acked-by: Ivo van Doorn <IvDoorn@gmail.com>

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 04/10] ath5k: remove get_tx_stats() mac80211 op
  2010-02-07  8:21 ` [PATCH 04/10] ath5k: " Kalle Valo
@ 2010-02-07 15:04   ` Bob Copeland
  0 siblings, 0 replies; 25+ messages in thread
From: Bob Copeland @ 2010-02-07 15:04 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless, Luis R. Rodriguez, Jiri Slaby, Nick Kossifidis

On Sun, Feb 07, 2010 at 10:21:07AM +0200, Kalle Valo wrote:
> get_tx_stats() will be removed from mac80211.
> 
> Compile-tested only.

The ath5k portion is equivalent to the rfc I posted a while ago
(http://patchwork.kernel.org/patch/37537/ - didn't check the rest) so you
happily have my:

Acked-by: Bob Copeland <me@bobcopeland.com>

-- 
Bob Copeland %% www.bobcopeland.com


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 05/10] b43: remove get_tx_stats() mac80211 op
  2010-02-07 11:32   ` Michael Buesch
@ 2010-02-07 17:02     ` Kalle Valo
  2010-02-07 17:50       ` [PATCH v2 1/2] " Kalle Valo
  2010-02-07 17:51       ` [PATCH v2 2/2] b43legacy: " Kalle Valo
  0 siblings, 2 replies; 25+ messages in thread
From: Kalle Valo @ 2010-02-07 17:02 UTC (permalink / raw)
  To: Michael Buesch; +Cc: linux-wireless, Stefano Brivio, Larry Finger

Michael Buesch <mb@bu3sch.de> writes:

> On Sunday 07 February 2010 09:21:19 Kalle Valo wrote:
>> -		stats[i].count = ring->nr_tx_packets;
>
>> -		stats[i].count = q->nr_tx_packets;
>
> So you can remove the whole nr_tx_packets variable from the data structures,
> because it's only used for the get_stats callback.

Thanks. I'll send v2 of this patch.

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 09/10] rt2x00: remove get_tx_stats() mac80211 op
  2010-02-07 11:52   ` Gertjan van Wingerde
@ 2010-02-07 17:04     ` Kalle Valo
  2010-02-08 20:15       ` Gertjan van Wingerde
  0 siblings, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07 17:04 UTC (permalink / raw)
  To: Gertjan van Wingerde; +Cc: linux-wireless, Ivo van Doorn

Gertjan van Wingerde <gwingerde@gmail.com> writes:

> On 02/07/10 09:21, Kalle Valo wrote:
>> get_tx_stats() will be removed from mac80211.
>> 
>> Compile-tested only.
>> 
>> Cc: Ivo van Doorn <IvDoorn@gmail.com>
>> Cc: Gertjan van Wingerde <gwingerde@gmail.com>
>> Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
>> ---
>
> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>

Thanks.

> Although I seem to be missing the actual removal of the
> get_tx_stats from mac80211.

That's patch 10:

http://marc.info/?l=linux-wireless&m=126553093501483&w=2

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [PATCH v2 1/2] b43: remove get_tx_stats() mac80211 op
  2010-02-07 17:02     ` Kalle Valo
@ 2010-02-07 17:50       ` Kalle Valo
  2010-02-07 18:42         ` Kalle Valo
  2010-02-07 17:51       ` [PATCH v2 2/2] b43legacy: " Kalle Valo
  1 sibling, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07 17:50 UTC (permalink / raw)
  To: linux-wireless; +Cc: Michael Buesch, Stefano Brivio, Larry Finger

get_tx_stats() will be removed from mac80211.

Compile-tested only.

Cc: Stefano Brivio <stefano.brivio@polimi.it>
Cc: Michael Buesch <mb@bu3sch.de>
Cc: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/b43/dma.c  |   17 -----------------
 drivers/net/wireless/b43/dma.h  |    5 -----
 drivers/net/wireless/b43/main.c |   22 ----------------------
 drivers/net/wireless/b43/pio.c  |   17 -----------------
 drivers/net/wireless/b43/pio.h  |    5 -----
 5 files changed, 0 insertions(+), 66 deletions(-)

diff --git a/drivers/net/wireless/b43/dma.c b/drivers/net/wireless/b43/dma.c
index 615af22..be7abf8 100644
--- a/drivers/net/wireless/b43/dma.c
+++ b/drivers/net/wireless/b43/dma.c
@@ -1369,7 +1369,6 @@ int b43_dma_tx(struct b43_wldev *dev, struct sk_buff *skb)
 		b43err(dev->wl, "DMA tx mapping failure\n");
 		goto out;
 	}
-	ring->nr_tx_packets++;
 	if ((free_slots(ring) < TX_SLOTS_PER_FRAME) ||
 	    should_inject_overflow(ring)) {
 		/* This TX ring is full. */
@@ -1500,22 +1499,6 @@ void b43_dma_handle_txstatus(struct b43_wldev *dev,
 	}
 }
 
-void b43_dma_get_tx_stats(struct b43_wldev *dev,
-			  struct ieee80211_tx_queue_stats *stats)
-{
-	const int nr_queues = dev->wl->hw->queues;
-	struct b43_dmaring *ring;
-	int i;
-
-	for (i = 0; i < nr_queues; i++) {
-		ring = select_ring_by_priority(dev, i);
-
-		stats[i].len = ring->used_slots / TX_SLOTS_PER_FRAME;
-		stats[i].limit = ring->nr_slots / TX_SLOTS_PER_FRAME;
-		stats[i].count = ring->nr_tx_packets;
-	}
-}
-
 static void dma_rx(struct b43_dmaring *ring, int *slot)
 {
 	const struct b43_dma_ops *ops = ring->ops;
diff --git a/drivers/net/wireless/b43/dma.h b/drivers/net/wireless/b43/dma.h
index f7ab37c..dc91944 100644
--- a/drivers/net/wireless/b43/dma.h
+++ b/drivers/net/wireless/b43/dma.h
@@ -228,8 +228,6 @@ struct b43_dmaring {
 	int used_slots;
 	/* Currently used slot in the ring. */
 	int current_slot;
-	/* Total number of packets sent. Statistics only. */
-	unsigned int nr_tx_packets;
 	/* Frameoffset in octets. */
 	u32 frameoffset;
 	/* Descriptor buffer size. */
@@ -278,9 +276,6 @@ void b43_dma_free(struct b43_wldev *dev);
 void b43_dma_tx_suspend(struct b43_wldev *dev);
 void b43_dma_tx_resume(struct b43_wldev *dev);
 
-void b43_dma_get_tx_stats(struct b43_wldev *dev,
-			  struct ieee80211_tx_queue_stats *stats);
-
 int b43_dma_tx(struct b43_wldev *dev,
 	       struct sk_buff *skb);
 void b43_dma_handle_txstatus(struct b43_wldev *dev,
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
index 6a87e08..eba3978 100644
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -3356,27 +3356,6 @@ out_unlock:
 	return err;
 }
 
-static int b43_op_get_tx_stats(struct ieee80211_hw *hw,
-			       struct ieee80211_tx_queue_stats *stats)
-{
-	struct b43_wl *wl = hw_to_b43_wl(hw);
-	struct b43_wldev *dev;
-	int err = -ENODEV;
-
-	mutex_lock(&wl->mutex);
-	dev = wl->current_dev;
-	if (dev && b43_status(dev) >= B43_STAT_STARTED) {
-		if (b43_using_pio_transfers(dev))
-			b43_pio_get_tx_stats(dev, stats);
-		else
-			b43_dma_get_tx_stats(dev, stats);
-		err = 0;
-	}
-	mutex_unlock(&wl->mutex);
-
-	return err;
-}
-
 static int b43_op_get_stats(struct ieee80211_hw *hw,
 			    struct ieee80211_low_level_stats *stats)
 {
@@ -4603,7 +4582,6 @@ static const struct ieee80211_ops b43_hw_ops = {
 	.set_key		= b43_op_set_key,
 	.update_tkip_key	= b43_op_update_tkip_key,
 	.get_stats		= b43_op_get_stats,
-	.get_tx_stats		= b43_op_get_tx_stats,
 	.get_tsf		= b43_op_get_tsf,
 	.set_tsf		= b43_op_set_tsf,
 	.start			= b43_op_start,
diff --git a/drivers/net/wireless/b43/pio.c b/drivers/net/wireless/b43/pio.c
index c01b8e0..a6062c3 100644
--- a/drivers/net/wireless/b43/pio.c
+++ b/drivers/net/wireless/b43/pio.c
@@ -559,7 +559,6 @@ int b43_pio_tx(struct b43_wldev *dev, struct sk_buff *skb)
 		b43err(dev->wl, "PIO transmission failure\n");
 		goto out;
 	}
-	q->nr_tx_packets++;
 
 	B43_WARN_ON(q->buffer_used > q->buffer_size);
 	if (((q->buffer_size - q->buffer_used) < roundup(2 + 2 + 6, 4)) ||
@@ -605,22 +604,6 @@ void b43_pio_handle_txstatus(struct b43_wldev *dev,
 	}
 }
 
-void b43_pio_get_tx_stats(struct b43_wldev *dev,
-			  struct ieee80211_tx_queue_stats *stats)
-{
-	const int nr_queues = dev->wl->hw->queues;
-	struct b43_pio_txqueue *q;
-	int i;
-
-	for (i = 0; i < nr_queues; i++) {
-		q = select_queue_by_priority(dev, i);
-
-		stats[i].len = B43_PIO_MAX_NR_TXPACKETS - q->free_packet_slots;
-		stats[i].limit = B43_PIO_MAX_NR_TXPACKETS;
-		stats[i].count = q->nr_tx_packets;
-	}
-}
-
 /* Returns whether we should fetch another frame. */
 static bool pio_rx_frame(struct b43_pio_rxqueue *q)
 {
diff --git a/drivers/net/wireless/b43/pio.h b/drivers/net/wireless/b43/pio.h
index 7b3c42f..1e51614 100644
--- a/drivers/net/wireless/b43/pio.h
+++ b/drivers/net/wireless/b43/pio.h
@@ -90,9 +90,6 @@ struct b43_pio_txqueue {
 	struct b43_pio_txpacket packets[B43_PIO_MAX_NR_TXPACKETS];
 	struct list_head packets_list;
 
-	/* Total number of transmitted packets. */
-	unsigned int nr_tx_packets;
-
 	/* Shortcut to the 802.11 core revision. This is to
 	 * avoid horrible pointer dereferencing in the fastpaths. */
 	u8 rev;
@@ -160,8 +157,6 @@ void b43_pio_free(struct b43_wldev *dev);
 int b43_pio_tx(struct b43_wldev *dev, struct sk_buff *skb);
 void b43_pio_handle_txstatus(struct b43_wldev *dev,
 			     const struct b43_txstatus *status);
-void b43_pio_get_tx_stats(struct b43_wldev *dev,
-			  struct ieee80211_tx_queue_stats *stats);
 void b43_pio_rx(struct b43_pio_rxqueue *q);
 
 void b43_pio_tx_suspend(struct b43_wldev *dev);


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v2 2/2] b43legacy: remove get_tx_stats() mac80211 op
  2010-02-07 17:02     ` Kalle Valo
  2010-02-07 17:50       ` [PATCH v2 1/2] " Kalle Valo
@ 2010-02-07 17:51       ` Kalle Valo
  2010-02-07 18:40         ` Kalle Valo
  1 sibling, 1 reply; 25+ messages in thread
From: Kalle Valo @ 2010-02-07 17:51 UTC (permalink / raw)
  To: linux-wireless; +Cc: Stefano Brivio, Larry Finger

get_tx_stats() will be removed from mac80211.

Compile-tested only.

Cc: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stefano Brivio <stefano.brivio@polimi.it>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
---
 drivers/net/wireless/b43legacy/dma.c  |   20 --------------------
 drivers/net/wireless/b43legacy/dma.h  |   10 ----------
 drivers/net/wireless/b43legacy/main.c |   24 ------------------------
 drivers/net/wireless/b43legacy/pio.c  |   13 -------------
 drivers/net/wireless/b43legacy/pio.h  |   11 -----------
 5 files changed, 0 insertions(+), 78 deletions(-)

diff --git a/drivers/net/wireless/b43legacy/dma.c b/drivers/net/wireless/b43legacy/dma.c
index 0a86bdf..8b9387c 100644
--- a/drivers/net/wireless/b43legacy/dma.c
+++ b/drivers/net/wireless/b43legacy/dma.c
@@ -1411,7 +1411,6 @@ int b43legacy_dma_tx(struct b43legacy_wldev *dev,
 		b43legacyerr(dev->wl, "DMA tx mapping failure\n");
 		goto out_unlock;
 	}
-	ring->nr_tx_packets++;
 	if ((free_slots(ring) < SLOTS_PER_PACKET) ||
 	    should_inject_overflow(ring)) {
 		/* This TX ring is full. */
@@ -1527,25 +1526,6 @@ void b43legacy_dma_handle_txstatus(struct b43legacy_wldev *dev,
 	spin_unlock(&ring->lock);
 }
 
-void b43legacy_dma_get_tx_stats(struct b43legacy_wldev *dev,
-			      struct ieee80211_tx_queue_stats *stats)
-{
-	const int nr_queues = dev->wl->hw->queues;
-	struct b43legacy_dmaring *ring;
-	unsigned long flags;
-	int i;
-
-	for (i = 0; i < nr_queues; i++) {
-		ring = priority_to_txring(dev, i);
-
-		spin_lock_irqsave(&ring->lock, flags);
-		stats[i].len = ring->used_slots / SLOTS_PER_PACKET;
-		stats[i].limit = ring->nr_slots / SLOTS_PER_PACKET;
-		stats[i].count = ring->nr_tx_packets;
-		spin_unlock_irqrestore(&ring->lock, flags);
-	}
-}
-
 static void dma_rx(struct b43legacy_dmaring *ring,
 		   int *slot)
 {
diff --git a/drivers/net/wireless/b43legacy/dma.h b/drivers/net/wireless/b43legacy/dma.h
index 2f18600..f968104 100644
--- a/drivers/net/wireless/b43legacy/dma.h
+++ b/drivers/net/wireless/b43legacy/dma.h
@@ -243,8 +243,6 @@ struct b43legacy_dmaring {
 	int used_slots;
 	/* Currently used slot in the ring. */
 	int current_slot;
-	/* Total number of packets sent. Statistics only. */
-	unsigned int nr_tx_packets;
 	/* Frameoffset in octets. */
 	u32 frameoffset;
 	/* Descriptor buffer size. */
@@ -292,9 +290,6 @@ void b43legacy_dma_free(struct b43legacy_wldev *dev);
 void b43legacy_dma_tx_suspend(struct b43legacy_wldev *dev);
 void b43legacy_dma_tx_resume(struct b43legacy_wldev *dev);
 
-void b43legacy_dma_get_tx_stats(struct b43legacy_wldev *dev,
-				struct ieee80211_tx_queue_stats *stats);
-
 int b43legacy_dma_tx(struct b43legacy_wldev *dev,
 		     struct sk_buff *skb);
 void b43legacy_dma_handle_txstatus(struct b43legacy_wldev *dev,
@@ -315,11 +310,6 @@ void b43legacy_dma_free(struct b43legacy_wldev *dev)
 {
 }
 static inline
-void b43legacy_dma_get_tx_stats(struct b43legacy_wldev *dev,
-				struct ieee80211_tx_queue_stats *stats)
-{
-}
-static inline
 int b43legacy_dma_tx(struct b43legacy_wldev *dev,
 		     struct sk_buff *skb)
 {
diff --git a/drivers/net/wireless/b43legacy/main.c b/drivers/net/wireless/b43legacy/main.c
index 874a64a..d56f86c 100644
--- a/drivers/net/wireless/b43legacy/main.c
+++ b/drivers/net/wireless/b43legacy/main.c
@@ -2446,29 +2446,6 @@ static int b43legacy_op_conf_tx(struct ieee80211_hw *hw, u16 queue,
 	return 0;
 }
 
-static int b43legacy_op_get_tx_stats(struct ieee80211_hw *hw,
-				     struct ieee80211_tx_queue_stats *stats)
-{
-	struct b43legacy_wl *wl = hw_to_b43legacy_wl(hw);
-	struct b43legacy_wldev *dev = wl->current_dev;
-	unsigned long flags;
-	int err = -ENODEV;
-
-	if (!dev)
-		goto out;
-	spin_lock_irqsave(&wl->irq_lock, flags);
-	if (likely(b43legacy_status(dev) >= B43legacy_STAT_STARTED)) {
-		if (b43legacy_using_pio(dev))
-			b43legacy_pio_get_tx_stats(dev, stats);
-		else
-			b43legacy_dma_get_tx_stats(dev, stats);
-		err = 0;
-	}
-	spin_unlock_irqrestore(&wl->irq_lock, flags);
-out:
-	return err;
-}
-
 static int b43legacy_op_get_stats(struct ieee80211_hw *hw,
 				  struct ieee80211_low_level_stats *stats)
 {
@@ -3511,7 +3488,6 @@ static const struct ieee80211_ops b43legacy_hw_ops = {
 	.bss_info_changed	= b43legacy_op_bss_info_changed,
 	.configure_filter	= b43legacy_op_configure_filter,
 	.get_stats		= b43legacy_op_get_stats,
-	.get_tx_stats		= b43legacy_op_get_tx_stats,
 	.start			= b43legacy_op_start,
 	.stop			= b43legacy_op_stop,
 	.set_tim		= b43legacy_op_beacon_set_tim,
diff --git a/drivers/net/wireless/b43legacy/pio.c b/drivers/net/wireless/b43legacy/pio.c
index 51866c9..017c0e9 100644
--- a/drivers/net/wireless/b43legacy/pio.c
+++ b/drivers/net/wireless/b43legacy/pio.c
@@ -477,7 +477,6 @@ int b43legacy_pio_tx(struct b43legacy_wldev *dev,
 
 	list_move_tail(&packet->list, &queue->txqueue);
 	queue->nr_txfree--;
-	queue->nr_tx_packets++;
 	B43legacy_WARN_ON(queue->nr_txfree >= B43legacy_PIO_MAXTXPACKETS);
 
 	tasklet_schedule(&queue->txtask);
@@ -546,18 +545,6 @@ void b43legacy_pio_handle_txstatus(struct b43legacy_wldev *dev,
 		tasklet_schedule(&queue->txtask);
 }
 
-void b43legacy_pio_get_tx_stats(struct b43legacy_wldev *dev,
-				struct ieee80211_tx_queue_stats *stats)
-{
-	struct b43legacy_pio *pio = &dev->pio;
-	struct b43legacy_pioqueue *queue;
-
-	queue = pio->queue1;
-	stats[0].len = B43legacy_PIO_MAXTXPACKETS - queue->nr_txfree;
-	stats[0].limit = B43legacy_PIO_MAXTXPACKETS;
-	stats[0].count = queue->nr_tx_packets;
-}
-
 static void pio_rx_error(struct b43legacy_pioqueue *queue,
 			 int clear_buffers,
 			 const char *error)
diff --git a/drivers/net/wireless/b43legacy/pio.h b/drivers/net/wireless/b43legacy/pio.h
index 464fec0..8e6773e 100644
--- a/drivers/net/wireless/b43legacy/pio.h
+++ b/drivers/net/wireless/b43legacy/pio.h
@@ -74,10 +74,6 @@ struct b43legacy_pioqueue {
 	 * posted to the device. We are waiting for the txstatus.
 	 */
 	struct list_head txrunning;
-	/* Total number or packets sent.
-	 * (This counter can obviously wrap).
-	 */
-	unsigned int nr_tx_packets;
 	struct tasklet_struct txtask;
 	struct b43legacy_pio_txpacket
 			 tx_packets_cache[B43legacy_PIO_MAXTXPACKETS];
@@ -106,8 +102,6 @@ int b43legacy_pio_tx(struct b43legacy_wldev *dev,
 		   struct sk_buff *skb);
 void b43legacy_pio_handle_txstatus(struct b43legacy_wldev *dev,
 				 const struct b43legacy_txstatus *status);
-void b43legacy_pio_get_tx_stats(struct b43legacy_wldev *dev,
-			      struct ieee80211_tx_queue_stats *stats);
 void b43legacy_pio_rx(struct b43legacy_pioqueue *queue);
 
 /* Suspend TX queue in hardware. */
@@ -140,11 +134,6 @@ void b43legacy_pio_handle_txstatus(struct b43legacy_wldev *dev,
 {
 }
 static inline
-void b43legacy_pio_get_tx_stats(struct b43legacy_wldev *dev,
-			      struct ieee80211_tx_queue_stats *stats)
-{
-}
-static inline
 void b43legacy_pio_rx(struct b43legacy_pioqueue *queue)
 {
 }


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* Re: [PATCH v2 2/2] b43legacy: remove get_tx_stats() mac80211 op
  2010-02-07 17:51       ` [PATCH v2 2/2] b43legacy: " Kalle Valo
@ 2010-02-07 18:40         ` Kalle Valo
  0 siblings, 0 replies; 25+ messages in thread
From: Kalle Valo @ 2010-02-07 18:40 UTC (permalink / raw)
  To: linux-wireless; +Cc: Stefano Brivio, Larry Finger

Kalle Valo <kalle.valo@iki.fi> writes:

> get_tx_stats() will be removed from mac80211.
>
> Compile-tested only.

Sorry, stgit didn't number the patches as I expected. This patch
replaces patch 6 from my remove get_tx_stats() patchset. I removed
nr_tx_packets as suggested by Michael.

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v2 1/2] b43: remove get_tx_stats() mac80211 op
  2010-02-07 17:50       ` [PATCH v2 1/2] " Kalle Valo
@ 2010-02-07 18:42         ` Kalle Valo
  0 siblings, 0 replies; 25+ messages in thread
From: Kalle Valo @ 2010-02-07 18:42 UTC (permalink / raw)
  To: linux-wireless; +Cc: Michael Buesch, Stefano Brivio, Larry Finger

Kalle Valo <kalle.valo@iki.fi> writes:

> get_tx_stats() will be removed from mac80211.
>
> Compile-tested only.

This patch replaces patch 5 from the remove get_tx_stats() patchset.

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 10/10] mac80211: remove get_tx_stats() driver op
  2010-02-07  8:22 ` [PATCH 10/10] mac80211: remove get_tx_stats() driver op Kalle Valo
@ 2010-02-08  9:25   ` Johannes Berg
  0 siblings, 0 replies; 25+ messages in thread
From: Johannes Berg @ 2010-02-08  9:25 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless

[-- Attachment #1: Type: text/plain, Size: 716 bytes --]

On Sun, 2010-02-07 at 10:22 +0200, Kalle Valo wrote:
> get_tx_stats() driver operation is not currently used anywhere in mac80211
> and there are no plans to use it in the not-so-near future. So it can go
> without anyone missing it.
> 
> Cc: Johannes Berg <johannes@sipsolutions.net>
> Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
> ---
>  Documentation/DocBook/mac80211.tmpl |    1 -
>  include/net/mac80211.h              |   22 ----------------------
>  net/mac80211/driver-ops.h           |    8 --------
>  net/mac80211/driver-trace.h         |   23 -----------------------
>  4 files changed, 0 insertions(+), 54 deletions(-)

Acked-by: Johannes Berg <johannes@sipsolutions.net>

johannes


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 07/10] iwlwifi: remove get_tx_stats() mac80211 op
  2010-02-07  8:21 ` [PATCH 07/10] iwlwifi: " Kalle Valo
@ 2010-02-08 17:09   ` reinette chatre
  0 siblings, 0 replies; 25+ messages in thread
From: reinette chatre @ 2010-02-08 17:09 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless@vger.kernel.org, Zhu, Yi

On Sun, 2010-02-07 at 00:21 -0800, Kalle Valo wrote:
> get_tx_stats() will be removed from mac80211.
> 
> Compile-tested only.
> 
> Cc: Zhu Yi <yi.zhu@intel.com>
> Cc: Reinette Chatre <reinette.chatre@intel.com>
> Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
> ---

Acked-by: Reinette Chatre <reinette.chatre@intel.com>

Thank you

Reinette



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 09/10] rt2x00: remove get_tx_stats() mac80211 op
  2010-02-07 17:04     ` Kalle Valo
@ 2010-02-08 20:15       ` Gertjan van Wingerde
  0 siblings, 0 replies; 25+ messages in thread
From: Gertjan van Wingerde @ 2010-02-08 20:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Gertjan van Wingerde,
	public-linux-wireless-u79uwXL29TY76Z2rM5mHXA, Ivo van Doorn

On 02/07/10 18:04, Kalle Valo wrote:
> Gertjan van Wingerde <gwingerde@gmail.com> writes:
> 
>> On 02/07/10 09:21, Kalle Valo wrote:
>>> get_tx_stats() will be removed from mac80211.
>>>
>>> Compile-tested only.
>>>
>>> Cc: Ivo van Doorn <IvDoorn@gmail.com>
>>> Cc: Gertjan van Wingerde <gwingerde@gmail.com>
>>> Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
>>> ---
>>
>> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
> 
> Thanks.
> 
>> Although I seem to be missing the actual removal of the
>> get_tx_stats from mac80211.
> 
> That's patch 10:
> 
> http://marc.info/?l=linux-wireless&m=126553093501483&w=2
> 

Ah yes, sorry about that. I must have read over it when reading the series.

---
Gertjan.


^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2010-02-08 20:50 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-07  8:20 [PATCH 01/10] adm821: remove get_tx_stats() mac80211 op Kalle Valo
2010-02-07  8:20 ` [PATCH 02/10] mwl8k: " Kalle Valo
2010-02-07  8:21 ` [PATCH 03/10] ar9170: " Kalle Valo
2010-02-07 13:53   ` Christian Lamparter
2010-02-07  8:21 ` [PATCH 04/10] ath5k: " Kalle Valo
2010-02-07 15:04   ` Bob Copeland
2010-02-07  8:21 ` [PATCH 05/10] b43: " Kalle Valo
2010-02-07 11:32   ` Michael Buesch
2010-02-07 17:02     ` Kalle Valo
2010-02-07 17:50       ` [PATCH v2 1/2] " Kalle Valo
2010-02-07 18:42         ` Kalle Valo
2010-02-07 17:51       ` [PATCH v2 2/2] b43legacy: " Kalle Valo
2010-02-07 18:40         ` Kalle Valo
2010-02-07  8:21 ` [PATCH 06/10] " Kalle Valo
2010-02-07  8:21 ` [PATCH 07/10] iwlwifi: " Kalle Valo
2010-02-08 17:09   ` reinette chatre
2010-02-07  8:21 ` [PATCH 08/10] p54: " Kalle Valo
2010-02-07 13:52   ` Christian Lamparter
2010-02-07  8:21 ` [PATCH 09/10] rt2x00: " Kalle Valo
2010-02-07 11:52   ` Gertjan van Wingerde
2010-02-07 17:04     ` Kalle Valo
2010-02-08 20:15       ` Gertjan van Wingerde
2010-02-07 14:03   ` Ivo van Doorn
2010-02-07  8:22 ` [PATCH 10/10] mac80211: remove get_tx_stats() driver op Kalle Valo
2010-02-08  9:25   ` Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).