svn commit: r221635 - head/sys/dev/iwn
Bernhard Schmidt
bschmidt at FreeBSD.org
Sun May 8 10:21:42 UTC 2011
Author: bschmidt
Date: Sun May 8 10:21:42 2011
New Revision: 221635
URL: http://svn.freebsd.org/changeset/base/221635
Log:
The 6000 series adapters have a slightly different offset for band 6,
2GHz HT40 channels.
Modified:
head/sys/dev/iwn/if_iwn.c
head/sys/dev/iwn/if_iwnreg.h
Modified: head/sys/dev/iwn/if_iwn.c
==============================================================================
--- head/sys/dev/iwn/if_iwn.c Sun May 8 10:19:29 2011 (r221634)
+++ head/sys/dev/iwn/if_iwn.c Sun May 8 10:21:42 2011 (r221635)
@@ -1784,7 +1784,10 @@ iwn5000_read_eeprom(struct iwn_softc *sc
/* Read the list of authorized channels (20MHz ones only). */
for (i = 0; i < 5; i++) {
- addr = base + iwn5000_regulatory_bands[i];
+ if (sc->hw_type >= IWN_HW_REV_TYPE_6000)
+ addr = base + iwn6000_regulatory_bands[i];
+ else
+ addr = base + iwn5000_regulatory_bands[i];
iwn_read_eeprom_channels(sc, i, addr);
}
Modified: head/sys/dev/iwn/if_iwnreg.h
==============================================================================
--- head/sys/dev/iwn/if_iwnreg.h Sun May 8 10:19:29 2011 (r221634)
+++ head/sys/dev/iwn/if_iwnreg.h Sun May 8 10:21:42 2011 (r221635)
@@ -1403,6 +1403,7 @@ struct iwn_fw_tlv {
#define IWN5000_EEPROM_BAND4 0x02e
#define IWN5000_EEPROM_BAND5 0x03a
#define IWN5000_EEPROM_BAND6 0x041
+#define IWN6000_EEPROM_BAND6 0x040
#define IWN5000_EEPROM_BAND7 0x049
#define IWN6000_EEPROM_ENHINFO 0x054
#define IWN5000_EEPROM_CRYSTAL 0x128
@@ -1486,6 +1487,16 @@ static const uint32_t iwn5000_regulatory
IWN5000_EEPROM_BAND7
};
+static const uint32_t iwn6000_regulatory_bands[IWN_NBANDS] = {
+ IWN5000_EEPROM_BAND1,
+ IWN5000_EEPROM_BAND2,
+ IWN5000_EEPROM_BAND3,
+ IWN5000_EEPROM_BAND4,
+ IWN5000_EEPROM_BAND5,
+ IWN6000_EEPROM_BAND6,
+ IWN5000_EEPROM_BAND7
+};
+
#define IWN_CHAN_BANDS_COUNT 7
#define IWN_MAX_CHAN_PER_BAND 14
static const struct iwn_chan_band {
More information about the svn-src-head
mailing list