diff options
author | Michael Buesch <mb@bu3sch.de> | 2008-12-24 18:39:28 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-01-29 15:59:38 -0500 |
commit | 6b1c7c67603efdf0b39f6056989b0f8194cdc1f3 (patch) | |
tree | 7086a0f862ce5f3e5d6e6cb0daca71193c4185f8 /drivers/net/wireless/b43/main.c | |
parent | bb519bee07eed4fac9921ad658fb1f7ed78defb5 (diff) |
b43/ssb: Add SPROM8 extraction and LP-PHY detection
This adds detection code for the LP-PHY and SPROM
extraction code for version 8, which is needed by the LP-PHY and
newer N-PHY.
Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/b43/main.c')
-rw-r--r-- | drivers/net/wireless/b43/main.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c index 26e733a5a56e..c627bac87a40 100644 --- a/drivers/net/wireless/b43/main.c +++ b/drivers/net/wireless/b43/main.c | |||
@@ -97,6 +97,7 @@ static const struct ssb_device_id b43_ssb_tbl[] = { | |||
97 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 10), | 97 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 10), |
98 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 11), | 98 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 11), |
99 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 13), | 99 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 13), |
100 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 15), | ||
100 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 16), | 101 | SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_80211, 16), |
101 | SSB_DEVTABLE_END | 102 | SSB_DEVTABLE_END |
102 | }; | 103 | }; |
@@ -3756,6 +3757,12 @@ static int b43_phy_versioning(struct b43_wldev *dev) | |||
3756 | unsupported = 1; | 3757 | unsupported = 1; |
3757 | break; | 3758 | break; |
3758 | #endif | 3759 | #endif |
3760 | #ifdef CONFIG_B43_PHY_LP | ||
3761 | case B43_PHYTYPE_LP: | ||
3762 | if (phy_rev > 1) | ||
3763 | unsupported = 1; | ||
3764 | break; | ||
3765 | #endif | ||
3759 | default: | 3766 | default: |
3760 | unsupported = 1; | 3767 | unsupported = 1; |
3761 | }; | 3768 | }; |
@@ -3808,6 +3815,10 @@ static int b43_phy_versioning(struct b43_wldev *dev) | |||
3808 | if (radio_ver != 0x2055 && radio_ver != 0x2056) | 3815 | if (radio_ver != 0x2055 && radio_ver != 0x2056) |
3809 | unsupported = 1; | 3816 | unsupported = 1; |
3810 | break; | 3817 | break; |
3818 | case B43_PHYTYPE_LP: | ||
3819 | if (radio_ver != 0x2062) | ||
3820 | unsupported = 1; | ||
3821 | break; | ||
3811 | default: | 3822 | default: |
3812 | B43_WARN_ON(1); | 3823 | B43_WARN_ON(1); |
3813 | } | 3824 | } |
@@ -4402,6 +4413,7 @@ static int b43_wireless_core_attach(struct b43_wldev *dev) | |||
4402 | break; | 4413 | break; |
4403 | case B43_PHYTYPE_G: | 4414 | case B43_PHYTYPE_G: |
4404 | case B43_PHYTYPE_N: | 4415 | case B43_PHYTYPE_N: |
4416 | case B43_PHYTYPE_LP: | ||
4405 | have_2ghz_phy = 1; | 4417 | have_2ghz_phy = 1; |
4406 | break; | 4418 | break; |
4407 | default: | 4419 | default: |