diff options
author | gavin <gavin@FreeBSD.org> | 2014-05-27 19:39:57 +0000 |
---|---|---|
committer | gavin <gavin@FreeBSD.org> | 2014-05-27 19:39:57 +0000 |
commit | 0c27a75607a298dc5afc13bf3bdcffcee4568f9c (patch) | |
tree | b0bfb38a496b2d0dd89a02ae54e0cac6531cbd6c /sys/dev/iwn | |
parent | e3d386d9fe1ff6092dc5ed17b2f0e286f7ce2540 (diff) | |
download | FreeBSD-src-0c27a75607a298dc5afc13bf3bdcffcee4568f9c.zip FreeBSD-src-0c27a75607a298dc5afc13bf3bdcffcee4568f9c.tar.gz |
Add support for the Intel Centrino Wireless-N 105 chipset.
MFC after: 2 weeks
Relnotes: yes
Diffstat (limited to 'sys/dev/iwn')
-rw-r--r-- | sys/dev/iwn/if_iwn.c | 29 | ||||
-rw-r--r-- | sys/dev/iwn/if_iwn_devid.h | 13 |
2 files changed, 41 insertions, 1 deletions
diff --git a/sys/dev/iwn/if_iwn.c b/sys/dev/iwn/if_iwn.c index bf2b0cb..43a42d8 100644 --- a/sys/dev/iwn/if_iwn.c +++ b/sys/dev/iwn/if_iwn.c @@ -109,6 +109,8 @@ static const struct iwn_ident iwn_ident_table[] = { { 0x8086, IWN_DID_130_2, "Intel Centrino Wireless-N 130" }, { 0x8086, IWN_DID_100_1, "Intel Centrino Wireless-N 100" }, { 0x8086, IWN_DID_100_2, "Intel Centrino Wireless-N 100" }, + { 0x8086, IWN_DID_105_1, "Intel Centrino Wireless-N 105" }, + { 0x8086, IWN_DID_105_2, "Intel Centrino Wireless-N 105" }, { 0x8086, IWN_DID_135_1, "Intel Centrino Wireless-N 135" }, { 0x8086, IWN_DID_135_2, "Intel Centrino Wireless-N 135" }, { 0x8086, IWN_DID_4965_1, "Intel Wireless WiFi Link 4965" }, @@ -458,7 +460,7 @@ iwn_attach(device_t dev) sc->hw_type = (IWN_READ(sc, IWN_HW_REV) >> IWN_HW_REV_TYPE_SHIFT) & IWN_HW_REV_TYPE_MASK; sc->subdevice_id = pci_get_subdevice(dev); - +printf("hw %d sdid %x\n", sc->hw_type, sc->subdevice_id); /* * 4965 versus 5000 and later have different methods. * Let's set those up first. @@ -986,6 +988,31 @@ iwn_config_specific(struct iwn_softc *sc, uint16_t pid) } break; +/* 105 Series */ +/* XXX: This series will need adjustment for rate. + * see rx_with_siso_diversity in linux kernel + */ + case IWN_DID_105_1: + case IWN_DID_105_2: + switch(sc->subdevice_id) { + case IWN_SDID_105_1: + case IWN_SDID_105_2: + case IWN_SDID_105_3: + //iwl105_bgn_cfg + case IWN_SDID_105_4: + //iwl105_bgn_d_cfg + sc->limits = &iwn2030_sensitivity_limits; + sc->base_params = &iwn2000_base_params; + sc->fwname = "iwn105fw"; + break; + default: + device_printf(sc->sc_dev, "adapter type id : 0x%04x sub id :" + "0x%04x rev %d not supported (subdevice)\n", pid, + sc->subdevice_id,sc->hw_type); + return ENOTSUP; + } + break; + /* 135 Series */ /* XXX: This series will need adjustment for rate. * see rx_with_siso_diversity in linux kernel diff --git a/sys/dev/iwn/if_iwn_devid.h b/sys/dev/iwn/if_iwn_devid.h index ced9cb6..dd08737 100644 --- a/sys/dev/iwn/if_iwn_devid.h +++ b/sys/dev/iwn/if_iwn_devid.h @@ -228,6 +228,19 @@ /* * -------------------------------------------------------------------------- + * Device ID for 105 Series + * -------------------------------------------------------------------------- + */ +#define IWN_DID_105_1 0x0894 +#define IWN_DID_105_2 0x0895 +/* SubDevice ID */ +#define IWN_SDID_105_1 0x0022 +#define IWN_SDID_105_2 0x0222 +#define IWN_SDID_105_3 0x0422 +#define IWN_SDID_105_4 0x0822 + +/* + * -------------------------------------------------------------------------- * Device ID for 135 Series * -------------------------------------------------------------------------- */ |