mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-19 08:28:51 +09:00
![Marek Vasut](/assets/img/avatar_default.png)
Build an SPL which can be started via SCIF download mode on R-Car Gen3 and allows loading and executing U-Boot uImage with the next stage code. This is also useful for starting e.g. ATF BL2, which inits the hardware and returns to the U-Boot SPL, which can then load e.g. U-Boot proper. The H3, M3-W, M3-N SoCs have plenty of SRAM for storing the U-Boot SPL while the payload, e.g. ATF BL2, executes, so there is no problem here. However, E3 and D3 have much less SRAM, hence the loader uses a trick where it copies itself beyond the area used by BL2 and executes from there. That area is 32kiB large and not enough to hold U-Boot SPL, BSS, stack and malloc area, so the later two are placed at +0x4000 offset from start of SRAM, another area not used by ATF BL2. To make things even more complicated, the SCIF loader cannot load to the upper 32kiB of the SRAM directly, hence the copying approach. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
47 lines
899 B
Plaintext
47 lines
899 B
Plaintext
if ARCH_RMOBILE
|
|
|
|
choice
|
|
prompt "Target Renesas SoC select"
|
|
default RCAR_32
|
|
|
|
config RCAR_32
|
|
bool "Renesas ARM SoCs R-Car Gen1/Gen2 (32bit)"
|
|
select CPU_V7A
|
|
|
|
config RCAR_GEN3
|
|
bool "Renesas ARM SoCs R-Car Gen3 (64bit)"
|
|
select ARM64
|
|
select PHY
|
|
select CMD_CACHE
|
|
select PINCTRL
|
|
select PINCONF
|
|
select PINCTRL_PFC
|
|
select SUPPORT_SPL
|
|
imply CMD_FS_UUID
|
|
imply CMD_GPT
|
|
imply CMD_UUID
|
|
imply CMD_MMC_SWRITE if MMC
|
|
imply SUPPORT_EMMC_RPMB if MMC
|
|
imply SPL
|
|
imply SPL_BOARD_INIT
|
|
imply SPL_GZIP
|
|
imply SPL_LIBCOMMON_SUPPORT
|
|
imply SPL_LIBGENERIC_SUPPORT
|
|
imply SPL_SERIAL_SUPPORT
|
|
imply SPL_SYS_MALLOC_SIMPLE
|
|
imply SPL_TINY_MEMSET
|
|
imply SPL_YMODEM_SUPPORT
|
|
imply USE_TINY_PRINTF
|
|
|
|
config RZA1
|
|
prompt "Renesas ARM SoCs RZ/A1 (32bit)"
|
|
select CPU_V7A
|
|
|
|
endchoice
|
|
|
|
source "arch/arm/mach-rmobile/Kconfig.32"
|
|
source "arch/arm/mach-rmobile/Kconfig.64"
|
|
source "arch/arm/mach-rmobile/Kconfig.rza1"
|
|
|
|
endif
|