brcm63xx: drop 3.18 support
[openwrt.git] / target / linux / brcm63xx / patches-3.18 / 362-MIPS-BCM63XX-also-register-a-fallback-sprom-for-bcma.patch
diff --git a/target/linux/brcm63xx/patches-3.18/362-MIPS-BCM63XX-also-register-a-fallback-sprom-for-bcma.patch b/target/linux/brcm63xx/patches-3.18/362-MIPS-BCM63XX-also-register-a-fallback-sprom-for-bcma.patch
deleted file mode 100644 (file)
index 6475f9f..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-From 03feb9db77fba3eef3d83e17a87a56979659b248 Mon Sep 17 00:00:00 2001
-From: Jonas Gorski <jogo@openwrt.org>
-Date: Tue, 29 Jul 2014 22:48:26 +0200
-Subject: [PATCH 07/10] MIPS: BCM63XX: also register a fallback sprom for bcma
-
-Similar to SSB, register a fallback sprom handler for BCMA.
-
-Signed-off-by: Jonas Gorski <jogo@openwrt.org>
----
- arch/mips/bcm63xx/boards/Kconfig |  1 +
- arch/mips/bcm63xx/sprom.c        | 40 +++++++++++++++++++++++++++++++++++-----
- 2 files changed, 36 insertions(+), 5 deletions(-)
-
---- a/arch/mips/bcm63xx/boards/Kconfig
-+++ b/arch/mips/bcm63xx/boards/Kconfig
-@@ -4,6 +4,7 @@ menu "Board support"
- config BOARD_BCM963XX
-        bool "Generic Broadcom 963xx boards"
-       select SSB
-+      select BCMA
-       default y
-        help
---- a/arch/mips/bcm63xx/sprom.c
-+++ b/arch/mips/bcm63xx/sprom.c
-@@ -12,6 +12,7 @@
- #include <linux/string.h>
- #include <linux/platform_device.h>
- #include <linux/ssb/ssb.h>
-+#include <linux/bcma/bcma.h>
- #include <bcm63xx_fallback_sprom.h>
- #include <board_bcm963xx.h>
-@@ -21,7 +22,7 @@
-  * Register a sane SPROMv2 to make the on-board
-  * bcm4318 WLAN work
-  */
--#ifdef CONFIG_SSB_PCIHOST
-+#if defined(CONFIG_SSB_PCIHOST) || defined(CONFIG_BCMA_HOST_PCI)
- static __initconst struct ssb_sprom bcm63xx_default_sprom = {
-       .revision               = 0x02,
-       .board_rev              = 0x17,
-@@ -43,7 +44,7 @@ static __initconst struct ssb_sprom bcm6
-       .boardflags_hi          = 0x0000,
- };
--
-+#if defined (CONFIG_SSB_PCIHOST)
- static __initconst u16 bcm4306_sprom[] = {
-       0x4001, 0x0000, 0x0453, 0x14e4, 0x4320, 0x8000, 0x0002, 0x0002,
-       0x1000, 0x1800, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff,
-@@ -158,10 +159,12 @@ static __initconst u16 bcm43222_sprom[]
-       0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
-       0xffff, 0xffff, 0xffff, 0x0008,
- };
-+#endif /* CONFIG_SSB_PCIHOST */
- static struct ssb_sprom bcm63xx_sprom;
--int bcm63xx_get_fallback_sprom(struct ssb_bus *bus, struct ssb_sprom *out)
-+#if defined(CONFIG_SSB_PCIHOST)
-+int bcm63xx_get_fallback_ssb_sprom(struct ssb_bus *bus, struct ssb_sprom *out)
- {
-       if (bus->bustype == SSB_BUSTYPE_PCI) {
-               memcpy(out, &bcm63xx_sprom, sizeof(struct ssb_sprom));
-@@ -171,6 +174,20 @@ int bcm63xx_get_fallback_sprom(struct ss
-               return -EINVAL;
-       }
- }
-+#endif
-+
-+#if defined(CONFIG_BCMA_HOST_PCI)
-+int bcm63xx_get_fallback_bcma_sprom(struct bcma_bus *bus, struct ssb_sprom *out)
-+{
-+      if (bus->hosttype == BCMA_HOSTTYPE_PCI) {
-+              memcpy(out, &bcm63xx_sprom, sizeof(struct ssb_sprom));
-+              return 0;
-+      } else {
-+              printk(KERN_ERR PFX "unable to fill SPROM for given bustype.\n");
-+              return -EINVAL;
-+      }
-+}
-+#endif
- /* FIXME: use lib_sprom after submission upstream */
-@@ -654,10 +671,11 @@ int __init bcm63xx_register_fallback_spr
- {
-       int ret = 0;
--#ifdef CONFIG_SSB_PCIHOST
-+#if defined(CONFIG_SSB_PCIHOST) || defined(CONFIG_BCMA_HOST_PCI)
-       u16 size = 0;
-       switch (data->type) {
-+#if defined(CONFIG_SSB_PCIHOST)
-       case SPROM_BCM4306:
-               memcpy(&template_sprom, &bcm4306_sprom, sizeof(bcm4306_sprom));
-               size = ARRAY_SIZE(bcm4306_sprom);
-@@ -678,6 +696,7 @@ int __init bcm63xx_register_fallback_spr
-               memcpy(&template_sprom, &bcm43222_sprom, sizeof(bcm43222_sprom));
-               size = ARRAY_SIZE(bcm43222_sprom);
-               break;
-+#endif
-       case SPROM_DEFAULT:
-               memcpy(&bcm63xx_sprom, &bcm63xx_default_sprom,
-                      sizeof(bcm63xx_sprom));
-@@ -692,8 +711,19 @@ int __init bcm63xx_register_fallback_spr
-       memcpy(bcm63xx_sprom.il0mac, data->mac_addr, ETH_ALEN);
-       memcpy(bcm63xx_sprom.et0mac, data->mac_addr, ETH_ALEN);
-       memcpy(bcm63xx_sprom.et1mac, data->mac_addr, ETH_ALEN);
-+#endif /* defined(CONFIG_SSB_PCIHOST) || defined(CONFIG_BCMA_HOST_PCI) */
-+
-+#if defined(CONFIG_SSB_PCIHOST)
-+      ret = ssb_arch_register_fallback_sprom(&bcm63xx_get_fallback_ssb_sprom);
-+      if (ret)
-+              return ret;
-+
-+#endif
--      ret = ssb_arch_register_fallback_sprom(&bcm63xx_get_fallback_sprom);
-+#if defined(CONFIG_BCMA_HOST_PCI)
-+      ret = bcma_arch_register_fallback_sprom(bcm63xx_get_fallback_bcma_sprom);
-+      if (ret)
-+              return ret;
- #endif
-       return ret;
- }