diff options
| -rw-r--r-- | target/linux/brcm47xx-2.6/files/drivers/mtd/maps/bcm47xx-flash.c | 12 | 
1 files changed, 12 insertions, 0 deletions
| diff --git a/target/linux/brcm47xx-2.6/files/drivers/mtd/maps/bcm47xx-flash.c b/target/linux/brcm47xx-2.6/files/drivers/mtd/maps/bcm47xx-flash.c index 50fff896f..bc8d88737 100644 --- a/target/linux/brcm47xx-2.6/files/drivers/mtd/maps/bcm47xx-flash.c +++ b/target/linux/brcm47xx-2.6/files/drivers/mtd/maps/bcm47xx-flash.c @@ -49,7 +49,9 @@  #include <linux/squashfs_fs.h>  #include <linux/jffs2.h>  #include <linux/crc32.h> +#ifdef CONFIG_SSB  #include <linux/ssb/ssb.h> +#endif  #include <asm/io.h> @@ -74,7 +76,9 @@ struct trx_header {  #define WINDOW_SIZE 0x400000  #define BUSWIDTH 2 +#ifdef CONFIG_SSB  extern struct ssb_bus ssb; +#endif  static struct mtd_info *bcm947xx_mtd;  static struct map_info bcm947xx_map = { @@ -385,13 +389,17 @@ init_mtd_partitions(struct mtd_info *mtd, size_t size)  int __init init_bcm947xx_map(void)  { +#ifdef CONFIG_SSB  	struct ssb_mipscore *mcore = &ssb.mipscore; +#endif  	size_t size;  	int ret = 0;  #ifdef CONFIG_MTD_PARTITIONS  	struct mtd_partition *parts;  	int i;  #endif + +#ifdef CONFIG_SSB  	u32 window = mcore->flash_window;  	u32 window_size = mcore->flash_window_size; @@ -399,6 +407,10 @@ int __init init_bcm947xx_map(void)  	bcm947xx_map.phys = window;  	bcm947xx_map.size = window_size;  	bcm947xx_map.virt = ioremap_nocache(window, window_size); +#else +	printk("flash init: 0x%08x 0x%08x\n", WINDOW_ADDR, WINDOW_SIZE); +	bcm947xx_map.virt = ioremap_nocache(WINDOW_ADDR, WINDOW_SIZE); +#endif  	if (!bcm947xx_map.virt) {  		printk("Failed to ioremap\n"); | 
