diff options
author | Felix Fietkau <nbd@openwrt.org> | 2010-06-12 00:33:51 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-06-14 15:39:30 -0400 |
commit | 1d2231e2e27a7df6a3dc7827d244b7736b7d164a (patch) | |
tree | 5ff4a7a59e0dc790aa2c670a0f410ad862c49740 /drivers/net/wireless | |
parent | e8c35a77e3408171852bde4914b650cf5b83e0d1 (diff) |
ath9k: remove duplicate WMM AC definitions
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ath9k.h | 4 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/beacon.c | 3 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/debug.c | 8 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/init.c | 10 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/mac.h | 11 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/main.c | 20 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/virtual.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/xmit.c | 46 |
8 files changed, 26 insertions, 78 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ath9k.h b/drivers/net/wireless/ath/ath9k/ath9k.h index c5c662957b0d..a0f15670bfd8 100644 --- a/drivers/net/wireless/ath/ath9k/ath9k.h +++ b/drivers/net/wireless/ath/ath9k/ath9k.h | |||
@@ -291,7 +291,7 @@ struct ath_tx_control { | |||
291 | struct ath_tx { | 291 | struct ath_tx { |
292 | u16 seq_no; | 292 | u16 seq_no; |
293 | u32 txqsetup; | 293 | u32 txqsetup; |
294 | int hwq_map[ATH9K_WME_AC_VO+1]; | 294 | int hwq_map[WME_NUM_AC]; |
295 | spinlock_t txbuflock; | 295 | spinlock_t txbuflock; |
296 | struct list_head txbuf; | 296 | struct list_head txbuf; |
297 | struct ath_txq txq[ATH9K_NUM_TX_QUEUES]; | 297 | struct ath_txq txq[ATH9K_NUM_TX_QUEUES]; |
@@ -680,8 +680,6 @@ void ath9k_set_wiphy_idle(struct ath_wiphy *aphy, bool idle); | |||
680 | void ath_mac80211_stop_queue(struct ath_softc *sc, u16 skb_queue); | 680 | void ath_mac80211_stop_queue(struct ath_softc *sc, u16 skb_queue); |
681 | void ath_mac80211_start_queue(struct ath_softc *sc, u16 skb_queue); | 681 | void ath_mac80211_start_queue(struct ath_softc *sc, u16 skb_queue); |
682 | 682 | ||
683 | int ath_tx_get_qnum(struct ath_softc *sc, int qtype, int haltype); | ||
684 | |||
685 | void ath_start_rfkill_poll(struct ath_softc *sc); | 683 | void ath_start_rfkill_poll(struct ath_softc *sc); |
686 | extern void ath9k_rfkill_poll_state(struct ieee80211_hw *hw); | 684 | extern void ath9k_rfkill_poll_state(struct ieee80211_hw *hw); |
687 | 685 | ||
diff --git a/drivers/net/wireless/ath/ath9k/beacon.c b/drivers/net/wireless/ath/ath9k/beacon.c index f43d85a302c4..4d4b22d52dfd 100644 --- a/drivers/net/wireless/ath/ath9k/beacon.c +++ b/drivers/net/wireless/ath/ath9k/beacon.c | |||
@@ -38,8 +38,7 @@ int ath_beaconq_config(struct ath_softc *sc) | |||
38 | qi.tqi_cwmax = 0; | 38 | qi.tqi_cwmax = 0; |
39 | } else { | 39 | } else { |
40 | /* Adhoc mode; important thing is to use 2x cwmin. */ | 40 | /* Adhoc mode; important thing is to use 2x cwmin. */ |
41 | qnum = ath_tx_get_qnum(sc, ATH9K_TX_QUEUE_DATA, | 41 | qnum = sc->tx.hwq_map[WME_AC_BE]; |
42 | ATH9K_WME_AC_BE); | ||
43 | ath9k_hw_get_txq_props(ah, qnum, &qi_be); | 42 | ath9k_hw_get_txq_props(ah, qnum, &qi_be); |
44 | qi.tqi_aifs = qi_be.tqi_aifs; | 43 | qi.tqi_aifs = qi_be.tqi_aifs; |
45 | qi.tqi_cwmin = 4*qi_be.tqi_cwmin; | 44 | qi.tqi_cwmin = 4*qi_be.tqi_cwmin; |
diff --git a/drivers/net/wireless/ath/ath9k/debug.c b/drivers/net/wireless/ath/ath9k/debug.c index a127bdba5f90..a6cb48d9d2e5 100644 --- a/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c | |||
@@ -630,10 +630,10 @@ static const struct file_operations fops_wiphy = { | |||
630 | do { \ | 630 | do { \ |
631 | len += snprintf(buf + len, size - len, \ | 631 | len += snprintf(buf + len, size - len, \ |
632 | "%s%13u%11u%10u%10u\n", str, \ | 632 | "%s%13u%11u%10u%10u\n", str, \ |
633 | sc->debug.stats.txstats[sc->tx.hwq_map[ATH9K_WME_AC_BE]].elem, \ | 633 | sc->debug.stats.txstats[sc->tx.hwq_map[WME_AC_BE]].elem, \ |
634 | sc->debug.stats.txstats[sc->tx.hwq_map[ATH9K_WME_AC_BK]].elem, \ | 634 | sc->debug.stats.txstats[sc->tx.hwq_map[WME_AC_BK]].elem, \ |
635 | sc->debug.stats.txstats[sc->tx.hwq_map[ATH9K_WME_AC_VI]].elem, \ | 635 | sc->debug.stats.txstats[sc->tx.hwq_map[WME_AC_VI]].elem, \ |
636 | sc->debug.stats.txstats[sc->tx.hwq_map[ATH9K_WME_AC_VO]].elem); \ | 636 | sc->debug.stats.txstats[sc->tx.hwq_map[WME_AC_VO]].elem); \ |
637 | } while(0) | 637 | } while(0) |
638 | 638 | ||
639 | static ssize_t read_file_xmit(struct file *file, char __user *user_buf, | 639 | static ssize_t read_file_xmit(struct file *file, char __user *user_buf, |
diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c index 18d76ede859d..4e078301c887 100644 --- a/drivers/net/wireless/ath/ath9k/init.c +++ b/drivers/net/wireless/ath/ath9k/init.c | |||
@@ -426,7 +426,7 @@ static int ath9k_init_btcoex(struct ath_softc *sc) | |||
426 | r = ath_init_btcoex_timer(sc); | 426 | r = ath_init_btcoex_timer(sc); |
427 | if (r) | 427 | if (r) |
428 | return -1; | 428 | return -1; |
429 | qnum = ath_tx_get_qnum(sc, ATH9K_TX_QUEUE_DATA, ATH9K_WME_AC_BE); | 429 | qnum = sc->tx.hwq_map[WME_AC_BE]; |
430 | ath9k_hw_init_btcoex_hw(sc->sc_ah, qnum); | 430 | ath9k_hw_init_btcoex_hw(sc->sc_ah, qnum); |
431 | sc->btcoex.bt_stomp_type = ATH_BTCOEX_STOMP_LOW; | 431 | sc->btcoex.bt_stomp_type = ATH_BTCOEX_STOMP_LOW; |
432 | break; | 432 | break; |
@@ -463,23 +463,23 @@ static int ath9k_init_queues(struct ath_softc *sc) | |||
463 | sc->config.cabqReadytime = ATH_CABQ_READY_TIME; | 463 | sc->config.cabqReadytime = ATH_CABQ_READY_TIME; |
464 | ath_cabq_update(sc); | 464 | ath_cabq_update(sc); |
465 | 465 | ||
466 | if (!ath_tx_setup(sc, ATH9K_WME_AC_BK)) { | 466 | if (!ath_tx_setup(sc, WME_AC_BK)) { |
467 | ath_print(common, ATH_DBG_FATAL, | 467 | ath_print(common, ATH_DBG_FATAL, |
468 | "Unable to setup xmit queue for BK traffic\n"); | 468 | "Unable to setup xmit queue for BK traffic\n"); |
469 | goto err; | 469 | goto err; |
470 | } | 470 | } |
471 | 471 | ||
472 | if (!ath_tx_setup(sc, ATH9K_WME_AC_BE)) { | 472 | if (!ath_tx_setup(sc, WME_AC_BE)) { |
473 | ath_print(common, ATH_DBG_FATAL, | 473 | ath_print(common, ATH_DBG_FATAL, |
474 | "Unable to setup xmit queue for BE traffic\n"); | 474 | "Unable to setup xmit queue for BE traffic\n"); |
475 | goto err; | 475 | goto err; |
476 | } | 476 | } |
477 | if (!ath_tx_setup(sc, ATH9K_WME_AC_VI)) { | 477 | if (!ath_tx_setup(sc, WME_AC_VI)) { |
478 | ath_print(common, ATH_DBG_FATAL, | 478 | ath_print(common, ATH_DBG_FATAL, |
479 | "Unable to setup xmit queue for VI traffic\n"); | 479 | "Unable to setup xmit queue for VI traffic\n"); |
480 | goto err; | 480 | goto err; |
481 | } | 481 | } |
482 | if (!ath_tx_setup(sc, ATH9K_WME_AC_VO)) { | 482 | if (!ath_tx_setup(sc, WME_AC_VO)) { |
483 | ath_print(common, ATH_DBG_FATAL, | 483 | ath_print(common, ATH_DBG_FATAL, |
484 | "Unable to setup xmit queue for VO traffic\n"); | 484 | "Unable to setup xmit queue for VO traffic\n"); |
485 | goto err; | 485 | goto err; |
diff --git a/drivers/net/wireless/ath/ath9k/mac.h b/drivers/net/wireless/ath/ath9k/mac.h index 3c65c91b049b..7559fb2b28a5 100644 --- a/drivers/net/wireless/ath/ath9k/mac.h +++ b/drivers/net/wireless/ath/ath9k/mac.h | |||
@@ -577,13 +577,8 @@ enum ath9k_tx_queue { | |||
577 | 577 | ||
578 | #define ATH9K_NUM_TX_QUEUES 10 | 578 | #define ATH9K_NUM_TX_QUEUES 10 |
579 | 579 | ||
580 | enum ath9k_tx_queue_subtype { | 580 | /* Used as a queue subtype instead of a WMM AC */ |
581 | ATH9K_WME_AC_BK = 0, | 581 | #define ATH9K_WME_UPSD 4 |
582 | ATH9K_WME_AC_BE, | ||
583 | ATH9K_WME_AC_VI, | ||
584 | ATH9K_WME_AC_VO, | ||
585 | ATH9K_WME_UPSD | ||
586 | }; | ||
587 | 582 | ||
588 | enum ath9k_tx_queue_flags { | 583 | enum ath9k_tx_queue_flags { |
589 | TXQ_FLAG_TXOKINT_ENABLE = 0x0001, | 584 | TXQ_FLAG_TXOKINT_ENABLE = 0x0001, |
@@ -617,7 +612,7 @@ enum ath9k_pkt_type { | |||
617 | struct ath9k_tx_queue_info { | 612 | struct ath9k_tx_queue_info { |
618 | u32 tqi_ver; | 613 | u32 tqi_ver; |
619 | enum ath9k_tx_queue tqi_type; | 614 | enum ath9k_tx_queue tqi_type; |
620 | enum ath9k_tx_queue_subtype tqi_subtype; | 615 | int tqi_subtype; |
621 | enum ath9k_tx_queue_flags tqi_qflags; | 616 | enum ath9k_tx_queue_flags tqi_qflags; |
622 | u32 tqi_priority; | 617 | u32 tqi_priority; |
623 | u32 tqi_aifs; | 618 | u32 tqi_aifs; |
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c index 9959e89d5496..9414c2c13a39 100644 --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c | |||
@@ -814,19 +814,19 @@ int ath_get_hal_qnum(u16 queue, struct ath_softc *sc) | |||
814 | 814 | ||
815 | switch (queue) { | 815 | switch (queue) { |
816 | case 0: | 816 | case 0: |
817 | qnum = sc->tx.hwq_map[ATH9K_WME_AC_VO]; | 817 | qnum = sc->tx.hwq_map[WME_AC_VO]; |
818 | break; | 818 | break; |
819 | case 1: | 819 | case 1: |
820 | qnum = sc->tx.hwq_map[ATH9K_WME_AC_VI]; | 820 | qnum = sc->tx.hwq_map[WME_AC_VI]; |
821 | break; | 821 | break; |
822 | case 2: | 822 | case 2: |
823 | qnum = sc->tx.hwq_map[ATH9K_WME_AC_BE]; | 823 | qnum = sc->tx.hwq_map[WME_AC_BE]; |
824 | break; | 824 | break; |
825 | case 3: | 825 | case 3: |
826 | qnum = sc->tx.hwq_map[ATH9K_WME_AC_BK]; | 826 | qnum = sc->tx.hwq_map[WME_AC_BK]; |
827 | break; | 827 | break; |
828 | default: | 828 | default: |
829 | qnum = sc->tx.hwq_map[ATH9K_WME_AC_BE]; | 829 | qnum = sc->tx.hwq_map[WME_AC_BE]; |
830 | break; | 830 | break; |
831 | } | 831 | } |
832 | 832 | ||
@@ -838,16 +838,16 @@ int ath_get_mac80211_qnum(u32 queue, struct ath_softc *sc) | |||
838 | int qnum; | 838 | int qnum; |
839 | 839 | ||
840 | switch (queue) { | 840 | switch (queue) { |
841 | case ATH9K_WME_AC_VO: | 841 | case WME_AC_VO: |
842 | qnum = 0; | 842 | qnum = 0; |
843 | break; | 843 | break; |
844 | case ATH9K_WME_AC_VI: | 844 | case WME_AC_VI: |
845 | qnum = 1; | 845 | qnum = 1; |
846 | break; | 846 | break; |
847 | case ATH9K_WME_AC_BE: | 847 | case WME_AC_BE: |
848 | qnum = 2; | 848 | qnum = 2; |
849 | break; | 849 | break; |
850 | case ATH9K_WME_AC_BK: | 850 | case WME_AC_BK: |
851 | qnum = 3; | 851 | qnum = 3; |
852 | break; | 852 | break; |
853 | default: | 853 | default: |
@@ -1559,7 +1559,7 @@ static int ath9k_conf_tx(struct ieee80211_hw *hw, u16 queue, | |||
1559 | ath_print(common, ATH_DBG_FATAL, "TXQ Update failed\n"); | 1559 | ath_print(common, ATH_DBG_FATAL, "TXQ Update failed\n"); |
1560 | 1560 | ||
1561 | if (sc->sc_ah->opmode == NL80211_IFTYPE_ADHOC) | 1561 | if (sc->sc_ah->opmode == NL80211_IFTYPE_ADHOC) |
1562 | if ((qnum == sc->tx.hwq_map[ATH9K_WME_AC_BE]) && !ret) | 1562 | if ((qnum == sc->tx.hwq_map[WME_AC_BE]) && !ret) |
1563 | ath_beaconq_config(sc); | 1563 | ath_beaconq_config(sc); |
1564 | 1564 | ||
1565 | mutex_unlock(&sc->mutex); | 1565 | mutex_unlock(&sc->mutex); |
diff --git a/drivers/net/wireless/ath/ath9k/virtual.c b/drivers/net/wireless/ath/ath9k/virtual.c index 105ad40968f6..89423ca23d2c 100644 --- a/drivers/net/wireless/ath/ath9k/virtual.c +++ b/drivers/net/wireless/ath/ath9k/virtual.c | |||
@@ -219,7 +219,7 @@ static int ath9k_send_nullfunc(struct ath_wiphy *aphy, | |||
219 | info->control.rates[1].idx = -1; | 219 | info->control.rates[1].idx = -1; |
220 | 220 | ||
221 | memset(&txctl, 0, sizeof(struct ath_tx_control)); | 221 | memset(&txctl, 0, sizeof(struct ath_tx_control)); |
222 | txctl.txq = &sc->tx.txq[sc->tx.hwq_map[ATH9K_WME_AC_VO]]; | 222 | txctl.txq = &sc->tx.txq[sc->tx.hwq_map[WME_AC_VO]]; |
223 | txctl.frame_type = ps ? ATH9K_IFT_PAUSE : ATH9K_IFT_UNPAUSE; | 223 | txctl.frame_type = ps ? ATH9K_IFT_PAUSE : ATH9K_IFT_UNPAUSE; |
224 | 224 | ||
225 | if (ath_tx_start(aphy->hw, skb, &txctl) != 0) | 225 | if (ath_tx_start(aphy->hw, skb, &txctl) != 0) |
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c index ec124fbe8177..9bff6c52c2e1 100644 --- a/drivers/net/wireless/ath/ath9k/xmit.c +++ b/drivers/net/wireless/ath/ath9k/xmit.c | |||
@@ -959,32 +959,6 @@ struct ath_txq *ath_txq_setup(struct ath_softc *sc, int qtype, int subtype) | |||
959 | return &sc->tx.txq[qnum]; | 959 | return &sc->tx.txq[qnum]; |
960 | } | 960 | } |
961 | 961 | ||
962 | int ath_tx_get_qnum(struct ath_softc *sc, int qtype, int haltype) | ||
963 | { | ||
964 | int qnum; | ||
965 | |||
966 | switch (qtype) { | ||
967 | case ATH9K_TX_QUEUE_DATA: | ||
968 | if (haltype >= ARRAY_SIZE(sc->tx.hwq_map)) { | ||
969 | ath_print(ath9k_hw_common(sc->sc_ah), ATH_DBG_FATAL, | ||
970 | "HAL AC %u out of range, max %zu!\n", | ||
971 | haltype, ARRAY_SIZE(sc->tx.hwq_map)); | ||
972 | return -1; | ||
973 | } | ||
974 | qnum = sc->tx.hwq_map[haltype]; | ||
975 | break; | ||
976 | case ATH9K_TX_QUEUE_BEACON: | ||
977 | qnum = sc->beacon.beaconq; | ||
978 | break; | ||
979 | case ATH9K_TX_QUEUE_CAB: | ||
980 | qnum = sc->beacon.cabq->axq_qnum; | ||
981 | break; | ||
982 | default: | ||
983 | qnum = -1; | ||
984 | } | ||
985 | return qnum; | ||
986 | } | ||
987 | |||
988 | int ath_txq_update(struct ath_softc *sc, int qnum, | 962 | int ath_txq_update(struct ath_softc *sc, int qnum, |
989 | struct ath9k_tx_queue_info *qinfo) | 963 | struct ath9k_tx_queue_info *qinfo) |
990 | { | 964 | { |
@@ -2423,26 +2397,8 @@ void ath_tx_node_init(struct ath_softc *sc, struct ath_node *an) | |||
2423 | for (acno = 0, ac = &an->ac[acno]; | 2397 | for (acno = 0, ac = &an->ac[acno]; |
2424 | acno < WME_NUM_AC; acno++, ac++) { | 2398 | acno < WME_NUM_AC; acno++, ac++) { |
2425 | ac->sched = false; | 2399 | ac->sched = false; |
2400 | ac->qnum = sc->tx.hwq_map[acno]; | ||
2426 | INIT_LIST_HEAD(&ac->tid_q); | 2401 | INIT_LIST_HEAD(&ac->tid_q); |
2427 | |||
2428 | switch (acno) { | ||
2429 | case WME_AC_BE: | ||
2430 | ac->qnum = ath_tx_get_qnum(sc, | ||
2431 | ATH9K_TX_QUEUE_DATA, ATH9K_WME_AC_BE); | ||
2432 | break; | ||
2433 | case WME_AC_BK: | ||
2434 | ac->qnum = ath_tx_get_qnum(sc, | ||
2435 | ATH9K_TX_QUEUE_DATA, ATH9K_WME_AC_BK); | ||
2436 | break; | ||
2437 | case WME_AC_VI: | ||
2438 | ac->qnum = ath_tx_get_qnum(sc, | ||
2439 | ATH9K_TX_QUEUE_DATA, ATH9K_WME_AC_VI); | ||
2440 | break; | ||
2441 | case WME_AC_VO: | ||
2442 | ac->qnum = ath_tx_get_qnum(sc, | ||
2443 | ATH9K_TX_QUEUE_DATA, ATH9K_WME_AC_VO); | ||
2444 | break; | ||
2445 | } | ||
2446 | } | 2402 | } |
2447 | } | 2403 | } |
2448 | 2404 | ||