SPL booting

I have an Apalis SOM and Apalis Evaluation Board.
I made an update sdcard from Apalis-iMX6_LXDE-Image_2.8.6.

$ sudo mount /dev/sdb1 /mnt/
$ sudo ./update.sh -o /mnt/ 
$ sudo umount /mnt

And I updated the board using u-boot scrpit.

Apalis iMX6 # run setupdate
Apalis iMX6 # run update

I think this is normal boot, not spl boot.
Next, What should I do for SPL?

--- The boot logs are shown below.
U-Boot 2016.11-2.8.6+g83a53c1c0c (Apr 01 2019 - 14:09:00 +0000)

CPU:   Freescale i.MX6Q rev1.5 at 792 MHz
Reset cause: POR
I2C:   ready
DRAM:  1 GiB
PMIC:  device id: 0x10, revision id: 0x21, programmed
auto-detected panel vga-rgb
Display: vga-rgb (640x480)
In:    serial
Out:   serial
Err:   serial
Model: Toradex Apalis iMX6 Quad 1GB V1.1B, Serial# 05198549
Net:   using PHY at 7
Hit any key to stop autoboot:  0
Booting from MMC/SD card in 8-bit slot...
reading imx6q-apalis-eval.dtb
50217 bytes read in 19 ms (2.5 MiB/s)
reading zImage
4832152 bytes read in 245 ms (18.8 MiB/s)
## Flattened Device Tree blob at 12100000
   Booting using the fdt blob at 0x12100000
   Loading Device Tree to 2fff0000, end 2ffff428 ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.1.41 (blee@tm-server) (gcc version 6.4.0 (Buildroot 2017.11.2-00024-g0edec09) ) #1 SMP Tue Jul 30 09:25:11 KST 2019
[    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache

I think this is normal boot, not spl boot. Next, What should I do for SPL?

What exactly do YOU mean by normal boot resp. spl boot? What exactly is it that you are trying to achieve?

SPL just means secondary program loader while IPL means initial program loader and is usually synonymous to the SoC’s boot ROM. And TPL meaning tertiary program loader usually just denoting the regular U-Boot boot loader.

In the Apalis (and Colibri for that matter) iMX6 case the system always boots via IPL the SPL and then the TPL being the regular U-Boot. The SPL is actually mainly used for the initialisation of the DDR RAM controller which allows more flexibility in doing so plus it also allows further calibration to be done upon each and every boot. So while you may not see much of the SPL it is there and goes through it upon each and every boot.

Thank you for answer.

I want to apply Falcon Mode.

I have experience applying this to freescale sabresd imx6.

The files that make up the system have the same form.

So I thought I could apply falcon mode.
I want to shorten the boot time by reading the kernel directly from the SPL.


Do you have a guide to booting Linux in u-Boot Falcon mode?

Unfortunately we don’t have any guide for this, but you can read this Documentation.

Best regards,