diff options
| author | hauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-05-17 13:20:10 +0000 | 
|---|---|---|
| committer | hauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-05-17 13:20:10 +0000 | 
| commit | c343cde4928d4ba1ee1de82196b12b0ef97faa49 (patch) | |
| tree | 91ddf09ead9b2899c39a0cd83cf975ec44e5d201 /target/linux/brcm47xx/patches-3.2/024-brcm47xx-add-common-interface-for-sflash.patch | |
| parent | 3a72299e5b54000d2351a71ac5cd75425e7faffb (diff) | |
brcm47xx: remove support for kernel 3.2
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31771 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm47xx/patches-3.2/024-brcm47xx-add-common-interface-for-sflash.patch')
| -rw-r--r-- | target/linux/brcm47xx/patches-3.2/024-brcm47xx-add-common-interface-for-sflash.patch | 164 | 
1 files changed, 0 insertions, 164 deletions
diff --git a/target/linux/brcm47xx/patches-3.2/024-brcm47xx-add-common-interface-for-sflash.patch b/target/linux/brcm47xx/patches-3.2/024-brcm47xx-add-common-interface-for-sflash.patch deleted file mode 100644 index 1cf4ee641..000000000 --- a/target/linux/brcm47xx/patches-3.2/024-brcm47xx-add-common-interface-for-sflash.patch +++ /dev/null @@ -1,164 +0,0 @@ ---- a/arch/mips/bcm47xx/Makefile -+++ b/arch/mips/bcm47xx/Makefile -@@ -3,5 +3,5 @@ - # under Linux. - # -  --obj-y 				+= gpio.o irq.o nvram.o prom.o serial.o setup.o time.o -+obj-y 				+= gpio.o irq.o nvram.o prom.o serial.o setup.o time.o bus.o - obj-$(CONFIG_BCM47XX_SSB)	+= wgt634u.o ---- /dev/null -+++ b/arch/mips/bcm47xx/bus.c -@@ -0,0 +1,82 @@ -+/* -+ * BCM947xx nvram variable access -+ * -+ * Copyright (C) 2011 Hauke Mehrtens <hauke@hauke-m.de> -+ * -+ * 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 -+ * Free Software Foundation;  either version 2 of the  License, or (at your -+ * option) any later version. -+ */ -+ -+#include <bus.h> -+ -+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); -+} -+ -+static int bcm47xx_sflash_bcma_poll(struct bcm47xx_sflash *dev, u32 offset) -+{ -+	return bcma_sflash_poll(dev->bcc, offset); -+} -+ -+static int bcm47xx_sflash_bcma_write(struct bcm47xx_sflash *dev, u32 offset, u32 len, const u8 *buf) -+{ -+	return bcma_sflash_write(dev->bcc, offset, len, buf); -+} -+ -+static int bcm47xx_sflash_bcma_erase(struct bcm47xx_sflash *dev, u32 offset) -+{ -+	return bcma_sflash_erase(dev->bcc, offset); -+} -+ -+void bcm47xx_sflash_struct_bcma_init(struct bcm47xx_sflash *sflash, struct bcma_drv_cc *bcc) -+{ -+	sflash->sflash_type = BCM47XX_BUS_TYPE_BCMA; -+	sflash->bcc = bcc; -+ -+	sflash->read = bcm47xx_sflash_bcma_read; -+	sflash->poll = bcm47xx_sflash_bcma_poll; -+	sflash->write = bcm47xx_sflash_bcma_write; -+	sflash->erase = bcm47xx_sflash_bcma_erase; -+ -+	sflash->blocksize = bcc->sflash.blocksize; -+	sflash->numblocks = bcc->sflash.numblocks; -+	sflash->size = bcc->sflash.size; -+} -+ -+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); -+} -+ -+static int bcm47xx_sflash_ssb_poll(struct bcm47xx_sflash *dev, u32 offset) -+{ -+	return ssb_sflash_poll(dev->scc, offset); -+} -+ -+static int bcm47xx_sflash_ssb_write(struct bcm47xx_sflash *dev, u32 offset, u32 len, const u8 *buf) -+{ -+	return ssb_sflash_write(dev->scc, offset, len, buf); -+} -+ -+static int bcm47xx_sflash_ssb_erase(struct bcm47xx_sflash *dev, u32 offset) -+{ -+	return ssb_sflash_erase(dev->scc, offset); -+} -+ -+void bcm47xx_sflash_struct_ssb_init(struct bcm47xx_sflash *sflash, struct ssb_chipcommon *scc) -+{ -+	sflash->sflash_type = BCM47XX_BUS_TYPE_SSB; -+	sflash->scc = scc; -+ -+	sflash->read = bcm47xx_sflash_ssb_read; -+	sflash->poll = bcm47xx_sflash_ssb_poll; -+	sflash->write = bcm47xx_sflash_ssb_write; -+	sflash->erase = bcm47xx_sflash_ssb_erase; -+ -+	sflash->blocksize = scc->sflash.blocksize; -+	sflash->numblocks = scc->sflash.numblocks; -+	sflash->size = scc->sflash.size; -+} ---- a/arch/mips/bcm47xx/setup.c -+++ b/arch/mips/bcm47xx/setup.c -@@ -43,6 +43,8 @@ EXPORT_SYMBOL(bcm47xx_bus); - enum bcm47xx_bus_type bcm47xx_bus_type; - EXPORT_SYMBOL(bcm47xx_bus_type); -  -+struct bcm47xx_sflash bcm47xx_sflash; -+ - static void bcm47xx_machine_restart(char *command) - { - 	printk(KERN_ALERT "Please stand by while rebooting the system...\n"); -@@ -291,6 +293,9 @@ static void __init bcm47xx_register_ssb( - 	if (err) - 		panic("Failed to initialize SSB bus (err %d)\n", err); -  -+	if (bcm47xx_bus.ssb.chipco.flash_type == SSB_SFLASH) -+		bcm47xx_sflash_struct_ssb_init(&bcm47xx_sflash, &bcm47xx_bus.ssb.chipco); -+ - 	mcore = &bcm47xx_bus.ssb.mipscore; - 	if (nvram_getenv("kernel_args", buf, sizeof(buf)) >= 0) { - 		if (strstr(buf, "console=ttyS1")) { -@@ -315,6 +320,9 @@ static void __init bcm47xx_register_bcma - 	err = bcma_host_soc_register(&bcm47xx_bus.bcma); - 	if (err) - 		panic("Failed to initialize BCMA bus (err %d)\n", err); -+ -+	if (bcm47xx_bus.bcma.bus.drv_cc.flash_type == BCMA_SFLASH) -+		bcm47xx_sflash_struct_bcma_init(&bcm47xx_sflash, &bcm47xx_bus.bcma.bus.drv_cc); - } - #endif -  ---- /dev/null -+++ b/arch/mips/include/asm/mach-bcm47xx/bus.h -@@ -0,0 +1,36 @@ -+/* -+ * BCM947xx nvram variable access -+ * -+ * Copyright (C) 2011 Hauke Mehrtens <hauke@hauke-m.de> -+ * -+ * 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 -+ * Free Software Foundation;  either version 2 of the  License, or (at your -+ * option) any later version. -+ */ -+ -+#include <linux/ssb/ssb.h> -+#include <linux/bcma/bcma.h> -+#include <bcm47xx.h> -+ -+struct bcm47xx_sflash { -+	enum bcm47xx_bus_type sflash_type; -+	union { -+		struct ssb_chipcommon *scc; -+		struct bcma_drv_cc *bcc; -+	}; -+ -+	int (*read)(struct bcm47xx_sflash *dev, u32 offset, u32 len, u8 *buf); -+	int (*poll)(struct bcm47xx_sflash *dev, u32 offset); -+	int (*write)(struct bcm47xx_sflash *dev, u32 offset, u32 len, const u8 *buf); -+	int (*erase)(struct bcm47xx_sflash *dev, u32 offset); -+ -+	u32 blocksize;		/* Block size */ -+	u32 numblocks;		/* Number of blocks */ -+	u32 size;		/* Total size in bytes */ -+}; -+ -+void bcm47xx_sflash_struct_bcma_init(struct bcm47xx_sflash *sflash, struct bcma_drv_cc *bcc); -+void bcm47xx_sflash_struct_ssb_init(struct bcm47xx_sflash *sflash, struct ssb_chipcommon *scc); -+ -+extern struct bcm47xx_sflash bcm47xx_sflash;  | 
