mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-10-03 03:31:37 +02:00
arm64: mvebu: do not map firmware RT service region
There is region left by ATF, which needs to remain in memory to provide RT services. To prevent overwriting it by u-boot, do not provide any mapping for this memory region, so any attempt to access it will trigger synchronous exception. Update sr 2021-04-12: Don't update armada3700/cpu.c mmu table, as this has specific changes included in mainline. Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com> Signed-off-by: Stefan Roese <sr@denx.de>
This commit is contained in:
parent
762f9fba0f
commit
a2122d8bab
@ -14,6 +14,7 @@
|
|||||||
#include <asm/arch/cpu.h>
|
#include <asm/arch/cpu.h>
|
||||||
#include <asm/arch/soc.h>
|
#include <asm/arch/soc.h>
|
||||||
#include <asm/armv8/mmu.h>
|
#include <asm/armv8/mmu.h>
|
||||||
|
#include <mach/fw_info.h>
|
||||||
|
|
||||||
/* Armada 7k/8k */
|
/* Armada 7k/8k */
|
||||||
#define MVEBU_RFU_BASE (MVEBU_REGISTER(0x6f0000))
|
#define MVEBU_RFU_BASE (MVEBU_REGISTER(0x6f0000))
|
||||||
@ -27,9 +28,18 @@
|
|||||||
static struct mm_region mvebu_mem_map[] = {
|
static struct mm_region mvebu_mem_map[] = {
|
||||||
/* Armada 80x0 memory regions include the CP1 (slave) units */
|
/* Armada 80x0 memory regions include the CP1 (slave) units */
|
||||||
{
|
{
|
||||||
/* RAM */
|
/* RAM 0-64MB */
|
||||||
.phys = 0x0UL,
|
.phys = 0x0UL,
|
||||||
.virt = 0x0UL,
|
.virt = 0x0UL,
|
||||||
|
.size = ATF_REGION_START,
|
||||||
|
.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
|
||||||
|
PTE_BLOCK_INNER_SHARE
|
||||||
|
},
|
||||||
|
/* ATF and TEE region 0x4000000-0x5400000 not mapped */
|
||||||
|
{
|
||||||
|
/* RAM 66MB-2GB */
|
||||||
|
.phys = ATF_REGION_END,
|
||||||
|
.virt = ATF_REGION_END,
|
||||||
.size = SZ_2G,
|
.size = SZ_2G,
|
||||||
.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
|
.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
|
||||||
PTE_BLOCK_INNER_SHARE
|
PTE_BLOCK_INNER_SHARE
|
||||||
|
13
arch/arm/mach-mvebu/include/mach/fw_info.h
Normal file
13
arch/arm/mach-mvebu/include/mach/fw_info.h
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
/* SPDX-License-Identifier: GPL-2.0 */
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2018 Marvell International Ltd.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _FW_INFO_H_
|
||||||
|
#define _FW_INFO_H_
|
||||||
|
|
||||||
|
/* Protected ATF and TEE region */
|
||||||
|
#define ATF_REGION_START 0x4000000
|
||||||
|
#define ATF_REGION_END 0x5400000
|
||||||
|
|
||||||
|
#endif /* _FW_INFO_H_ */
|
Loading…
x
Reference in New Issue
Block a user