arm: mvebu: a37xx: Map CCI-400 and AP BootROM address space
authorPali Rohár <pali@kernel.org>
Wed, 16 Feb 2022 10:18:44 +0000 (11:18 +0100)
committerStefan Roese <sr@denx.de>
Thu, 17 Feb 2022 13:17:07 +0000 (14:17 +0100)
commit65375d026a59a79ff2cabf6b4ee26752b8e3b5e3
tree2d6fe08fc8ce58d4755d15914f07607c573277c2
parent2fb7426cf027a9efcd05975b6f4b2968a4d54834
arm: mvebu: a37xx: Map CCI-400 and AP BootROM address space

In function build_mem_map() prepare also mapping for CCI-400 and
BootROM windows.

BootROM window is 1 MB long and by default starts at address 0xfff00000.
A53 AP BootROM is 16 kB long and repeats in this BootROM window 64 times.
RVBAR_EL3 register is set to value 0xffff0000, so by default A53 AP BootROM
is accessed via range 0xffff0000-0xffff3fff.

CCI-400 window when new TF-A version is used, starts at address 0xfe000000
and when old TF-A version is used, starts at address 0xd8000000.

Physical addresses are read directly from mvebu registers, so if TF-A
remaps it in future (again) then it would not cause any issue for U-Boot.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Stefan Roese <sr@denx.de>
arch/arm/mach-mvebu/armada3700/cpu.c