Skip to content

Commit dcb9573

Browse files
author
Nicolas Pitre
committed
boards: arm: Create unified fvp_base_revc_2xaem board structure
Create unified board configuration to replace verbose board naming with shorter hierarchical structure. This board works with the new unified fvp_aem SOC series and supports the v8a architecture variant. This enables board targets like: - fvp_base_revc_2xaem/v8a (basic ARMv8-A) - fvp_base_revc_2xaem/v8a/smp (ARMv8-A SMP) - fvp_base_revc_2xaem/v8a/smp/ns (ARMv8-A SMP non-secure) The structure replaces the existing overly verbose board with a cleaner, more maintainable organization and provides a foundation for adding v9a variants. Signed-off-by: Nicolas Pitre <[email protected]>
1 parent 2548be0 commit dcb9573

29 files changed

+123
-62
lines changed
File renamed without changes.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# Copyright (c) 2021 Carlo Caione <[email protected]>
22
# SPDX-License-Identifier: Apache-2.0
33

4-
if BOARD_FVP_BASE_REVC_2XAEMV8A
4+
if BOARD_FVP_BASE_REVC_2XAEM
55

66
config BUILD_OUTPUT_BIN
77
default y
88

9-
endif # BOARD_FVP_BASE_REVC_2XAEMV8A
9+
endif # BOARD_FVP_BASE_REVC_2XAEM
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Copyright (c) 2021 Carlo Caione <[email protected]>
22
# SPDX-License-Identifier: Apache-2.0
33

4-
config BOARD_FVP_BASE_REVC_2XAEMV8A
4+
config BOARD_FVP_BASE_REVC_2XAEM
55
select SOC_FVP_V8A
File renamed without changes.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
board:
2+
name: fvp_base_revc_2xaem
3+
full_name: BASE RevC 2xAEM (Architectural Envelope Model) Fixed Virtual Platform
4+
vendor: arm
5+
socs:
6+
- name: v8a
7+
variants:
8+
- name: smp
9+
variants:
10+
- name: ns

boards/arm/fvp_base_revc_2xaemv8a/doc/index.rst renamed to boards/arm/fvp_base_revc_2xaem/doc/index.rst

Lines changed: 34 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
.. _fvp_base_revc_2xaemv8a:
1+
.. _fvp_base_revc_2xaem:
22

3-
ARM BASE RevC AEMv8A Fixed Virtual Platforms
4-
############################################
3+
ARM BASE RevC 2xAEM Fixed Virtual Platforms
4+
###########################################
55

66
Overview
77
********
88

99
This board configuration will use ARM Fixed Virtual Platforms(FVP) to emulate
10-
a generic Armv8-A 64-bit hardware platform.
10+
a generic AEM (Architectural Envelope Model) hardware platform supporting both
11+
ARMv8-A and ARMv9-A architectures.
1112

12-
This configuration provides support for a generic Armv8-A 64-bit CPU and
13-
these devices:
13+
This configuration provides support for generic AEM CPUs and these devices:
1414

1515
* GICv3 interrupt controller
1616
* ARM architected (Generic) timer
@@ -38,6 +38,16 @@ The following hardware features are supported:
3838

3939
The kernel currently does not support other hardware features on this platform.
4040

41+
Board Variants
42+
==============
43+
44+
The following board targets are available:
45+
46+
* ``fvp_base_revc_2xaem/v8a`` - ARMv8-A (64-bit)
47+
* ``fvp_base_revc_2xaem/v8a/smp`` - ARMv8-A SMP (4 cores)
48+
* ``fvp_base_revc_2xaem/v8a/smp/ns`` - ARMv8-A SMP Non-Secure
49+
* ``fvp_base_revc_2xaem/v9a`` - ARMv9-A (64-bit) [Future]
50+
4151
Devices
4252
========
4353

@@ -77,12 +87,28 @@ ARM FVP emulated environment, for example, with the :zephyr:code-sample:`synchro
7787
.. zephyr-app-commands::
7888
:zephyr-app: samples/synchronization
7989
:host-os: unix
80-
:board: fvp_base_revc_2xaemv8a
90+
:board: fvp_base_revc_2xaem/v8a
8191
:goals: build
8292

83-
This will build an image with the synchronization sample app.
93+
This will build an image with the synchronization sample app for ARMv8-A.
8494
Then you can run it with ``west build -t run``.
8595

96+
For SMP variants:
97+
98+
.. zephyr-app-commands::
99+
:zephyr-app: samples/synchronization
100+
:host-os: unix
101+
:board: fvp_base_revc_2xaem/v8a/smp
102+
:goals: build
103+
104+
For SMP Non-Secure variants with TF-A:
105+
106+
.. zephyr-app-commands::
107+
:zephyr-app: samples/synchronization
108+
:host-os: unix
109+
:board: fvp_base_revc_2xaem/v8a/smp/ns
110+
:goals: build
111+
86112
Running Zephyr at EL1NS
87113
***********************
88114

boards/arm/fvp_base_revc_2xaemv8a/fvp_base_revc_2xaemv8a.dts renamed to boards/arm/fvp_base_revc_2xaem/fvp_base_revc_2xaem_v8a.dts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
#include <zephyr/dt-bindings/interrupt-controller/arm-gic.h>
1111

1212
/ {
13-
model = "FVP Base RevC 2xAEMv8A";
13+
model = "FVP Base RevC 2xAEM ARMv8-A";
1414

1515
chosen {
1616
/*
1717
* The SRAM node is actually located in the
18-
* DRAM region of the FVP Base RevC 2xAEMv8A.
18+
* DRAM region of the FVP Base RevC 2xAEM.
1919
*/
2020
zephyr,sram = &dram0;
2121
zephyr,flash = &flash0;
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
identifier: fvp_base_revc_2xaem/v8a
2+
name: FVP Base RevC 2xAEM ARMv8-A
3+
arch: arm64
4+
type: sim
5+
simulation:
6+
- name: armfvp
7+
exec: FVP_Base_RevC-2xAEMvA
8+
toolchain:
9+
- zephyr
10+
- cross-compile
11+
ram: 2048
12+
flash: 64
13+
vendor: arm
14+
supported:
15+
- gpio
16+
- uart
17+
- smp
18+
testing:
19+
ignore_tags:
20+
- net
21+
- bluetooth
File renamed without changes.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
/*
2+
* Copyright (c) 2021 Carlo Caione <[email protected]>
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
#include "fvp_base_revc_2xaem_v8a.dts"

0 commit comments

Comments
 (0)