mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-28 21:09:00 +09:00
![Andre Przywara](/assets/img/avatar_default.png)
Loading Trusted-Firmware's BL31 at 16KB into DRAM was originally a hack to allow sharing more code with the other SoCs (which use this offset in SRAM). However there is no longer a reason for that, as the problematic macros have been properly separated there. The latest (and hopefully final) TF-A code drop now changes the load address to the beginning of DRAM, which is also more easily protected by the Trustzone memory controller (code to be done). Adjust the load address of BL31 now, to avoid any issues with incompatible versions later on (the TF-A patches are about to be merged). Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Samuel Holland <samuel@sholland.org>
110 lines
1.8 KiB
Plaintext
110 lines
1.8 KiB
Plaintext
#include <config.h>
|
|
|
|
#ifdef CONFIG_MACH_SUN50I_H6
|
|
#define BL31_ADDR 0x104000
|
|
#define SCP_ADDR 0x114000
|
|
#elif defined(CONFIG_MACH_SUN50I_H616)
|
|
#define BL31_ADDR 0x40000000
|
|
#else
|
|
#define BL31_ADDR 0x44000
|
|
#define SCP_ADDR 0x50000
|
|
#endif
|
|
|
|
/ {
|
|
aliases {
|
|
mmc1 = &mmc2;
|
|
};
|
|
|
|
binman: binman {
|
|
multiple-images;
|
|
};
|
|
};
|
|
|
|
&binman {
|
|
u-boot-sunxi-with-spl {
|
|
filename = "u-boot-sunxi-with-spl.bin";
|
|
pad-byte = <0xff>;
|
|
|
|
blob {
|
|
filename = "spl/sunxi-spl.bin";
|
|
};
|
|
|
|
#ifdef CONFIG_ARM64
|
|
fit {
|
|
description = "Configuration to load ATF before U-Boot";
|
|
#address-cells = <1>;
|
|
fit,fdt-list = "of-list";
|
|
|
|
images {
|
|
uboot {
|
|
description = "U-Boot (64-bit)";
|
|
type = "standalone";
|
|
os = "u-boot";
|
|
arch = "arm64";
|
|
compression = "none";
|
|
load = <0x4a000000>;
|
|
|
|
u-boot-nodtb {
|
|
};
|
|
};
|
|
|
|
atf {
|
|
description = "ARM Trusted Firmware";
|
|
type = "firmware";
|
|
os = "arm-trusted-firmware";
|
|
arch = "arm64";
|
|
compression = "none";
|
|
load = <BL31_ADDR>;
|
|
entry = <BL31_ADDR>;
|
|
|
|
atf-bl31 {
|
|
filename = "bl31.bin";
|
|
missing-msg = "atf-bl31-sunxi";
|
|
};
|
|
};
|
|
|
|
#ifndef CONFIG_MACH_SUN50I_H616
|
|
scp {
|
|
description = "SCP firmware";
|
|
type = "firmware";
|
|
arch = "or1k";
|
|
compression = "none";
|
|
load = <SCP_ADDR>;
|
|
|
|
scp {
|
|
filename = "scp.bin";
|
|
missing-msg = "scp-sunxi";
|
|
};
|
|
};
|
|
#endif
|
|
|
|
@fdt-SEQ {
|
|
description = "NAME";
|
|
type = "flat_dt";
|
|
compression = "none";
|
|
};
|
|
};
|
|
|
|
configurations {
|
|
default = "config-1";
|
|
|
|
@config-SEQ {
|
|
description = "NAME";
|
|
firmware = "atf";
|
|
#ifdef CONFIG_MACH_SUN50I_H616
|
|
loadables = "uboot";
|
|
#else
|
|
loadables = "scp", "uboot";
|
|
#endif
|
|
fdt = "fdt-SEQ";
|
|
};
|
|
};
|
|
};
|
|
#else
|
|
u-boot-img {
|
|
offset = <CONFIG_SPL_PAD_TO>;
|
|
};
|
|
#endif
|
|
};
|
|
};
|