mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-17 10:04:26 +00:00

The SPMC (Hafnium) looks for secure and non-secure ranges in its manifest. Those relate with ranges that can be used by SPs in their FF-A manifests. The NS memory that is not used by SPs will be assigned to the NWd, for it to share memory with SPs as needed. Thus, this limits the memory the NWd can share with SPs, to prevent NWD VMs from sharing memory that belongs to other critical components. Signed-off-by: J-Alves <joao.alves@arm.com> Change-Id: Iad03eb138a57068fbb18c53141bdf6bf9c171b28
97 lines
1.6 KiB
Text
97 lines
1.6 KiB
Text
/*
|
|
* Copyright (c) 2020-2023, Arm Limited. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
/dts-v1/;
|
|
|
|
#define AFF 00
|
|
|
|
#include "fvp-defs.dtsi"
|
|
#undef POST
|
|
#define POST \
|
|
};
|
|
|
|
/ {
|
|
compatible = "arm,ffa-core-manifest-1.0";
|
|
#address-cells = <2>;
|
|
#size-cells = <2>;
|
|
|
|
attribute {
|
|
spmc_id = <0x8000>;
|
|
maj_ver = <0x1>;
|
|
min_ver = <0x1>;
|
|
exec_state = <0x0>;
|
|
load_address = <0x0 0x6000000>;
|
|
entrypoint = <0x0 0x6000000>;
|
|
binary_size = <0x80000>;
|
|
};
|
|
|
|
hypervisor {
|
|
compatible = "hafnium,hafnium";
|
|
vm1 {
|
|
is_ffa_partition;
|
|
debug_name = "cactus-primary";
|
|
load_address = <0x7000000>;
|
|
vcpu_count = <8>;
|
|
mem_size = <1048576>;
|
|
};
|
|
vm2 {
|
|
is_ffa_partition;
|
|
debug_name = "cactus-secondary";
|
|
load_address = <0x7100000>;
|
|
vcpu_count = <8>;
|
|
mem_size = <1048576>;
|
|
};
|
|
vm3 {
|
|
is_ffa_partition;
|
|
debug_name = "cactus-tertiary";
|
|
load_address = <0x7200000>;
|
|
vcpu_count = <1>;
|
|
mem_size = <1048576>;
|
|
};
|
|
vm4 {
|
|
is_ffa_partition;
|
|
debug_name = "ivy";
|
|
load_address = <0x7600000>;
|
|
vcpu_count = <1>;
|
|
mem_size = <1048576>;
|
|
};
|
|
};
|
|
|
|
cpus {
|
|
#address-cells = <0x2>;
|
|
#size-cells = <0x0>;
|
|
|
|
CPU_0
|
|
|
|
/*
|
|
* SPMC (Hafnium) requires secondary core nodes are declared
|
|
* in descending order.
|
|
*/
|
|
CPU_7
|
|
CPU_6
|
|
CPU_5
|
|
CPU_4
|
|
CPU_3
|
|
CPU_2
|
|
CPU_1
|
|
};
|
|
|
|
memory@0 {
|
|
device_type = "memory";
|
|
reg = <0x0 0xfd000000 0x0 0x2000000>,
|
|
<0x0 0x7000000 0x0 0x1000000>,
|
|
<0x0 0xff000000 0x0 0x1000000>;
|
|
};
|
|
|
|
memory@1 {
|
|
device_type = "ns-memory";
|
|
reg = <0x00008800 0x80000000 0x0 0x7f000000>,
|
|
<0x0 0x88000000 0x0 0x10000000>;
|
|
};
|
|
|
|
#if MEASURED_BOOT
|
|
#include "event_log.dtsi"
|
|
#endif
|
|
};
|