Hi, I have the basic MTD and Yaffs driver working: I can mount mtd yaffs partitions, read write data to the partitions OK. But when I try to use a yaffs partition as the rootfs I get a: Kernel panic: No init found. The way I am "uploading" the data is that I first boot using an initrd image. Then I mount the yaffs partition and copy all the contents of the root fs to the yaffs partition (create the dev nodes, symlinks, etc..). Then I reboot and instruct the kernel to use yaffs as the root partition. I've also tried passing the init=/sbin/init , init=/bin/sh, ... Any suggestions on what could be the issue? Marco Linux version 2.6.4-cadenux (mcaamano@warlock) (gcc version 3.2.3) #32 Mon Mar 13 17:37:49 CST 2006 CPU: ARM926EJ-Sid(wb) [41069263] revision 3 (ARMv5TEJ) CPU: D VIPT write-back cache CPU: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets CPU: D cache: 8192 bytes, associativity 4, 32 byte lines, 64 sets Machine: DM320 EVM Memory policy: ECC disabled, Data cache writeback On node 0 totalpages: 14336 DMA zone: 14336 pages, LIFO batch:3 Normal zone: 0 pages, LIFO batch:1 HighMem zone: 0 pages, LIFO batch:1 Built 1 zonelists Kernel command line: root=/dev/mtdblock3 rootfstype=yaffs PID hash table entries: 256 (order 8: 2048 bytes) Memory: 56MB = 56MB total Memory: 55044KB available (1356K code, 184K data, 60K init) Calibrating delay loop... 87.65 BogoMIPS Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) Mount-cache hash table entries: 512 (order: 0, 4096 bytes) CPU: Testing write buffer coherency: ok POSIX conformance testing by UNIFIX NET: Registered protocol family 16 Informing kernel about built-in devices ttyS0 at MMIO 0x30300 (irq = 12) is a DM320 ttyS1 at MMIO 0x30380 (irq = 13) is a DM320 RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize loop: loaded (max 8 devices) eth0: cs8900 rev J found at 0xd8000300 cs89x0: Extended EEPROM checksum bad and no Cirrus EEPROM, relying on command line cs89x0 media RJ-45, IRQ 27, programmed I/O, MAC 02:e0:de:ad:be:f1 Using noop io scheduler NAND device: Manufacturer ID: 0xec, Chip ID: 0x73 (Samsung NAND 16MiB 3,3V 8-bit) Scanning device for bad blocks Using static partition definition MTD snapshot-20060224 [http://linux-mtd.infradead.org] Creating 5 MTD partitions on "NAND 16MiB 3,3V 8-bit": 0x0001c000-0x0003c000 : "Bootloader" 0x0003c000-0x0004c000 : "Bootloader Parameters" 0x0004c000-0x0024c000 : "Kernel Image" 0x0024c000-0x00a4c000 : "Primary File System" 0x00a4c000-0x01000000 : "Secondary File System" NET: Registered protocol family 2 IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 8192) NET: Registered protocol family 1 NET: Registered protocol family 17 yaffs: Attempting MTD mount on 31.3 VFS: Mounted root (yaffs filesystem) readonly. Freeing init memory: 60K Kernel panic: No init found. Try passing init= option to kernel.