Apollo Lake CRB Boards¶
Intel Atom® Processor E3900 is formally known as Apollo Lake platform.
Board ID Assignments¶
SBL supports the following board variations based on Apollo Lake platform. Each board is assigned a unique platform ID by reading a set of GPIO pins (25, 26 and 30).
Board Platform ID Oxbox Hill 6 Leaf Hill 7 Juniper Hill 8
See Dynamic Platform ID Detection for more details.
To customize board configurations in
*.dlt file, make sure to specify
PlatformId to the corresponding values for the board.
See Configuration Editor for more details.
For Apollo Lake platform, LPSS UART Port 2 is the debug UART configured in SBL.
python BuildLoader.py build apl
The output images are generated under
See Getting Started With QEMU on how to building SBL.
- Download Apollo Lake platform firmware image.
This image contains additional firmware ingredients that are required to boot on Apollo Lake platform.
StitchLoader.py currently only supports stitching with boot guard feature disabled.
Stitch SBL images into downloaded BIOS image:
python Platform/ApollolakeBoardPkg/Script/StitchLoader.py -i <BIOS_IMAGE> -s Outputs/apl/Stitch_Components.zip -o <SBL_IFWI_IMAGE>
For example, stitching SBL IFWI image
sbl_lfh_ifwi.binfrom Apollo Lake platform firmware images downloaded:python Platform/ApollolakeBoardPkg/Script/StitchLoader.py -i LEAFHILD.X64.0070.R01.1805070352.bin -s Outputs/apl/Stitch_Components.zip -o sbl_lfh_ifwi.bin
See Stitch Tool on how to stitching the flashing IFWI image with SBL.
Flash the generated
sbl_lfh_ifwi.bin to the target board using DediProg SF100 or SF600 programmer.
Booting Yocto Linux¶
You may need to change boot options to boot from USB. See Change Boot Options.
Download Apollo Lake platform Yocto image.
Create bootable USB key
vmlinuz.efito root directory on USB
config.cfgin root directory
Copy and save the following into
config.cfgon USB key:file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash nomodeset
- Boot from USB key.