X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/e6eda13dd57a5e7b685639bad110f00987f05dd9..547672a7cbccb31081ec14280f58d5c6611e913f:/target/linux/adm5120-2.6/files/drivers/mtd/maps/adm5120_mtd.c diff --git a/target/linux/adm5120-2.6/files/drivers/mtd/maps/adm5120_mtd.c b/target/linux/adm5120-2.6/files/drivers/mtd/maps/adm5120_mtd.c index a1737d702..ba36298b3 100644 --- a/target/linux/adm5120-2.6/files/drivers/mtd/maps/adm5120_mtd.c +++ b/target/linux/adm5120-2.6/files/drivers/mtd/maps/adm5120_mtd.c @@ -43,6 +43,7 @@ #include #include #include +#include #ifdef CONFIG_MTD_PARTITIONS #include #endif @@ -406,8 +407,12 @@ int __init init_adm5120_map(void) struct mtd_partition *parts; int i, parsed_nr_parts = 0; #endif - printk("adm5120 : flash init : 0x%08x 0x%08x\n", WINDOW_ADDR, WINDOW_SIZE); - adm5120_map.virt = ioremap_nocache(WINDOW_ADDR, WINDOW_SIZE); + + if (adm5120_nand_boot) + return -ENODEV; + + printk("adm5120 : flash init : 0x%08x 0x%08x\n", WINDOW_ADDR, adm5120_board.flash0_size); + adm5120_map.virt = ioremap_nocache(WINDOW_ADDR, adm5120_board.flash0_size); if (!adm5120_map.virt) { printk("Failed to ioremap\n"); @@ -432,13 +437,13 @@ int __init init_adm5120_map(void) #ifdef CONFIG_MTD_PARTITIONS - if (adm5120_boot_loader == BOOT_LOADER_CFE) + if (adm5120_boot_loader == BOOT_LOADER_CFE || adm5120_boot_loader == BOOT_LOADER_UNKNOWN) { printk(KERN_NOTICE "adm5120 : using CFE flash mapping\n"); parts = init_mtd_partitions(adm5120_mtd, size); for (i = 0; parts[i].name; i++); - ret = add_mtd_partitions(adm5120_mtd, parts, i); + ret = add_mtd_partitions(adm5120_mtd, parts, i); if (ret) { printk(KERN_ERR "Flash: add_mtd_partitions failed\n");