![NXP Semiconductors ASUG User Manual Download Page 26](http://html1.mh-extra.com/html/nxp-semiconductors/asug/asug_user-manual_1721768026.webp)
8.8 How to change SCFW
SCFW is a binary stored in
${MY_ANDROID}/vendor/nxp/fsl-proprietary/uboot-firmware
, built into bootloader. To change
SCFW, you need SCFW porting kit and specified board configuration file. SCFW porting kit contains prebuilt binaries and libraries.
Specified board configuration file is stored in SCFW porting kit, for example (i.MX 8QuadXPlus):
imx-scfw-porting-kit/src/
scfw_export_mx8qx_b0/platform/board/mx8qx_mek/board.c
.
There is another board configuration file stored in
${MY_ANDROID}/vendor/nxp/fsl-proprietary/uboot-firmware/imx8q/
board-imx8qxp.c
.
You can copy
board.c
from
vendor/nxp/fsl-propeirtary
to the SCFW porting kit. Modify it and then build the SCFW.
The following are steps to build Android SCFW (taking i.MX 8QuadXPlus as example):
1. Download the GCC tool from:
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-
, and choose the "6-2017-q2-update" version, as this release is validated with it.
2. Unzip the GCC tool to /opt/scfw_gcc.
3. Export
TOOLS="/opt/scfw-gcc"
.
4. Download SCFW porting kit to
${MY_ANDROID}
as
imx-scfw-porting-kit.bin
. You can download the corresponding
.
5. Unzip the porting kit and SCFW for i.MX 8QuadXPlus.
./imx-scfw-porting-kit.bin
cd imx-scfw-porting-kit/src
tar xf scfw_export_mx8qx_b0.tar.gz
6. Copy THE board configuration file from
${MY_ANDROID}/vendor/nxp/fsl-proprietary/uboot-firmware/imx8q/
board-imx8qxp.c
to porting kit.
cp ${MY_ANDROID}/vendor/nxp/fsl-proprietary/uboot-firmware/imx8q/board-imx8qxp.c
scfw_export_mx8qx_b0/platform/board/mx8qx_mek/board.c
7. Build SCFW.
cd ${MY_ANDROID}/imx-scfw-porting-kit/src/scfw_export_mx8qx_b0
make clean
make qx R=B0 B=mek
8. Copy the SCFW binary to the uboot-firmware folder.
cp build_mx8qx_b0/scfw_tcm.bin ${MY_ANDROID}/vendor/nxp/fsl-proprietary/uboot-firmware/imx8q/
mx8qx-scfw-tcm.bin
9. Build the bootloader.
cd ${MY_ANDROID}
make bootloader
8.9 Trusty OS build and configuration
8.9.1 How to fetch and build the Trusty OS
i.MX Android Automotive Pie uses the Trusty OS firmware as TEE that supports security features. Users can modify the Trusty
OS code to support different configurations and features.
In this release, the i.MX Trusty OS is based on AOSP Trusty OS. NXP adds the i.MX 8M Nano EVK board and i.MX 8QuadXPlus
MEK board support on it.
NXP Semiconductors
Customized Configuration
Android
™
User's Guide, Rev. P9.0.0_2.3.2, 6 March 2020
User's Guide
26 / 31