I'm working on imx6s sabre sdp and trying to boot with ramdisk root file system, but it's not working.
With i.mx51, ramdisk root file system boot was successful with almost same configuarion.
Could somebody tell me what I missed?
Here is what have i done.
1. kernel config.
at kernel menuconfig, i've selected following configuration
General setup > initial ram filesystem and ram disk support
--> CONFIG_BLK_DEV_INITRD=y, CONFIG_RD_GZIP=y
Device drivers > block devices > ram block device support
--> CONFIG_BLK_DEV_RAM=y, CONFIG_BLK_DEV_RAM_COUNT=16, CONFIG_BLK_DEV_RAM_SIZE=4096
2. ramdisk creation
I made ramdisk image with rootfs created by ltib
dd if=/dev/zero of=ramdisk bs=1k count=131072 ==> 128MB ramdisk
mkfs.ext2 ramdisk
mount -t ext2 -o loop ramdisk /mnt/rootfs
cp -a ./ltib/rootfs/* /mnt/rootfs
umount dir_ramdisk
gzip ramdisk ==> which create ramdisk.gz
3. ramdisk deployment
I placed u-boot, uImage, ramdisk.gz on SD slot 3 SD card,
0~1M : u-boot area
1M~5M : kernel area
5M~55M : ramdisk.gz area
with the following commend on linux host computer. (sdcard is recognized as /dev/sdc in my linux host)
dd if=u-boot of=/dev/sdc bs=512 seek=2 skip=2 conv=fsync
dd if=uImage of=/dev/sdc bs=512 seek=2048 conv=fsync
dd if=ramdisk.gz of=/dev/sdc bs=512 seek=10240 conv=fsync
4. kernel cmdline configuration at u-boot command
the following is what I entered at u-boot command line.
set bootargs console=ttymxc0,115200 nosmp video=mxcfb0:dev=ldb,LDB-XGA,if=RGB666 ldb=sin1 ip=10.175.93.16 initrd=0x10c00000,50M root=/dev/ram0 ramdisk_size=131072
mmc dev 2
mmc read 0x10800000 0x800 0x2000 ==> read 4Mbyte from 1M offset. kernel
mmc read 0x10c00000 0x2800 0x19000 ==> read 50Mbyte from 5M offset, ramdisk.gz
bootm
and then, kernel booting halted with the following message
mmcblk1: mmc2:b02c SD04G 3.69 GiB
mmcblk1: p1
PHY: 1:01 - Link is Up - 100/Full
IP-Config: Guessing netmask 255.0.0.0
IP-Config: Complete:
device=eth0, addr=10.175.93.16, mask=255.0.0.0, gw=255.255.255.255,
host=10.175.93.16, domain=, nis-domain=(none),
bootserver=255.255.255.255, rootserver=255.255.255.255, rootpath=
RAMDISK: Couldn't find valid RAM disk image starting at 0.
List of all partitions:
1f00 1024 mtdblock0 (driver?)
1f01 3072 mtdblock1 (driver?)
b300 7757824 mmcblk0 driver: mmcblk
b310 2048 mmcblk0boot1 (driver?)
b308 2048 mmcblk0boot0 (driver?)
b318 3872256 mmcblk1 driver: mmcblk
b319 3814912 mmcblk1p1 00000000-0000-0000-0000-000000000000
No filesystem could mount root, tried: ext3 ext2 ext4 cramfs vfat msdos
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)
[<8004a834>] (unwind_backtrace+0x0/0xf8) from [<8050c514>] (panic+0x74/0x18c)
[<8050c514>] (panic+0x74/0x18c) from [<80008dac>] (mount_block_root+0x1e0/0x224)
[<80008dac>] (mount_block_root+0x1e0/0x224) from [<80008fc4>] (mount_root+0xe8/0x108)
[<80008fc4>] (mount_root+0xe8/0x108) from [<80009148>] (prepare_namespace+0x164/0x1bc)
[<80009148>] (prepare_namespace+0x164/0x1bc) from [<80008a04>] (kernel_init+0x108/0x13c)
[<80008a04>] (kernel_init+0x108/0x13c) from [<80044aa4>] (kernel_thread_exit+0x0/0x8)