summaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-08-18 14:08:35 +0000
committerhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-08-18 14:08:35 +0000
commitb7397011b88a89796817872f806759d7a2037ab5 (patch)
tree62dcb79cc972a6961dbb4b8dc21a61ea52c9258a /target/linux
parent95f384c9a998c8a65781960cff8377226b17d998 (diff)
[brcm47xx] make brcm47xx build only with bcma or only with ssb support.
There are some ifdefs missing so when only ssb or only bcma was selected in the kernel config it did not build. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33209 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/brcm47xx/patches-3.3/024-brcm47xx-add-common-interface-for-sflash.patch6
-rw-r--r--target/linux/brcm47xx/patches-3.3/027-mtd-bcm47xx-add-serial-flash-driver.patch19
-rw-r--r--target/linux/brcm47xx/patches-3.3/030-bcm47xx-bcma-nandflash.patch57
-rw-r--r--target/linux/brcm47xx/patches-3.3/114-MIPS-BCM47xx-Setup-and-register-serial-early.patch4
-rw-r--r--target/linux/brcm47xx/patches-3.3/400-arch-bcm47xx.patch2
-rw-r--r--target/linux/brcm47xx/patches-3.3/502-bcm47xx-rewrite-gpio-handling.patch2
-rw-r--r--target/linux/brcm47xx/patches-3.3/980-wnr834b_no_cardbus_invariant.patch2
7 files changed, 33 insertions, 59 deletions
diff --git a/target/linux/brcm47xx/patches-3.3/024-brcm47xx-add-common-interface-for-sflash.patch b/target/linux/brcm47xx/patches-3.3/024-brcm47xx-add-common-interface-for-sflash.patch
index 2b1516d27..fd4befcfa 100644
--- a/target/linux/brcm47xx/patches-3.3/024-brcm47xx-add-common-interface-for-sflash.patch
+++ b/target/linux/brcm47xx/patches-3.3/024-brcm47xx-add-common-interface-for-sflash.patch
@@ -9,7 +9,7 @@
obj-$(CONFIG_BCM47XX_SSB) += wgt634u.o
--- /dev/null
+++ b/arch/mips/bcm47xx/bus.c
-@@ -0,0 +1,82 @@
+@@ -0,0 +1,86 @@
+/*
+ * BCM947xx nvram variable access
+ *
@@ -23,6 +23,7 @@
+
+#include <bus.h>
+
++#ifdef CONFIG_BCM47XX_BCMA
+static int bcm47xx_sflash_bcma_read(struct bcm47xx_sflash *dev, u32 offset, u32 len, u8 *buf)
+{
+ return bcma_sflash_read(dev->bcc, offset, len, buf);
@@ -57,7 +58,9 @@
+ sflash->numblocks = bcc->sflash.numblocks;
+ sflash->size = bcc->sflash.size;
+}
++#endif
+
++#ifdef CONFIG_BCM47XX_SSB
+static int bcm47xx_sflash_ssb_read(struct bcm47xx_sflash *dev, u32 offset, u32 len, u8 *buf)
+{
+ return ssb_sflash_read(dev->scc, offset, len, buf);
@@ -92,6 +95,7 @@
+ sflash->numblocks = scc->sflash.numblocks;
+ sflash->size = scc->sflash.size;
+}
++#endif
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
@@ -43,6 +43,8 @@ EXPORT_SYMBOL(bcm47xx_bus);
diff --git a/target/linux/brcm47xx/patches-3.3/027-mtd-bcm47xx-add-serial-flash-driver.patch b/target/linux/brcm47xx/patches-3.3/027-mtd-bcm47xx-add-serial-flash-driver.patch
index 1e2577b72..3aec60c11 100644
--- a/target/linux/brcm47xx/patches-3.3/027-mtd-bcm47xx-add-serial-flash-driver.patch
+++ b/target/linux/brcm47xx/patches-3.3/027-mtd-bcm47xx-add-serial-flash-driver.patch
@@ -1,22 +1,3 @@
---- a/arch/mips/include/asm/mach-bcm47xx/bus.h
-+++ b/arch/mips/include/asm/mach-bcm47xx/bus.h
-@@ -11,6 +11,7 @@
-
- #include <linux/ssb/ssb.h>
- #include <linux/bcma/bcma.h>
-+#include <linux/mtd/mtd.h>
- #include <bcm47xx.h>
-
- struct bcm47xx_sflash {
-@@ -28,6 +29,8 @@ struct bcm47xx_sflash {
- u32 blocksize; /* Block size */
- u32 numblocks; /* Number of blocks */
- u32 size; /* Total size in bytes */
-+
-+ struct mtd_info *mtd;
- };
-
- void bcm47xx_sflash_struct_bcma_init(struct bcm47xx_sflash *sflash, struct bcma_drv_cc *bcc);
--- a/drivers/mtd/maps/Kconfig
+++ b/drivers/mtd/maps/Kconfig
@@ -257,6 +257,15 @@ config MTD_BCM47XX_PFLASH
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 2a127e754..53f6e98d1 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
@@ -18,9 +18,9 @@
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
-@@ -80,3 +81,9 @@ void bcm47xx_sflash_struct_ssb_init(stru
- sflash->numblocks = scc->sflash.numblocks;
- sflash->size = scc->sflash.size;
+@@ -46,6 +47,12 @@ void bcm47xx_sflash_struct_bcma_init(str
+ sflash->numblocks = bcc->sflash.numblocks;
+ sflash->size = bcc->sflash.size;
}
+
+void bcm47xx_nflash_struct_bcma_init(struct bcm47xx_nflash *nflash, struct bcma_drv_cc *bcc)
@@ -28,6 +28,9 @@
+ nflash->nflash_type = BCM47XX_BUS_TYPE_BCMA;
+ nflash->bcc = bcc;
+}
+ #endif
+
+ #ifdef CONFIG_BCM47XX_SSB
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -4,6 +4,7 @@
@@ -46,10 +49,10 @@
static char nvram_buf[NVRAM_SPACE];
-@@ -139,6 +141,51 @@ static int early_nvram_init_sflash(void)
- return 0;
- }
+@@ -160,6 +162,51 @@ static void early_nvram_init_ssb(void)
+ #endif
+ #ifdef CONFIG_BCM47XX_BCMA
+static int early_nvram_init_nflash(void)
+{
+ struct nvram_header *header;
@@ -95,9 +98,9 @@
+ return ret;
+}
+
- #ifdef CONFIG_BCM47XX_SSB
- static void early_nvram_init_ssb(void)
+ static void early_nvram_init_bcma(void)
{
+ int err;
@@ -173,6 +220,11 @@ static void early_nvram_init_bcma(void)
if (err < 0)
printk(KERN_WARNING "can not read from flash: %i\n", err);
@@ -120,18 +123,12 @@
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
-@@ -46,6 +47,7 @@ enum bcm47xx_bus_type bcm47xx_bus_type;
- EXPORT_SYMBOL(bcm47xx_bus_type);
+@@ -234,6 +235,21 @@ static int bcm47xx_get_sprom_bcma(struct
+ }
+ }
- struct bcm47xx_sflash bcm47xx_sflash;
+struct bcm47xx_nflash bcm47xx_nflash;
-
- static struct resource bcm47xx_pflash_resource = {
- .name = "bcm47xx_pflash",
-@@ -73,6 +75,19 @@ static struct platform_device bcm47xx_sf
- .num_resources = 1,
- };
-
++
+static struct resource bcm47xx_nflash_resource = {
+ .name = "bcm47xx_nflash",
+ .start = 0,
@@ -145,10 +142,10 @@
+ .num_resources = 1,
+};
+
- static void bcm47xx_machine_restart(char *command)
+ static void __init bcm47xx_register_bcma(void)
{
- printk(KERN_ALERT "Please stand by while rebooting the system...\n");
-@@ -248,6 +263,9 @@ static void __init bcm47xx_register_bcma
+ int err;
+@@ -248,6 +264,9 @@ static void __init bcm47xx_register_bcma
if (bcm47xx_bus.bcma.bus.drv_cc.flash_type == BCMA_SFLASH)
bcm47xx_sflash_struct_bcma_init(&bcm47xx_sflash, &bcm47xx_bus.bcma.bus.drv_cc);
@@ -158,7 +155,7 @@
bcm47xx_fill_bcma_boardinfo(&bcm47xx_bus.bcma.bus.boardinfo, NULL);
}
-@@ -264,6 +282,9 @@ static int __init bcm47xx_register_flash
+@@ -264,6 +283,9 @@ static int __init bcm47xx_register_flash
case BCMA_SFLASH:
bcm47xx_sflash_dev.dev.platform_data = &bcm47xx_sflash;
return platform_device_register(&bcm47xx_sflash_dev);
@@ -178,23 +175,15 @@
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
-@@ -13,6 +14,7 @@
+@@ -12,6 +13,7 @@
+ #include <linux/ssb/ssb.h>
#include <linux/bcma/bcma.h>
- #include <linux/mtd/mtd.h>
#include <bcm47xx.h>
+#include <linux/mtd/nand.h>
struct bcm47xx_sflash {
enum bcm47xx_bus_type sflash_type;
-@@ -29,11 +31,24 @@ struct bcm47xx_sflash {
- u32 blocksize; /* Block size */
- u32 numblocks; /* Number of blocks */
- u32 size; /* Total size in bytes */
--
-- struct mtd_info *mtd;
- };
-
- void bcm47xx_sflash_struct_bcma_init(struct bcm47xx_sflash *sflash, struct bcma_drv_cc *bcc);
+@@ -34,3 +36,18 @@ void bcm47xx_sflash_struct_bcma_init(str
void bcm47xx_sflash_struct_ssb_init(struct bcm47xx_sflash *sflash, struct ssb_chipcommon *scc);
extern struct bcm47xx_sflash bcm47xx_sflash;
@@ -445,7 +434,7 @@
+config MTD_NAND_BCM47XX
+ tristate "bcm47xx nand flash support"
+ default y
-+ depends on BCM47XX
++ depends on BCM47XX && BCMA_NFLASH
+ select MTD_PARTITIONS
+ help
+ Support for bcm47xx nand flash
diff --git a/target/linux/brcm47xx/patches-3.3/114-MIPS-BCM47xx-Setup-and-register-serial-early.patch b/target/linux/brcm47xx/patches-3.3/114-MIPS-BCM47xx-Setup-and-register-serial-early.patch
index 3d1f5660f..901397237 100644
--- a/target/linux/brcm47xx/patches-3.3/114-MIPS-BCM47xx-Setup-and-register-serial-early.patch
+++ b/target/linux/brcm47xx/patches-3.3/114-MIPS-BCM47xx-Setup-and-register-serial-early.patch
@@ -24,7 +24,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
#include <asm/bootinfo.h>
#include <asm/reboot.h>
#include <asm/time.h>
-@@ -166,6 +168,31 @@ static int bcm47xx_get_invariants(struct
+@@ -152,6 +154,31 @@ static int bcm47xx_get_invariants(struct
return 0;
}
@@ -56,7 +56,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
static void __init bcm47xx_register_ssb(void)
{
int err;
-@@ -198,6 +225,10 @@ static void __init bcm47xx_register_ssb(
+@@ -184,6 +211,10 @@ static void __init bcm47xx_register_ssb(
memcpy(&mcore->serial_ports[1], &port, sizeof(port));
}
}
diff --git a/target/linux/brcm47xx/patches-3.3/400-arch-bcm47xx.patch b/target/linux/brcm47xx/patches-3.3/400-arch-bcm47xx.patch
index c3c7aea54..4018fd8d2 100644
--- a/target/linux/brcm47xx/patches-3.3/400-arch-bcm47xx.patch
+++ b/target/linux/brcm47xx/patches-3.3/400-arch-bcm47xx.patch
@@ -33,7 +33,7 @@
+EXPORT_SYMBOL(nvram_get);
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
-@@ -379,3 +379,20 @@ static int __init bcm47xx_register_flash
+@@ -380,3 +380,20 @@ static int __init bcm47xx_register_flash
return -1;
}
fs_initcall(bcm47xx_register_flash);
diff --git a/target/linux/brcm47xx/patches-3.3/502-bcm47xx-rewrite-gpio-handling.patch b/target/linux/brcm47xx/patches-3.3/502-bcm47xx-rewrite-gpio-handling.patch
index f38dcf6db..345aa415a 100644
--- a/target/linux/brcm47xx/patches-3.3/502-bcm47xx-rewrite-gpio-handling.patch
+++ b/target/linux/brcm47xx/patches-3.3/502-bcm47xx-rewrite-gpio-handling.patch
@@ -272,7 +272,7 @@
+EXPORT_SYMBOL(gpio_set_value);
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
-@@ -344,6 +344,8 @@ void __init plat_mem_setup(void)
+@@ -345,6 +345,8 @@ void __init plat_mem_setup(void)
_machine_restart = bcm47xx_machine_restart;
_machine_halt = bcm47xx_machine_halt;
pm_power_off = bcm47xx_machine_halt;
diff --git a/target/linux/brcm47xx/patches-3.3/980-wnr834b_no_cardbus_invariant.patch b/target/linux/brcm47xx/patches-3.3/980-wnr834b_no_cardbus_invariant.patch
index c6de865c7..7626c62ab 100644
--- a/target/linux/brcm47xx/patches-3.3/980-wnr834b_no_cardbus_invariant.patch
+++ b/target/linux/brcm47xx/patches-3.3/980-wnr834b_no_cardbus_invariant.patch
@@ -1,6 +1,6 @@
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
-@@ -165,6 +165,10 @@ static int bcm47xx_get_invariants(struct
+@@ -151,6 +151,10 @@ static int bcm47xx_get_invariants(struct
if (nvram_getenv("cardbus", buf, sizeof(buf)) >= 0)
iv->has_cardbus_slot = !!simple_strtoul(buf, NULL, 10);