Hi sanshanzhang ,
I see that the init=/init is mentioned in the boot arguments and is pointing to the correct location. Following is the boot arguments used by me.
setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=hdmi,1920x1080M@60 video=mxcfb1:off video=mxcfb2:off video=mxcfb3:off fbmem=10M vmalloc=100M androidboot.console=ttymxc0 consoleblank=0 androidboot.hardware=freescale cma=384M
Our board boots successfully (no init error) when I give the following boot arguments. i.e. changed the memory to 512MB instead of 1GB.
setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=hdmi,1920x1080M@60 video=mxcfb1:off video=mxcfb2:off video=mxcfb3:off fbmem=10M vmalloc=100M androidboot.console=ttymxc0 consoleblank=0 androidboot.hardware=freescale cma=200M mem=512M
I am suspecting the DRAM initialization, eventhough it shows 1GB of memory I doubt that it actually uses it. As mentioned in previous comment, we are using Freescale's LPDDR2 script aid to generate values for our DCD table. (Kindly refer my response to CarlosCasillas above )
I hope someone from Freescale will help us resolve our issue.