#include <linux/wait.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/map.h>
+#include <linux/sched.h>
#ifdef CONFIG_MTD_PARTITIONS
#include <linux/mtd/partitions.h>
#endif
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");
#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");