Root/package/mac80211/patches/852-brcmsmac-start-adding-support-for-core-rev-28.patch

1--- a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
2+++ b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
3@@ -98,6 +98,7 @@ static struct bcma_device_id brcms_corei
4     BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_80211, 17, BCMA_ANY_CLASS),
5     BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_80211, 23, BCMA_ANY_CLASS),
6     BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_80211, 24, BCMA_ANY_CLASS),
7+// BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_80211, 28, BCMA_ANY_CLASS),
8     BCMA_CORETABLE_END
9 };
10 MODULE_DEVICE_TABLE(bcma, brcms_coreid_table);
11--- a/drivers/net/wireless/brcm80211/brcmsmac/main.c
12+++ b/drivers/net/wireless/brcm80211/brcmsmac/main.c
13@@ -719,7 +719,7 @@ static void brcms_c_ucode_bsinit(struct
14     brcms_c_write_mhf(wlc_hw, wlc_hw->band->mhfs);
15 
16     /* do band-specific ucode IHR, SHM, and SCR inits */
17- if (D11REV_IS(wlc_hw->corerev, 17) || D11REV_IS(wlc_hw->corerev, 23)) {
18+ if (D11REV_IS(wlc_hw->corerev, 17) || D11REV_IS(wlc_hw->corerev, 23) || D11REV_IS(wlc_hw->corerev, 28)) {
19         if (BRCMS_ISNPHY(wlc_hw->band))
20             brcms_c_write_inits(wlc_hw, ucode->d11n0bsinitvals16);
21         else
22@@ -2266,7 +2266,7 @@ static void brcms_ucode_download(struct
23     if (wlc_hw->ucode_loaded)
24         return;
25 
26- if (D11REV_IS(wlc_hw->corerev, 17) || D11REV_IS(wlc_hw->corerev, 23)) {
27+ if (D11REV_IS(wlc_hw->corerev, 17) || D11REV_IS(wlc_hw->corerev, 23) || D11REV_IS(wlc_hw->corerev, 28)) {
28         if (BRCMS_ISNPHY(wlc_hw->band)) {
29             brcms_ucode_write(wlc_hw, ucode->bcm43xx_16_mimo,
30                       ucode->bcm43xx_16_mimosz);
31@@ -3218,7 +3218,7 @@ static void brcms_b_coreinit(struct brcm
32 
33     sflags = bcma_aread32(core, BCMA_IOST);
34 
35- if (D11REV_IS(wlc_hw->corerev, 17) || D11REV_IS(wlc_hw->corerev, 23)) {
36+ if (D11REV_IS(wlc_hw->corerev, 17) || D11REV_IS(wlc_hw->corerev, 23) || D11REV_IS(wlc_hw->corerev, 28)) {
37         if (BRCMS_ISNPHY(wlc_hw->band))
38             brcms_c_write_inits(wlc_hw, ucode->d11n0initvals16);
39         else
40@@ -5675,6 +5675,8 @@ static bool brcms_c_chipmatch_soc(struct
41 
42     if (chipinfo->id == BCMA_CHIP_ID_BCM4716)
43         return true;
44+ if (chipinfo->id == BCMA_CHIP_ID_BCM5357)
45+ return true;
46 
47     pr_err("unknown chip id %04x\n", chipinfo->id);
48     return false;
49--- a/drivers/net/wireless/brcm80211/brcmsmac/main.h
50+++ b/drivers/net/wireless/brcm80211/brcmsmac/main.h
51@@ -65,7 +65,7 @@
52 #define SW_TIMER_MAC_STAT_UPD 30 /* periodic MAC stats update */
53 
54 /* max # supported core revisions (0 .. MAXCOREREV - 1) */
55-#define MAXCOREREV 28
56+#define MAXCOREREV 29
57 
58 /* Double check that unsupported cores are not enabled */
59 #if CONF_MSK(D11CONF, 0x4f) || CONF_GE(D11CONF, MAXCOREREV)
60--- a/drivers/net/wireless/brcm80211/brcmsmac/types.h
61+++ b/drivers/net/wireless/brcm80211/brcmsmac/types.h
62@@ -93,11 +93,11 @@
63 #define BOARD_GPIO_13 0x2000
64 
65 /* **** Core type/rev defaults **** */
66-#define D11CONF 0x0fffffb0 /* Supported D11 revs: 4, 5, 7-27
67+#define D11CONF 0x1fffffb0 /* Supported D11 revs: 4, 5, 7-27
68                      * also need to update wlc.h MAXCOREREV
69                      */
70 
71-#define NCONF 0x000001ff /* Supported nphy revs:
72+#define NCONF 0x000002ff /* Supported nphy revs:
73                      * 0 4321a0
74                      * 1 4321a1
75                      * 2 4321b0/b1/c0/c1
76

Archive Download this file



interactive