Hi Colin, I had a similar problem. You're passing root=/dev/mtdblock1 which has a major value of 31 and a minor value of 1 but the by the looks of the error message the kernel thinks you want to boot from a device with a major number of 2 and a minor number of zero. You could try passing an explicitly defined root=1F01 instead (major 31, minor 1). This works for me. I have no idea why the kernel doesn't recognize the text based declaration and haven't had time to investigate. Maybe someone else has a better idea than I do. Hope that helps, Charles colin wrote: > Hi all, > I had booted up Linux with nfs root, and write a JFFS2 image to /dev/mtd1. > Here is my cmdline for Kernel: > go 0x80305018 root=/dev/nfs rw nfsroot=172.19.26.145:/nfs/rootfs > ip=172.19.27.193::172.19.27.254:255.255.254.0::: > mtdparts=maltaflash:1536k(ldr),2048k(root) > > After writing the JFFS2 image to /dev/mtd1, I can mount /dev/mtdblcok1 to > some directory. > mount -t jffs2 /dev/mtdblock1 /mnt > > Next, I hope to boot up Linux with JFFS2 root, and try to give this cmdline > to Kernel: > go 0x80305018 rootfstype=jffs2 > mtdparts=maltaflash:1536k(ldr),2048k(root) root=/dev/mtdblock1 > > and the Kernel would complain me about no root: > VFS: Unable to mount root fs via NFS, trying floppy. > Kernel panic: VFS: Unable to mount root fs on unknown-block(2,0) > > I traced the code and found that when passing "/dev/mtdblock1" to > name_to_dev_t() in do_mounts.c, it would return 0 at every try_name(), > which will fail at open() with the path "/sys/block/%s/dev". > > What's the problem? Could anyone tell me? > > Thanks and regards, > Colin > > > > > >