aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2x00queue.c
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2013-06-04 07:40:50 -0400
committerJohn W. Linville <linville@tuxdriver.com>2013-06-12 14:59:38 -0400
commit705802bf56b1b7a64e543805ba196a6e1fb80ec6 (patch)
treec7500e0b8ca33db78773edc67d540838f79e3206 /drivers/net/wireless/rt2x00/rt2x00queue.c
parentc29a32c8f15c81470d16aee82f52432eb477aa9b (diff)
rt2x00: remove data_queue_desc struct
If the queue_init callback is implemented by a driver it gets used instead of the data_queue_desc based initialization. The queue_init callback is implemented for each drivers now, so the old initialization method is not used anymore. Remove the unused data_queue_desc structure and all of the related code. Signed-off-by: Gabor Juhos <juhosg@openwrt.org> Acked-by: Stanislaw Gruszka <sgruszka@redhat.com> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00queue.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00queue.c42
1 files changed, 1 insertions, 41 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c
index 2a99ff1714ac..c4f1e2b8dc8e 100644
--- a/drivers/net/wireless/rt2x00/rt2x00queue.c
+++ b/drivers/net/wireless/rt2x00/rt2x00queue.c
@@ -1276,33 +1276,6 @@ void rt2x00queue_uninitialize(struct rt2x00_dev *rt2x00dev)
1276 } 1276 }
1277} 1277}
1278 1278
1279static const struct data_queue_desc *
1280rt2x00queue_get_qdesc_by_qid(struct rt2x00_dev *rt2x00dev,
1281 enum data_queue_qid qid)
1282{
1283 switch (qid) {
1284 case QID_RX:
1285 return rt2x00dev->ops->rx;
1286
1287 case QID_AC_BE:
1288 case QID_AC_BK:
1289 case QID_AC_VO:
1290 case QID_AC_VI:
1291 return rt2x00dev->ops->tx;
1292
1293 case QID_BEACON:
1294 return rt2x00dev->ops->bcn;
1295
1296 case QID_ATIM:
1297 return rt2x00dev->ops->atim;
1298
1299 default:
1300 break;
1301 }
1302
1303 return NULL;
1304}
1305
1306static void rt2x00queue_init(struct rt2x00_dev *rt2x00dev, 1279static void rt2x00queue_init(struct rt2x00_dev *rt2x00dev,
1307 struct data_queue *queue, enum data_queue_qid qid) 1280 struct data_queue *queue, enum data_queue_qid qid)
1308{ 1281{
@@ -1317,20 +1290,7 @@ static void rt2x00queue_init(struct rt2x00_dev *rt2x00dev,
1317 queue->cw_min = 5; 1290 queue->cw_min = 5;
1318 queue->cw_max = 10; 1291 queue->cw_max = 10;
1319 1292
1320 if (rt2x00dev->ops->queue_init) { 1293 rt2x00dev->ops->queue_init(queue);
1321 rt2x00dev->ops->queue_init(queue);
1322 } else {
1323 const struct data_queue_desc *qdesc;
1324
1325 qdesc = rt2x00queue_get_qdesc_by_qid(rt2x00dev, qid);
1326 BUG_ON(!qdesc);
1327
1328 queue->limit = qdesc->entry_num;
1329 queue->data_size = qdesc->data_size;
1330 queue->desc_size = qdesc->desc_size;
1331 queue->winfo_size = qdesc->winfo_size;
1332 queue->priv_size = qdesc->priv_size;
1333 }
1334 1294
1335 queue->threshold = DIV_ROUND_UP(queue->limit, 10); 1295 queue->threshold = DIV_ROUND_UP(queue->limit, 10);
1336} 1296}