summaryrefslogtreecommitdiffstats
path: root/target/linux/brcm47xx
diff options
context:
space:
mode:
authorhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-07-02 23:12:58 +0000
committerhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-07-02 23:12:58 +0000
commitbdc39c62ca913f3444a0f3fb7a8600810ecb6866 (patch)
treee19ef1e1bbf76ef1b749a1bcd3cd9ae92eafb89b /target/linux/brcm47xx
parent9253d87a21cf26b0b6661ed690284493c77edd70 (diff)
kernel: ssb/bcma: update to version from wireless-testing tag master-2012-07-02
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32580 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm47xx')
-rw-r--r--target/linux/brcm47xx/patches-3.3/020-bcma-move-parallel-flash-into-a-union.patch10
-rw-r--r--target/linux/brcm47xx/patches-3.3/021-bcma-add-serial-flash-support-to-bcma.patch10
-rw-r--r--target/linux/brcm47xx/patches-3.3/030-bcm47xx-bcma-nandflash.patch8
-rw-r--r--target/linux/brcm47xx/patches-3.3/047-bcma-add-new-PCI-ID.patch24
-rw-r--r--target/linux/brcm47xx/patches-3.3/052-bcma-complete-workaround-for-BCMA43224.patch52
-rw-r--r--target/linux/brcm47xx/patches-3.3/182-bcma-scan-for-extra-address-space.patch45
-rw-r--r--target/linux/brcm47xx/patches-3.3/232-ssb-recognise-ARM-Cortex-M3.patch21
-rw-r--r--target/linux/brcm47xx/patches-3.3/233-bcma-fix-NP-in-bcma_core_pci_irq_ctl.patch20
-rw-r--r--target/linux/brcm47xx/patches-3.3/999-wl_exports.patch2
9 files changed, 15 insertions, 177 deletions
diff --git a/target/linux/brcm47xx/patches-3.3/020-bcma-move-parallel-flash-into-a-union.patch b/target/linux/brcm47xx/patches-3.3/020-bcma-move-parallel-flash-into-a-union.patch
index 0042ff7ed..286508d54 100644
--- a/target/linux/brcm47xx/patches-3.3/020-bcma-move-parallel-flash-into-a-union.patch
+++ b/target/linux/brcm47xx/patches-3.3/020-bcma-move-parallel-flash-into-a-union.patch
@@ -91,9 +91,9 @@
#define BCMA_CC_BCAST_ADDR 0x0050
#define BCMA_CC_BCAST_DATA 0x0054
#define BCMA_CC_GPIOPULLUP 0x0058 /* Rev >= 20 only */
-@@ -324,6 +382,12 @@
- #define BCMA_CHIPCTL_4331_BT_SHD0_ON_GPIO4 BIT(16) /* enable bt_shd0 at gpio4 */
- #define BCMA_CHIPCTL_4331_BT_SHD1_ON_GPIO5 BIT(17) /* enable bt_shd1 at gpio5 */
+@@ -346,6 +404,12 @@
+ /* 4313 Chip specific ChipControl register bits */
+ #define BCMA_CCTRL_4313_12MA_LED_DRIVE 0x00000007 /* 12 mA drive strengh for later 4313 */
+#define BCMA_FLASH2 0x1c000000 /* Flash Region 2 (region 1 shadowed here) */
+#define BCMA_FLASH2_SZ 0x02000000 /* Size of Flash Region 2 */
@@ -104,7 +104,7 @@
/* Data for the PMU, if available.
* Check availability with ((struct bcma_chipcommon)->capabilities & BCMA_CC_CAP_PMU)
*/
-@@ -333,6 +397,10 @@ struct bcma_chipcommon_pmu {
+@@ -355,6 +419,10 @@ struct bcma_chipcommon_pmu {
};
#ifdef CONFIG_BCMA_DRIVER_MIPS
@@ -115,7 +115,7 @@
struct bcma_pflash {
u8 buswidth;
u32 window;
-@@ -358,7 +426,10 @@ struct bcma_drv_cc {
+@@ -380,7 +448,10 @@ struct bcma_drv_cc {
u16 fast_pwrup_delay;
struct bcma_chipcommon_pmu pmu;
#ifdef CONFIG_BCMA_DRIVER_MIPS
diff --git a/target/linux/brcm47xx/patches-3.3/021-bcma-add-serial-flash-support-to-bcma.patch b/target/linux/brcm47xx/patches-3.3/021-bcma-add-serial-flash-support-to-bcma.patch
index 2de4ba0f5..a4c9f4336 100644
--- a/target/linux/brcm47xx/patches-3.3/021-bcma-add-serial-flash-support-to-bcma.patch
+++ b/target/linux/brcm47xx/patches-3.3/021-bcma-add-serial-flash-support-to-bcma.patch
@@ -455,7 +455,7 @@
pr_info("found parallel flash.\n");
--- a/include/linux/bcma/bcma_driver_chipcommon.h
+++ b/include/linux/bcma/bcma_driver_chipcommon.h
-@@ -399,6 +399,7 @@ struct bcma_chipcommon_pmu {
+@@ -421,6 +421,7 @@ struct bcma_chipcommon_pmu {
#ifdef CONFIG_BCMA_DRIVER_MIPS
enum bcma_flash_type {
BCMA_PFLASH,
@@ -463,7 +463,7 @@
};
struct bcma_pflash {
-@@ -407,6 +408,14 @@ struct bcma_pflash {
+@@ -429,6 +430,14 @@ struct bcma_pflash {
u32 window_size;
};
@@ -478,7 +478,7 @@
struct bcma_serial_port {
void *regs;
unsigned long clockspeed;
-@@ -429,6 +438,9 @@ struct bcma_drv_cc {
+@@ -451,6 +460,9 @@ struct bcma_drv_cc {
enum bcma_flash_type flash_type;
union {
struct bcma_pflash pflash;
@@ -488,9 +488,9 @@
};
int nr_serial_ports;
-@@ -483,4 +495,14 @@ extern void bcma_chipco_chipctl_maskset(
- extern void bcma_chipco_regctl_maskset(struct bcma_drv_cc *cc,
+@@ -506,4 +518,14 @@ extern void bcma_chipco_regctl_maskset(s
u32 offset, u32 mask, u32 set);
+ extern void bcma_pmu_spuravoid_pllupdate(struct bcma_drv_cc *cc, int spuravoid);
+#ifdef CONFIG_BCMA_SFLASH
+/* Chipcommon sflash support. */
diff --git a/target/linux/brcm47xx/patches-3.3/030-bcm47xx-bcma-nandflash.patch b/target/linux/brcm47xx/patches-3.3/030-bcm47xx-bcma-nandflash.patch
index 00f3311a0..ed3392b88 100644
--- a/target/linux/brcm47xx/patches-3.3/030-bcm47xx-bcma-nandflash.patch
+++ b/target/linux/brcm47xx/patches-3.3/030-bcm47xx-bcma-nandflash.patch
@@ -971,7 +971,7 @@
+MODULE_DESCRIPTION("BCM47XX NAND flash driver");
--- a/include/linux/bcma/bcma_driver_chipcommon.h
+++ b/include/linux/bcma/bcma_driver_chipcommon.h
-@@ -400,6 +400,7 @@ struct bcma_chipcommon_pmu {
+@@ -422,6 +422,7 @@ struct bcma_chipcommon_pmu {
enum bcma_flash_type {
BCMA_PFLASH,
BCMA_SFLASH,
@@ -979,7 +979,7 @@
};
struct bcma_pflash {
-@@ -416,6 +417,14 @@ struct bcma_sflash {
+@@ -438,6 +439,14 @@ struct bcma_sflash {
};
#endif /* CONFIG_BCMA_SFLASH */
@@ -994,7 +994,7 @@
struct bcma_serial_port {
void *regs;
unsigned long clockspeed;
-@@ -441,6 +450,9 @@ struct bcma_drv_cc {
+@@ -463,6 +472,9 @@ struct bcma_drv_cc {
#ifdef CONFIG_BCMA_SFLASH
struct bcma_sflash sflash;
#endif /* CONFIG_BCMA_SFLASH */
@@ -1004,7 +1004,7 @@
};
int nr_serial_ports;
-@@ -505,4 +517,13 @@ int bcma_sflash_write(struct bcma_drv_cc
+@@ -528,4 +540,13 @@ int bcma_sflash_write(struct bcma_drv_cc
int bcma_sflash_erase(struct bcma_drv_cc *cc, u32 offset);
#endif /* CONFIG_BCMA_SFLASH */
diff --git a/target/linux/brcm47xx/patches-3.3/047-bcma-add-new-PCI-ID.patch b/target/linux/brcm47xx/patches-3.3/047-bcma-add-new-PCI-ID.patch
deleted file mode 100644
index fb658345e..000000000
--- a/target/linux/brcm47xx/patches-3.3/047-bcma-add-new-PCI-ID.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 699c57a18b40ffbe1763915acdc1a3e4fb539d01 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Fri, 13 Jan 2012 17:42:15 +0100
-Subject: [PATCH 29/32] bcma: add new PCI ID
-
-This ID was found on the PCIe wireless card on the board of a Netgear
-WNDR3400 using a bcm4716. The device with this ID is identified by b43
-as "Broadcom 43224 WLAN".
-
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
----
- drivers/bcma/host_pci.c | 1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
-
---- a/drivers/bcma/host_pci.c
-+++ b/drivers/bcma/host_pci.c
-@@ -272,6 +272,7 @@ static DEFINE_PCI_DEVICE_TABLE(bcma_pci_
- { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4353) },
- { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4357) },
- { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4727) },
-+ { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0xa8d8) },
- { 0, },
- };
- MODULE_DEVICE_TABLE(pci, bcma_pci_bridge_tbl);
diff --git a/target/linux/brcm47xx/patches-3.3/052-bcma-complete-workaround-for-BCMA43224.patch b/target/linux/brcm47xx/patches-3.3/052-bcma-complete-workaround-for-BCMA43224.patch
deleted file mode 100644
index 7e40fc80b..000000000
--- a/target/linux/brcm47xx/patches-3.3/052-bcma-complete-workaround-for-BCMA43224.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From efe89df0326b777563d197b8cf1c25209a31ceb0 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Sat, 21 Jan 2012 18:47:42 +0100
-Subject: [PATCH 32/34] bcma: complete workaround for BCMA43224
-
-
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
----
- drivers/bcma/driver_chipcommon_pmu.c | 15 +++++++++++----
- include/linux/bcma/bcma_driver_chipcommon.h | 5 +++++
- 2 files changed, 16 insertions(+), 4 deletions(-)
-
---- a/drivers/bcma/driver_chipcommon_pmu.c
-+++ b/drivers/bcma/driver_chipcommon_pmu.c
-@@ -142,12 +142,19 @@ void bcma_pmu_workarounds(struct bcma_dr
- /* BCM4331 workaround is SPROM-related, we put it in sprom.c */
- break;
- case 43224:
-+ case 43421:
-+ /* enable 12 mA drive strenth for 43224 and set chipControl register bit 15 */
- if (bus->chipinfo.rev == 0) {
-- pr_err("Workarounds for 43224 rev 0 not fully "
-- "implemented\n");
-- bcma_chipco_chipctl_maskset(cc, 0, ~0, 0x00F000F0);
-+ bcma_cc_maskset32(cc, BCMA_CC_CHIPCTL,
-+ BCMA_CCTRL_43224_GPIO_TOGGLE,
-+ BCMA_CCTRL_43224_GPIO_TOGGLE);
-+ bcma_chipco_chipctl_maskset(cc, 0,
-+ BCMA_CCTRL_43224A0_12MA_LED_DRIVE,
-+ BCMA_CCTRL_43224A0_12MA_LED_DRIVE);
- } else {
-- bcma_chipco_chipctl_maskset(cc, 0, ~0, 0xF0);
-+ bcma_chipco_chipctl_maskset(cc, 0,
-+ BCMA_CCTRL_43224B0_12MA_LED_DRIVE,
-+ BCMA_CCTRL_43224B0_12MA_LED_DRIVE);
- }
- break;
- case 43225:
---- a/include/linux/bcma/bcma_driver_chipcommon.h
-+++ b/include/linux/bcma/bcma_driver_chipcommon.h
-@@ -382,6 +382,11 @@
- #define BCMA_CHIPCTL_4331_BT_SHD0_ON_GPIO4 BIT(16) /* enable bt_shd0 at gpio4 */
- #define BCMA_CHIPCTL_4331_BT_SHD1_ON_GPIO5 BIT(17) /* enable bt_shd1 at gpio5 */
-
-+/* 43224 chip-specific ChipControl register bits */
-+#define BCMA_CCTRL_43224_GPIO_TOGGLE 0x8000 /* gpio[3:0] pins as btcoex or s/w gpio */
-+#define BCMA_CCTRL_43224A0_12MA_LED_DRIVE 0x00F000F0 /* 12 mA drive strength */
-+#define BCMA_CCTRL_43224B0_12MA_LED_DRIVE 0xF0 /* 12 mA drive strength for later 43224s */
-+
- #define BCMA_FLASH2 0x1c000000 /* Flash Region 2 (region 1 shadowed here) */
- #define BCMA_FLASH2_SZ 0x02000000 /* Size of Flash Region 2 */
- #define BCMA_FLASH1 0x1fc00000 /* MIPS Flash Region 1 */
diff --git a/target/linux/brcm47xx/patches-3.3/182-bcma-scan-for-extra-address-space.patch b/target/linux/brcm47xx/patches-3.3/182-bcma-scan-for-extra-address-space.patch
deleted file mode 100644
index fdf5cfbe9..000000000
--- a/target/linux/brcm47xx/patches-3.3/182-bcma-scan-for-extra-address-space.patch
+++ /dev/null
@@ -1,45 +0,0 @@
---- a/drivers/bcma/scan.c
-+++ b/drivers/bcma/scan.c
-@@ -323,6 +323,23 @@ static int bcma_get_next_core(struct bcm
- return -EILSEQ;
- }
-
-+ /* First Slave Address Descriptor should be port 0:
-+ * the main register space for the core
-+ */
-+ tmp = bcma_erom_get_addr_desc(bus, eromptr, SCAN_ADDR_TYPE_SLAVE, 0);
-+ if (tmp <= 0) {
-+ /* Try again to see if it is a bridge */
-+ tmp = bcma_erom_get_addr_desc(bus, eromptr,
-+ SCAN_ADDR_TYPE_BRIDGE, 0);
-+ if (tmp <= 0) {
-+ return -EILSEQ;
-+ } else {
-+ pr_info("Bridge found\n");
-+ return -ENXIO;
-+ }
-+ }
-+ core->addr = tmp;
-+
- /* get & parse slave ports */
- for (i = 0; i < ports[1]; i++) {
- for (j = 0; ; j++) {
-@@ -335,7 +352,7 @@ static int bcma_get_next_core(struct bcm
- break;
- } else {
- if (i == 0 && j == 0)
-- core->addr = tmp;
-+ core->addr1 = tmp;
- }
- }
- }
---- a/include/linux/bcma/bcma.h
-+++ b/include/linux/bcma/bcma.h
-@@ -144,6 +144,7 @@ struct bcma_device {
- u8 core_unit;
-
- u32 addr;
-+ u32 addr1;
- u32 wrap;
-
- void __iomem *io_addr;
diff --git a/target/linux/brcm47xx/patches-3.3/232-ssb-recognise-ARM-Cortex-M3.patch b/target/linux/brcm47xx/patches-3.3/232-ssb-recognise-ARM-Cortex-M3.patch
deleted file mode 100644
index a2b01f476..000000000
--- a/target/linux/brcm47xx/patches-3.3/232-ssb-recognise-ARM-Cortex-M3.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- a/drivers/ssb/scan.c
-+++ b/drivers/ssb/scan.c
-@@ -90,6 +90,8 @@ const char *ssb_core_name(u16 coreid)
- return "ARM 1176";
- case SSB_DEV_ARM_7TDMI:
- return "ARM 7TDMI";
-+ case SSB_DEV_ARM_CM3:
-+ return "ARM Cortex M3";
- }
- return "UNKNOWN";
- }
---- a/include/linux/ssb/ssb.h
-+++ b/include/linux/ssb/ssb.h
-@@ -243,6 +243,7 @@ struct ssb_bus_ops {
- #define SSB_DEV_MINI_MACPHY 0x823
- #define SSB_DEV_ARM_1176 0x824
- #define SSB_DEV_ARM_7TDMI 0x825
-+#define SSB_DEV_ARM_CM3 0x82A
-
- /* Vendor-ID values */
- #define SSB_VENDOR_BROADCOM 0x4243
diff --git a/target/linux/brcm47xx/patches-3.3/233-bcma-fix-NP-in-bcma_core_pci_irq_ctl.patch b/target/linux/brcm47xx/patches-3.3/233-bcma-fix-NP-in-bcma_core_pci_irq_ctl.patch
deleted file mode 100644
index 9843f973a..000000000
--- a/target/linux/brcm47xx/patches-3.3/233-bcma-fix-NP-in-bcma_core_pci_irq_ctl.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/drivers/bcma/driver_pci.c
-+++ b/drivers/bcma/driver_pci.c
-@@ -232,7 +232,7 @@ void __devinit bcma_core_pci_init(struct
- int bcma_core_pci_irq_ctl(struct bcma_drv_pci *pc, struct bcma_device *core,
- bool enable)
- {
-- struct pci_dev *pdev = pc->core->bus->host_pci;
-+ struct pci_dev *pdev;
- u32 coremask, tmp;
- int err = 0;
-
-@@ -243,6 +243,8 @@ int bcma_core_pci_irq_ctl(struct bcma_dr
- goto out;
- }
-
-+ pdev = pc->core->bus->host_pci;
-+
- err = pci_read_config_dword(pdev, BCMA_PCI_IRQMASK, &tmp);
- if (err)
- goto out;
diff --git a/target/linux/brcm47xx/patches-3.3/999-wl_exports.patch b/target/linux/brcm47xx/patches-3.3/999-wl_exports.patch
index 550f4c968..e45b40242 100644
--- a/target/linux/brcm47xx/patches-3.3/999-wl_exports.patch
+++ b/target/linux/brcm47xx/patches-3.3/999-wl_exports.patch
@@ -12,7 +12,7 @@
--- a/arch/mips/mm/cache.c
+++ b/arch/mips/mm/cache.c
-@@ -57,6 +57,7 @@ void (*_dma_cache_wback)(unsigned long s
+@@ -58,6 +58,7 @@ void (*_dma_cache_wback)(unsigned long s
void (*_dma_cache_inv)(unsigned long start, unsigned long size);
EXPORT_SYMBOL(_dma_cache_wback_inv);