Hi
 
> Set the switches to boot from SD on the mx25 device and power on. It
> successfully loads barebox and I can mount the fat partition (of course the
> other partition is unmountable, because there is no ext2/3 support in
> barebox). Booting from my environment currently fails, but I reckon it has
> to do with my configuration settings. Here is where it gets so far:
> .../...
> [  103.029081] VFS: Unable to mount root fs via NFS, trying floppy.
> [  103.036763] VFS: Cannot open root device "nfs" or unknown-block(2,0)
> [  103.043157] Please append a correct "root=" boot option; here are the
> available partitions:
> [  103.052007] b300         1955840 mmcblk0  driver: mmcblk
> [  103.057512]   b301            1024 mmcblk0p1
> 00000000-0000-0000-0000-000000000mmcblk0p1
> [  103.065670]   b302          524288 mmcblk0p2
> 00000000-0000-0000-0000-000000000mmcblk0p2
> [  103.073744]   b303         1429504 mmcblk0p3
> 00000000-0000-0000-0000-000000000mmcblk0p3
> .../...
> Thank you very much for your pointers.
>
add to your bootargs root=/dev/mmcblk0p3 rootfstype=ext3 or something
like this


I haven't found a combination of root/rootfstype yet that permits me to boot from barebox either from NFS, TFTP, MMC/SD or NOR yet. No matter what I try, the kernel spits back at me.

Also I have the problem that my NOR is only detected when using barebox as a second stage boot loader from uboot. If booting from SD into barebox, the NOR is not detected. I have added the following changes to figure out what's going on:

diff --git a/drivers/nor/cfi_flash.c b/drivers/nor/cfi_flash.c
index 654e647..7884ca4 100644
--- a/drivers/nor/cfi_flash.c
+++ b/drivers/nor/cfi_flash.c
@@ -990,13 +990,17 @@ static int cfi_probe (struct device_d *dev)
        info->size = flash_get_size(info);
 
        if (info->flash_id == FLASH_UNKNOWN) {
-               printf ("## Unknown FLASH on Bank at 0x%08x - Size = 0x%08lx = %ld MB\n",
+               printf("## Unknown FLASH on Bank at 0x%08x - Size = 0x%08lx = %ld MB\n",
                        dev->resource[0].start, info->size, info->size << 20);
+               printf("cfi flash (id=%08lX vend=%06X manu=%06X devid=%06X extid=%06X)\n",
+                       info->flash_id, info->vendor, info->manufacturer_id, info->device_id,
+                       info->device_id2);
                return -ENODEV;
        }
 
-       dev_info(dev, "found cfi flash at %p, size %ld\n",
-                       info->base, info->size);
+       dev_info(dev, "cfi flash (id=%08lX vend=%06X manu=%06X devid=%06X extid=%06X) at %p, size %ldMB
+                       info->flash_id, info->vendor, info->manufacturer_id, info->device_id,
+                       info->device_id2, info->base, info->size/1024/1024);
 
        info->cdev.name = asprintf("nor%d", dev->id);
        info->cdev.size = info->size;

Loading barebox as second stage bootloader gives me following output:

[...]
cfi_flash@cfi_flash0: cfi flash (id=01000000 vend=000002 manu=000001 devid=00007E extid=002301) at a0000000, size 64MB
[...]

Loading barebox as a first stage bootloader directly from SD card results in the following:

[...]
## Unknown FLASH on Bank at 0xa0000000 - Size = 0x00000000 = 0 MB
cfi flash (id=0000FFFF vend=000000 manu=000000 devid=000000 extid=000000)
[...]

What's going on here?

Best regards
Roberto