1# Copyright (c) 2021 Arm Limited (or its affiliates). All rights reserved.
2# SPDX-License-Identifier: Apache-2.0
3
4set(SUPPORTED_EMU_PLATFORMS armfvp)
5set(ARMFVP_BIN_NAME FVP_BaseR_AEMv8R)
6set(ARMFVP_MIN_VERSION 11.16.16)
7
8if(CONFIG_BOARD_FVP_BASER_AEMV8R_FVP_AEMV8R_AARCH64 OR
9    CONFIG_BOARD_FVP_BASER_AEMV8R_FVP_AEMV8R_AARCH64_SMP)
10  set(ARMFVP_FLAGS
11    -C cluster0.has_aarch64=1
12    -C cluster0.VMSA_supported=0
13    -C cluster0.NUM_CORES=${CONFIG_MP_MAX_NUM_CPUS}
14    -C cluster0.gicv3.cpuintf-mmap-access-level=2
15    -C cluster0.gicv3.SRE-enable-action-on-mmap=2
16    -C cluster0.gicv3.SRE-EL2-enable-RAO=1
17    -C cluster0.gicv3.extended-interrupt-range-support=1
18    -C gic_distributor.GICD_CTLR-DS-1-means-secure-only=1
19    -C gic_distributor.has-two-security-states=0
20    -C bp.refcounter.non_arch_start_at_default=1
21    # UART0 config
22    -C bp.pl011_uart0.out_file=-
23    -C bp.pl011_uart0.unbuffered_output=1
24    -C bp.terminal_0.start_telnet=0
25    # UART1 config
26    -C bp.pl011_uart1.out_file=-
27    -C bp.pl011_uart1.unbuffered_output=1
28    -C bp.terminal_1.start_telnet=0
29    # UART2 config
30    -C bp.pl011_uart2.out_file=-
31    -C bp.pl011_uart2.unbuffered_output=1
32    -C bp.terminal_2.start_telnet=0
33    # UART3 config
34    -C bp.pl011_uart3.out_file=-
35    -C bp.pl011_uart3.unbuffered_output=1
36    -C bp.terminal_3.start_telnet=0
37
38    -C bp.vis.disable_visualisation=1
39    -C bp.vis.rate_limit-enable=0
40    -C cache_state_modelled=1
41    )
42elseif(CONFIG_BOARD_FVP_BASER_AEMV8R_FVP_AEMV8R_AARCH32 OR
43    CONFIG_BOARD_FVP_BASER_AEMV8R_FVP_AEMV8R_AARCH32_SMP)
44  set(ARMFVP_FLAGS
45    -C cluster0.has_aarch64=0
46    -C cluster0.VMSA_supported=0
47    -C cluster0.NUM_CORES=${CONFIG_MP_MAX_NUM_CPUS}
48    -C cluster0.gicv3.cpuintf-mmap-access-level=2
49    -C cluster0.gicv3.SRE-enable-action-on-mmap=2
50    -C cluster0.gicv3.SRE-EL2-enable-RAO=1
51    -C cluster0.gicv3.extended-interrupt-range-support=1
52    -C gic_distributor.GICD_CTLR-DS-1-means-secure-only=1
53    -C gic_distributor.has-two-security-states=0
54    -C bp.refcounter.non_arch_start_at_default=1
55    # UART0 config
56    -C bp.pl011_uart0.out_file=-
57    -C bp.pl011_uart0.unbuffered_output=1
58    -C bp.terminal_0.start_telnet=0
59    # UART1 config
60    -C bp.pl011_uart1.out_file=-
61    -C bp.pl011_uart1.unbuffered_output=1
62    -C bp.terminal_1.start_telnet=0
63    # UART2 config
64    -C bp.pl011_uart2.out_file=-
65    -C bp.pl011_uart2.unbuffered_output=1
66    -C bp.terminal_2.start_telnet=0
67    # UART3 config
68    -C bp.pl011_uart3.out_file=-
69    -C bp.pl011_uart3.unbuffered_output=1
70    -C bp.terminal_3.start_telnet=0
71
72    -C bp.vis.disable_visualisation=1
73    -C bp.vis.rate_limit-enable=0
74    -C cache_state_modelled=0
75    )
76endif()
77