I am having trouble getting a Linux Kernel to boot from the QSPI memory with an initramfs built in. I can compile and run the baseline (Linux 4.1.22-ltsi) using a standard rootfs located on the QSPI memory. I then enabled the options to get an initramfs:
After only changing only that option I am hung at “Starting Kernel…”. I’ve tried the same image but booting from a SDCARD and it worked fine.
Is anybody aware of any other changes or restrictions that I might be running into? The bundled size of the Kernel and filesystem is ~8 MB, uncompressed it should be <15 MB. I am using the default QSPI partitioning that was outlined here: https://rocketboards.org/foswiki/Documentation/A10GsrdQspiBootLTS with one exception - During my first attempts to boot I realized that the size of the Kernel was larger than the originally allocated 6MB. I moved my firmware images from 0x72_0000 to 0x17D_0000 and this allowed the Kernel to fit without over writing my firmware image.
P.S. I had a similar post a while back when I was trying to configure the initramfs booting (Booting from initramfs) but that was strictly for the SDCARD and it appears I have run into a new roadblock using QSPI memory to boot from.
Thank you for any suggestions!