2997dc482e
Different versions of firmware have different requirments for TX/RX packet layouts (and other things, of course.) Currently the driver checks between 3xx and 4xx firmware by using the BWN_ISOLDFMT() macro, which doesn't take into account the 5xx firmware (which I think I need for the HT and N series PHY chips. I'll know when I do the port.) BWN_HDRSIZE() also needs to learn about the 5xx series firmware as well. So: * add a firmware version enum * populate it based on the firmware version we read at load time * don't finish loading if the firmware is the 5xx firmware; any code using BWN_ISOLDFMT or BWN_HDRSIZE needs updating (most notably the TX and RX bits.) Then, for RX RSSI: * write down and reimplement the b43 rssi calculation method; * use it for the correct PHYs (which are all the ones we support); * do the RSSI calculation before radiotap, not after. Tested: * Broadcom BCM4312, STA mode Obtained from: Linux b43 (careful writing and reimplementing; lots of integer math..) |
||
---|---|---|
.. | ||
bwn_mac.c | ||
if_bwn_debug.h | ||
if_bwn_misc.h | ||
if_bwn_pci.c | ||
if_bwn_pcivar.h | ||
if_bwn_phy_g.c | ||
if_bwn_phy_g.h | ||
if_bwn_phy_lp.c | ||
if_bwn_phy_lp.h | ||
if_bwn.c | ||
if_bwn.c.c | ||
if_bwnreg.h | ||
if_bwnvar.h |