Mar 13, 2020: imx_builder_03122020.tgz --- change the i.MX8MN configuration.
Dec 11, 2019: imx_builder_12112019.tgz --- add support L4.19.35_1.1.0
August 28, 2019: imx_builder_08282019.tgz --- add i.MX8MM
July 03, 2019: imx_builder_07032019.tgz --- add i.MX8QM: build_i.MX8
Feb 26, 2020: imx_builder_02262020 --- add i.MX8MN, add spl m4 for build_i.MX8, build_i.MX8X with L4.14.98_2.0.0_ga, L4.14.98_2.2.0, L4.19.35_1.1.0
imx_builder_02262020:
imx_builder
|-- atf -> bsp/imx-atf
|-- bsp -> REL/rel_imx_4.19.35_1.1.0
|-- build -> build_i.MX8X/L4.19.35_1.1.0
|-- build_i.MX6
| |-- L3.0.x
| |-- L3.1x.xx
| |-- L4.14.xx
| |-- L4.19.xx
| `-- L4.1.xx
|-- build_i.MX8
| |-- before_L4.14.98_2.0.0_ga
| |-- L4.14.98_2.0.0_ga
| |-- L4.14.98_2.2.0
| `-- L4.19.35_1.1.0
|-- build_i.MX8M
| |-- before.L4.19.35
| `-- L4.19.35
|-- build_i.MX8MM
| |-- before.L4.19.35
| `-- L4.19.35
|-- build_i.MX8MN
| `-- L4.19.35
|-- build_i.MX8X
| |-- before_L4.14.98_2.0.0_ga
| |-- L4.14.98_2.0.0_ga
| |-- L4.14.98_2.2.0
| `-- L4.19.35_1.1.0
|-- dts -> linux/arch/arm/boot/dts
|-- dts64 -> linux/arch/arm64/boot/dts/freescale
|-- dts_uboot -> u-boot/arch/arm/dts
|-- imx-mkimage -> bsp/imx-mkimage
|-- linux -> bsp/linux-imx
|-- m4_img
| |-- m4_1_image.bin -> rpmsg_lite_str_echo_rtos_imxcm4.bin
| |-- m4_image.bin -> power_mode_switch.bin
| `-- readme.txt
|-- Makefile -> build/Makefile
|-- Others
| |-- clk_module
| |-- cryptodev-linux-1.8
| |-- helloworld_module
| |-- key_blob_module
| `-- spi
|-- out
|-- README -> build/README
|-- REL
|-- scfw -> bsp/scfw
|-- SETTINGS.MK -> build/SETTINGS.MK
|-- toolchains
| `-- scfw
|-- u-boot -> bsp/uboot-imx
`-- VERSION.MK
imx_builder is a set of Makefile for build u-boot, Linux kernel, atf, scfw, imx-mkimage. You can call it standalone build.
here is the step to try it.
You can use -n for make to get the detail build steps.
ex: make atf -n
make linux.Image -n
L4.14.78_ga as example:
1. Untar imx_builder_02282019.tgz
2. Read the Standalone_Build_Preparation.pdf inside to prepare the bsp.
3. Prepare the toolchains(populate_sdk from yocto, get from linaro, get from buildroot, etc.)
4. Prepare scfw toolchains following the SCFW Porting Kit.
5. Follow the Standalone_Build_Preparation.pdf to check if the Build Structure is correct.
- Build Structure
L4.14.78_1.0.0_ga as example.
Prepare rel_imx_4.14.78_1.0.0_ga in REL
Make symbol link to REL/rel_imx_4.14.78_1.0.0_ga
Make symbol link to build_i.MX8X
imx_builder/
|-- atf -> bsp/imx-atf
|-- bsp -> REL/rel_imx_4.14.78_1.0.0_ga
|-- build -> build_i.MX8X
|-- build_i.MX6
|-- build_i.MX8M
|-- build_i.MX8X
| |-- Makefile -> Makefile.4.14.78_ga
| |-- Makefile.4.14.78_ga
| |-- README
| |-- SETTINGS_4.14.78_1.0.0_ga.MK
| |-- SETTINGS.MK -> SETTINGS_4.14.78_1.0.0_ga.MK
| `-- VERSION.MK
|-- dts -> linux/arch/arm/boot/dts
|-- imx-mkimage -> bsp/imx-mkimage
|-- linux -> bsp/linux-imx
|-- Makefile -> build/Makefile
|-- Others
|-- out
|-- README -> build/README
|-- REL
| `-- rel_imx_4.14.78_1.0.0_ga
| |-- firmware-imx-8.0.bin
| |-- imx-atf
| |-- imx-mkimage
| |-- imx-sc-firmware-1.1.bin(optional)
| |-- imx-scfw-porting-kit-1.1.tar.gz
| |-- linux-imx
| `-- uboot-imx
|-- scfw -> bsp/scfw
|-- SETTINGS.MK -> build/SETTINGS.MK
|-- Standalone_Build_Preparation.pdf
|-- toolchains
| `-- scfw
| `-- gcc-arm-none-eabi-6-2017-q2-update
|-- u-boot -> bsp/uboot-imx
`-- VERSION.MK -> build/VERSION.MK