aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-3.8
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@openwrt.org>2013-10-02 22:26:15 +0000
committerHauke Mehrtens <hauke@openwrt.org>2013-10-02 22:26:15 +0000
commitb0e8546858af85049589f7d00f7c3f45c05e2304 (patch)
tree319a524473cf24ec3fe463cf9f54f1b304a54a7c /target/linux/generic/patches-3.8
parent6212ba0165143f05182d561391d67beaa4c9a4c5 (diff)
downloadmaster-187ad058-b0e8546858af85049589f7d00f7c3f45c05e2304.tar.gz
master-187ad058-b0e8546858af85049589f7d00f7c3f45c05e2304.tar.bz2
master-187ad058-b0e8546858af85049589f7d00f7c3f45c05e2304.zip
kernel: bcma: update to wireless-testing master-2013-10-01
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38290 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/patches-3.8')
-rw-r--r--target/linux/generic/patches-3.8/025-bcma_backport.patch30
1 files changed, 17 insertions, 13 deletions
diff --git a/target/linux/generic/patches-3.8/025-bcma_backport.patch b/target/linux/generic/patches-3.8/025-bcma_backport.patch
index 2764474890..6558454c1a 100644
--- a/target/linux/generic/patches-3.8/025-bcma_backport.patch
+++ b/target/linux/generic/patches-3.8/025-bcma_backport.patch
@@ -1769,13 +1769,14 @@
#ifdef CONFIG_BCMA_DRIVER_PCI_HOSTMODE
struct bcma_drv_pci_host {
-@@ -217,7 +240,8 @@ struct bcma_drv_pci {
+@@ -217,7 +240,9 @@ struct bcma_drv_pci {
extern void bcma_core_pci_init(struct bcma_drv_pci *pc);
extern int bcma_core_pci_irq_ctl(struct bcma_drv_pci *pc,
struct bcma_device *core, bool enable);
-extern void bcma_core_pci_extend_L1timer(struct bcma_drv_pci *pc, bool extend);
+extern void bcma_core_pci_up(struct bcma_bus *bus);
+extern void bcma_core_pci_down(struct bcma_bus *bus);
++extern void bcma_core_pci_power_save(struct bcma_bus *bus, bool up);
extern int bcma_core_pci_pcibios_map_irq(const struct pci_dev *dev);
extern int bcma_core_pci_plat_dev_init(struct pci_dev *dev);
@@ -1832,14 +1833,20 @@
/**************************************************
* Workarounds.
**************************************************/
-@@ -203,6 +210,25 @@ static void bcma_core_pci_config_fixup(s
- }
+@@ -229,6 +236,32 @@ void bcma_core_pci_init(struct bcma_drv_
+ bcma_core_pci_clientmode_init(pc);
}
-+static void bcma_core_pci_power_save(struct bcma_drv_pci *pc, bool up)
++void bcma_core_pci_power_save(struct bcma_bus *bus, bool up)
+{
++ struct bcma_drv_pci *pc;
+ u16 data;
+
++ if (bus->hosttype != BCMA_HOSTTYPE_PCI)
++ return;
++
++ pc = &bus->drv_pci[0];
++
+ if (pc->core->id.rev >= 15 && pc->core->id.rev <= 20) {
+ data = up ? 0x74 : 0x7C;
+ bcma_pcie_mdio_writeread(pc, BCMA_CORE_PCI_MDIO_BLK1,
@@ -1854,11 +1861,12 @@
+ BCMA_CORE_PCI_MDIO_BLK1_MGMT3, data);
+ }
+}
++EXPORT_SYMBOL_GPL(bcma_core_pci_power_save);
+
- /**************************************************
- * Init.
- **************************************************/
-@@ -262,7 +288,7 @@ out:
+ int bcma_core_pci_irq_ctl(struct bcma_drv_pci *pc, struct bcma_device *core,
+ bool enable)
+ {
+@@ -262,7 +295,7 @@ out:
}
EXPORT_SYMBOL_GPL(bcma_core_pci_irq_ctl);
@@ -1867,7 +1875,7 @@
{
u32 w;
-@@ -274,4 +300,33 @@ void bcma_core_pci_extend_L1timer(struct
+@@ -274,4 +307,29 @@ void bcma_core_pci_extend_L1timer(struct
bcma_pcie_write(pc, BCMA_CORE_PCI_DLLP_PMTHRESHREG, w);
bcma_pcie_read(pc, BCMA_CORE_PCI_DLLP_PMTHRESHREG);
}
@@ -1882,8 +1890,6 @@
+
+ pc = &bus->drv_pci[0];
+
-+ bcma_core_pci_power_save(pc, true);
-+
+ bcma_core_pci_extend_L1timer(pc, true);
+}
+EXPORT_SYMBOL_GPL(bcma_core_pci_up);
@@ -1898,8 +1904,6 @@
+ pc = &bus->drv_pci[0];
+
+ bcma_core_pci_extend_L1timer(pc, false);
-+
-+ bcma_core_pci_power_save(pc, false);
+}
+EXPORT_SYMBOL_GPL(bcma_core_pci_down);
--- a/drivers/net/wireless/brcm80211/brcmsmac/aiutils.c