aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/usb/wlan/if_urtw.c
diff options
context:
space:
mode:
authorAndriy Voskoboinyk <avos@FreeBSD.org>2018-03-16 00:09:16 +0000
committerAndriy Voskoboinyk <avos@FreeBSD.org>2018-03-16 00:09:16 +0000
commit2757acf673e3e3bb6bead4d7be601c6e3da252b0 (patch)
tree3c971c38e64516f8bbb13eb889dbc1e54630a8f4 /sys/dev/usb/wlan/if_urtw.c
parent2a440d19c11d84144ce20a4c2a49504232e201f7 (diff)
downloadsrc-2757acf673e3e3bb6bead4d7be601c6e3da252b0.tar.gz
src-2757acf673e3e3bb6bead4d7be601c6e3da252b0.zip
urtw(4): provide names for some commonly used rate indices + drop
now-unused urtw_rate2rtl()
Notes
Notes: svn path=/head/; revision=331041
Diffstat (limited to 'sys/dev/usb/wlan/if_urtw.c')
-rw-r--r--sys/dev/usb/wlan/if_urtw.c33
1 files changed, 12 insertions, 21 deletions
diff --git a/sys/dev/usb/wlan/if_urtw.c b/sys/dev/usb/wlan/if_urtw.c
index f12297167ac9..140048ed1647 100644
--- a/sys/dev/usb/wlan/if_urtw.c
+++ b/sys/dev/usb/wlan/if_urtw.c
@@ -65,6 +65,12 @@ __FBSDID("$FreeBSD$");
#include <dev/usb/wlan/if_urtwreg.h>
#include <dev/usb/wlan/if_urtwvar.h>
+/* copy some rate indices from if_rtwn_ridx.h */
+#define URTW_RIDX_CCK5 2
+#define URTW_RIDX_CCK11 3
+#define URTW_RIDX_OFDM6 4
+#define URTW_RIDX_OFDM24 8
+
static SYSCTL_NODE(_hw_usb, OID_AUTO, urtw, CTLFLAG_RW, 0, "USB Realtek 8187L");
#ifdef URTW_DEBUG
int urtw_debug = 0;
@@ -682,7 +688,6 @@ static void urtw_ledtask(void *, int);
static void urtw_watchdog(void *);
static void urtw_set_multi(void *);
static int urtw_isbmode(uint16_t);
-static uint16_t urtw_rate2rtl(uint32_t);
static uint16_t urtw_rtl2rate(uint32_t);
static usb_error_t urtw_set_rate(struct urtw_softc *);
static usb_error_t urtw_update_msr(struct urtw_softc *);
@@ -866,7 +871,7 @@ urtw_attach(device_t dev)
sc->sc_rts_retry = URTW_DEFAULT_RTS_RETRY;
sc->sc_tx_retry = URTW_DEFAULT_TX_RETRY;
- sc->sc_currate = 3;
+ sc->sc_currate = URTW_RIDX_CCK11;
sc->sc_preamble_mode = urtw_preamble_mode;
ic->ic_softc = sc;
@@ -1766,8 +1771,7 @@ urtw_tx_start(struct urtw_softc *sc, struct ieee80211_node *ni, struct mbuf *m0,
flags |= URTW_TX_FLAG_CTS;
if (rtsenable) {
flags |= URTW_TX_FLAG_RTS;
- flags |= (urtw_rate2rtl(11) & 0xf) <<
- URTW_TX_FLAG_RTSRATE_SHIFT;
+ flags |= URTW_RIDX_CCK5 << URTW_TX_FLAG_RTSRATE_SHIFT;
tx->rtsdur = rtsdur;
}
tx->flag = htole32(flags);
@@ -1788,7 +1792,7 @@ urtw_tx_start(struct urtw_softc *sc, struct ieee80211_node *ni, struct mbuf *m0,
flags |= URTW_TX_FLAG_RTS;
tx->rtsdur = rtsdur;
}
- flags |= (urtw_rate2rtl(11) & 0xf) << URTW_TX_FLAG_RTSRATE_SHIFT;
+ flags |= URTW_RIDX_CCK5 << URTW_TX_FLAG_RTSRATE_SHIFT;
tx->flag = htole32(flags);
tx->retry = 3; /* CW minimum */
tx->retry |= 7 << 4; /* CW maximum */
@@ -1908,9 +1912,9 @@ urtw_set_rate(struct urtw_softc *sc)
uint16_t data;
usb_error_t error;
- basic_rate = urtw_rate2rtl(48);
- min_rr_rate = urtw_rate2rtl(12);
- max_rr_rate = urtw_rate2rtl(48);
+ basic_rate = URTW_RIDX_OFDM24;
+ min_rr_rate = URTW_RIDX_OFDM6;
+ max_rr_rate = URTW_RIDX_OFDM24;
urtw_write8_m(sc, URTW_RESP_RATE,
max_rr_rate << URTW_RESP_MAX_RATE_SHIFT |
@@ -1928,19 +1932,6 @@ fail:
}
static uint16_t
-urtw_rate2rtl(uint32_t rate)
-{
- unsigned int i;
-
- for (i = 0; i < nitems(urtw_ratetable); i++) {
- if (rate == urtw_ratetable[i].reg)
- return urtw_ratetable[i].val;
- }
-
- return (3);
-}
-
-static uint16_t
urtw_rtl2rate(uint32_t rate)
{
unsigned int i;