aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm63xx/patches-3.18/801-ssb_export_fallback_sprom.patch
diff options
context:
space:
mode:
authorJonas Gorski <jogo@openwrt.org>2014-12-01 13:27:26 +0000
committerJonas Gorski <jogo@openwrt.org>2014-12-01 13:27:26 +0000
commita91ec2f50f4e64ec4b83c3f6e9d9f07104c035c7 (patch)
tree1ec5ef0c385c2ad81b3115831f1f369e89d8c251 /target/linux/brcm63xx/patches-3.18/801-ssb_export_fallback_sprom.patch
parent2baa2619dc20d73534054f3d7438e52067f251d4 (diff)
downloadmaster-187ad058-a91ec2f50f4e64ec4b83c3f6e9d9f07104c035c7.tar.gz
master-187ad058-a91ec2f50f4e64ec4b83c3f6e9d9f07104c035c7.tar.bz2
master-187ad058-a91ec2f50f4e64ec4b83c3f6e9d9f07104c035c7.zip
brcm63xx: add kernel 3.18 support
Add 3.18 support based on 3.18-rc6. Only netboot tested. Signed-off-by: Jonas Gorski <jogo@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43461 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm63xx/patches-3.18/801-ssb_export_fallback_sprom.patch')
-rw-r--r--target/linux/brcm63xx/patches-3.18/801-ssb_export_fallback_sprom.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-3.18/801-ssb_export_fallback_sprom.patch b/target/linux/brcm63xx/patches-3.18/801-ssb_export_fallback_sprom.patch
new file mode 100644
index 0000000000..11a83536b7
--- /dev/null
+++ b/target/linux/brcm63xx/patches-3.18/801-ssb_export_fallback_sprom.patch
@@ -0,0 +1,31 @@
+--- a/arch/mips/bcm63xx/sprom.c
++++ b/arch/mips/bcm63xx/sprom.c
+@@ -8,6 +8,7 @@
+ */
+
+ #include <linux/init.h>
++#include <linux/export.h>
+ #include <linux/kernel.h>
+ #include <linux/string.h>
+ #include <linux/platform_device.h>
+@@ -387,7 +388,19 @@ struct fallback_sprom_match {
+ struct ssb_sprom sprom;
+ };
+
+-static struct fallback_sprom_match fallback_sprom;
++struct fallback_sprom_match fallback_sprom;
++
++int bcm63xx_get_fallback_sprom(uint pci_bus, uint pci_slot, struct ssb_sprom *out)
++{
++ if (pci_bus != fallback_sprom.pci_bus ||
++ pci_slot != fallback_sprom.pci_dev)
++ pr_warn("fallback_sprom: pci bus/device num mismatch: expected %i/%i, but got %i/%i\n",
++ fallback_sprom.pci_bus, fallback_sprom.pci_dev,
++ pci_bus, pci_slot);
++ memcpy(out, &fallback_sprom.sprom, sizeof(struct ssb_sprom));
++ return 0;
++}
++EXPORT_SYMBOL(bcm63xx_get_fallback_sprom);
+
+ #if defined(CONFIG_SSB_PCIHOST)
+ int bcm63xx_get_fallback_ssb_sprom(struct ssb_bus *bus, struct ssb_sprom *out)