]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - glsdk/meta-ti-glsdk.git/blob - recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.25/0046-rtlwifi-rtl8192de-Fix-phy-based-version-calculation.patch
linux-ti33x-psp 3.2: update to 3.2.25
[glsdk/meta-ti-glsdk.git] / recipes-kernel / linux / linux-ti33x-psp-3.2 / 3.2.25 / 0046-rtlwifi-rtl8192de-Fix-phy-based-version-calculation.patch
1 From fccb712c5ec20bb379e0c57e6a8b286e117ee2db Mon Sep 17 00:00:00 2001
2 From: Forest Bond <forest.bond@rapidrollout.com>
3 Date: Fri, 13 Jul 2012 12:26:06 -0400
4 Subject: [PATCH 46/73] rtlwifi: rtl8192de: Fix phy-based version calculation
6 commit f1b00f4dab29b57bdf1bc03ef12020b280fd2a72 upstream.
8 Commit d83579e2a50ac68389e6b4c58b845c702cf37516 incorporated some
9 changes from the vendor driver that made it newly important that the
10 calculated hardware version correctly include the CHIP_92D bit, as all
11 of the IS_92D_* macros were changed to depend on it.  However, this bit
12 was being unset for dual-mac, dual-phy devices.  The vendor driver
13 behavior was modified to not do this, but unfortunately this change was
14 not picked up along with the others.  This caused scanning in the 2.4GHz
15 band to be broken, and possibly other bugs as well.
17 This patch brings the version calculation logic in parity with the
18 vendor driver in this regard, and in doing so fixes the regression.
19 However, the version calculation code in general continues to be largely
20 incoherent and messy, and needs to be cleaned up.
22 Signed-off-by: Forest Bond <forest.bond@rapidrollout.com>
23 Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
24 Signed-off-by: John W. Linville <linville@tuxdriver.com>
25 Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
26 ---
27  drivers/net/wireless/rtlwifi/rtl8192de/phy.c |    6 +++---
28  1 files changed, 3 insertions(+), 3 deletions(-)
30 diff --git a/drivers/net/wireless/rtlwifi/rtl8192de/phy.c b/drivers/net/wireless/rtlwifi/rtl8192de/phy.c
31 index 2cf4c5f..de9faa9 100644
32 --- a/drivers/net/wireless/rtlwifi/rtl8192de/phy.c
33 +++ b/drivers/net/wireless/rtlwifi/rtl8192de/phy.c
34 @@ -3462,21 +3462,21 @@ void rtl92d_phy_config_macphymode_info(struct ieee80211_hw *hw)
35         switch (rtlhal->macphymode) {
36         case DUALMAC_SINGLEPHY:
37                 rtlphy->rf_type = RF_2T2R;
38 -               rtlhal->version |= CHIP_92D_SINGLEPHY;
39 +               rtlhal->version |= RF_TYPE_2T2R;
40                 rtlhal->bandset = BAND_ON_BOTH;
41                 rtlhal->current_bandtype = BAND_ON_2_4G;
42                 break;
43  
44         case SINGLEMAC_SINGLEPHY:
45                 rtlphy->rf_type = RF_2T2R;
46 -               rtlhal->version |= CHIP_92D_SINGLEPHY;
47 +               rtlhal->version |= RF_TYPE_2T2R;
48                 rtlhal->bandset = BAND_ON_BOTH;
49                 rtlhal->current_bandtype = BAND_ON_2_4G;
50                 break;
51  
52         case DUALMAC_DUALPHY:
53                 rtlphy->rf_type = RF_1T1R;
54 -               rtlhal->version &= (~CHIP_92D_SINGLEPHY);
55 +               rtlhal->version &= RF_TYPE_1T1R;
56                 /* Now we let MAC0 run on 5G band. */
57                 if (rtlhal->interfaceindex == 0) {
58                         rtlhal->bandset = BAND_ON_5G;
59 -- 
60 1.7.7.6