Hi,
      I am trying to boot Linux kernel version 4.4.16 on custom ARM based development platform.
I want to separate rootfs and kernel Image so that the size of my uImage is small. I followed the following steps.

1. Partitioned the SD card. It has 2 partition. First partition is formatted as vfat partition and    has uImage (without rootfs). Second partition is formatted as ext3 and has the rootfs.
2. I then changed the U-Boot (version 2011.05) bootargs
   Kernel command line: console=ttyS0,115200 noinitrd rw rootfstype=ext3 root=/dev/mmcblk0p2          rootwait mem=512M coherent_pool=4M no_console_suspend resume=/dev/mtdblock3.

However, while booting I get the following error 

Failed to create /dev/root: -2
VFS: Cannot open root device "mmcblk0p2" or unknown-block(179,2): error -2

I have also attached log for reference. 
Can anyone please point out what I may be missing?

Regards,
Amit.