k3-am642-evm-u-boot: Use binman to generate u-boot.img and tispl.bin

Introduce k3-am642-evm-binman.dtsi to provide binman configuration.

Provide a third configuration for AM64 EVM with NAND card.

R5 build is still not converted to use binman so restrict binman.dtsi
to A53 build.

Signed-off-by: Roger Quadros <rogerq@kernel.org>
This commit is contained in:
Roger Quadros 2022-02-02 13:21:55 +02:00 committed by Praneeth Bajjuri
parent dd0bb6313c
commit 7650825383
3 changed files with 230 additions and 0 deletions

View File

@ -0,0 +1,226 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
*/
/ {
binman: binman {
multiple-images;
};
};
#ifdef CONFIG_TARGET_AM642_A53_EVM
&binman {
ti-spl {
filename = "tispl.bin";
pad-byte = <0xff>;
fit {
description = "Configuration to load ATF and SPL";
#address-cells = <1>;
images {
atf {
description = "ARM Trusted Firmware";
type = "firmware";
arch = "arm64";
compression = "none";
os = "arm-trusted-firmware";
load = <0x701c0000>;
entry = <0x701c0000>;
atf-bl31 {
filename = "bl31.bin";
};
};
tee {
description = "OPTEE";
type = "tee";
arch = "arm64";
compression = "none";
os = "tee";
load = <0x9e800000>;
entry = <0x9e800000>;
atf-bl32 {
filename = "bl32.bin";
};
};
dm {
description = "DM binary";
type = "firmware";
arch = "arm32";
compression = "none";
os = "DM";
load = <0x89000000>;
entry = <0x89000000>;
blob-ext {
filename = "/dev/null";
};
};
spl {
description = "SPL (64-bit)";
type = "standalone";
os = "U-Boot";
arch = "arm64";
compression = "none";
load = <0x80080000>;
entry = <0x80080000>;
blob {
filename = "spl/u-boot-spl-nodtb.bin";
};
};
fdt-1 {
description = "k3-am642-evm";
type = "flat_dt";
arch = "arm";
compression = "none";
blob {
filename = "arch/arm/dts/k3-am642-evm.dtb";
};
};
fdt-2 {
description = "k3-am642-sk";
type = "flat_dt";
arch = "arm";
compression = "none";
blob {
filename = "arch/arm/dts/k3-am642-sk.dtb";
};
};
fdt-3 {
description = "k3-am642-evm-nand overlay";
type = "flat_dt";
arch = "arm";
compression = "none";
blob {
filename = "arch/arm/dts/k3-am642-evm-nand.dtbo";
};
};
};
configurations {
default = "conf-1";
conf-1 {
description = "k3-am642-evm";
firmware = "atf";
loadables = "tee", "dm", "spl";
fdt = "fdt-1";
};
conf-2 {
description = "k3-am642-sk";
firmware = "atf";
loadables = "tee", "dm", "spl";
fdt = "fdt-2";
};
conf-3 {
description = "k3-am642-evm-nand";
firmware = "atf";
loadables = "tee", "dm", "spl";
fdt = "fdt-1", "fdt-3";
};
};
};
};
};
&binman {
u-boot {
filename = "u-boot.img";
pad-byte = <0xff>;
fit {
description = "FIT image with multiple configurations";
images {
uboot {
description = "U-Boot for am64x board";
type = "firmware";
os = "u-boot";
arch = "arm";
compression = "none";
load = <CONFIG_SYS_TEXT_BASE>;
u-boot-nodtb {
};
hash {
algo = "crc32";
};
};
fdt-1 {
description = "k3-am642-evm";
type = "flat_dt";
arch = "arm";
compression = "none";
blob {
filename = "arch/arm/dts/k3-am642-evm.dtb";
};
hash {
algo = "crc32";
};
};
fdt-2 {
description = "k3-am642-sk";
type = "flat_dt";
arch = "arm";
compression = "none";
blob {
filename = "arch/arm/dts/k3-am642-sk.dtb";
};
hash {
algo = "crc32";
};
};
fdt-3 {
description = "k3-am642-evm-nand overlay";
type = "flat_dt";
arch = "arm";
compression = "none";
blob {
filename = "arch/arm/dts/k3-am642-evm-nand.dtbo";
};
hash {
algo = "crc32";
};
};
};
configurations {
default = "conf-1";
conf-1 {
description = "k3-am642-evm";
firmware = "uboot";
loadables = "uboot";
fdt = "fdt-1";
};
conf-2 {
description = "k3-am642-sk";
firmware = "uboot";
loadables = "uboot";
fdt = "fdt-2";
};
conf-3 {
description = "k3-am642-evm-nand";
firmware = "uboot";
loadables = "uboot";
fdt = "fdt-1", "fdt-3";
};
};
};
};
};
#endif

View File

@ -2,6 +2,9 @@
/*
* Copyright (C) 2020 Texas Instruments Incorporated - https://www.ti.com/
*/
#include <config.h>
#include "k3-am642-evm-binman.dtsi"
/ {
chosen {

View File

@ -15,6 +15,7 @@ config SOC_K3_J721S2
config SOC_K3_AM642
bool "TI's K3 based AM642 SoC Family Support"
select BINMAN
endchoice