diff options
author | Adrian Chadd <adrian@FreeBSD.org> | 2016-06-05 07:55:21 +0000 |
---|---|---|
committer | Adrian Chadd <adrian@FreeBSD.org> | 2016-06-05 07:55:21 +0000 |
commit | 4bfbed726462a37d0c42238d5380040880299501 (patch) | |
tree | 2c03ccd8ffec1187d462be6eb68405d71ff1cf81 /sys/dev/bwn/if_bwn.c | |
parent | 59f341f8bcbb590f412f5201bc85e7d0de12d691 (diff) | |
download | src-4bfbed726462a37d0c42238d5380040880299501.tar.gz src-4bfbed726462a37d0c42238d5380040880299501.zip |
[bwn] Enable PHY-LP 5GHz support for the one NIC I have tested it on so far.
After perusing the PHY-LP code (don't ask why; honest) I discovered that
it /has/ 5GHz support - but it's not ever used. I found one NIC - a
BCM4312 w/ pci id 0x4315 - which advertised dual-band PHY-LP support.
Turns out it works.
Whilst here, move up the support bit logging code so I can use it
to debug this.
Tested:
* BCM4312 (pci id 0x4315); 5GHz STA operation
Notes
Notes:
svn path=/head/; revision=301434
Diffstat (limited to 'sys/dev/bwn/if_bwn.c')
-rw-r--r-- | sys/dev/bwn/if_bwn.c | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/sys/dev/bwn/if_bwn.c b/sys/dev/bwn/if_bwn.c index fcf799648225..27f919474dd3 100644 --- a/sys/dev/bwn/if_bwn.c +++ b/sys/dev/bwn/if_bwn.c @@ -1163,6 +1163,16 @@ bwn_attach_core(struct bwn_mac *mac) have_bg = 1; have_a = 1; } +#if 0 + device_printf(sc->sc_dev, "%s: high=0x%08x, have_a=%d, have_bg=%d," + " deviceid=0x%04x, siba_deviceid=0x%04x\n", + __func__, + high, + have_a, + have_bg, + siba_get_pci_device(sc->sc_dev), + siba_get_chipid(sc->sc_dev)); +#endif } else { device_printf(sc->sc_dev, "%s: not siba; bailing\n", __func__); error = ENXIO; @@ -1183,18 +1193,12 @@ bwn_attach_core(struct bwn_mac *mac) if (error) goto fail; -#if 0 - device_printf(sc->sc_dev, "%s: high=0x%08x, have_a=%d, have_bg=%d," - " deviceid=0x%04x, siba_deviceid=0x%04x\n", - __func__, - high, - have_a, - have_bg, - siba_get_pci_device(sc->sc_dev), - siba_get_chipid(sc->sc_dev)); -#endif - + /* + * This is the whitelist of devices which we "believe" + * the SPROM PHY config from. The rest are "guessed". + */ if (siba_get_pci_device(sc->sc_dev) != 0x4312 && + siba_get_pci_device(sc->sc_dev) != 0x4315 && siba_get_pci_device(sc->sc_dev) != 0x4319 && siba_get_pci_device(sc->sc_dev) != 0x4324 && siba_get_pci_device(sc->sc_dev) != 0x4328 && |