[PATCH 00/13] Add BSP for Arm Fixed Virtual Platform

Kinsey Moore kinsey.moore at oarcorp.com
Tue Dec 22 20:25:54 UTC 2020


This patch set looks good though it looks like patch 02 should probably have been merged into patch 11.

Kinsey

-----Original Message-----
From: devel <devel-bounces at rtems.org> On Behalf Of Sebastian Huber
Sent: Tuesday, December 22, 2020 07:01
To: devel at rtems.org
Subject: [PATCH 00/13] Add BSP for Arm Fixed Virtual Platform

This patch set adds a BSP to support the Arm Fixed Virtual Platform.
Only the Cortex-R52 processor configuration is supported by the BSP.  It
should be easy to add support for other variants if needed.

The patch set consolidates the low-level initialization and moves the
architecture-specific (Armv7-AR and later) initialization from
BSP-specific routines to start.S.  This was tested on the following Qemu
BSPs:

* aarch64/xilinx_zynqmp_ilp32

* aarch64/xilinx_zynqmp_lp64

* arm/fvp_cortex_r52

* arm/realview_pbx_a9_qemu

* arm/xilinx_zynq_a9_qemu

Sebastian Huber (13):
  libdebugger: Fix for Armv8-R
  bsps: Fix includes
  arm: Add header file for AArch32 System Registers
  arm: Add support for Arm PMSAv8-32
  bsps/arm: Set VBAR in start.S
  bsps/arm: Invalidate branch predictors earlier
  bsps/arm: Remove optional start hook arguments
  bsps/arm: Add arm-data-cache-loop-set-way.h
  bsps/arm: Clear SCTLR[M, I, A, C] in start.S
  bsps/arm: Invalidate TLB in start.S
  bsps: Use header file for GIC architecture support
  bsps/arm: Rely on initialized vector table
  arm/fvp: New BSP

 .../dev/irq/arm-gic-arch.h}                   |    21 +-
 .../altera-cyclone-v/start/bspstarthooks.c    |     2 -
 bsps/arm/beagle/start/bspstarthooks.c         |     4 -
 bsps/arm/fvp/console/console.c                |    83 +
 bsps/arm/fvp/console/printk-support.c         |    47 +
 bsps/arm/fvp/include/bsp.h                    |    70 +
 bsps/arm/fvp/include/bsp/irq.h                |    47 +
 bsps/arm/fvp/include/bsp/semihosting.h        |   130 +
 bsps/arm/fvp/include/tm27.h                   |     1 +
 bsps/arm/fvp/start/bspreset.c                 |    48 +
 bsps/arm/fvp/start/bspsmp.c                   |    49 +
 bsps/arm/fvp/start/bspstart.c                 |    66 +
 bsps/arm/fvp/start/bspstarthooks.c            |    97 +
 bsps/arm/fvp/start/pmsa-sections.c            |    56 +
 bsps/arm/headers.am                           |     1 -
 bsps/arm/imx/start/bspstarthooks.c            |     1 -
 bsps/arm/include/bsp/arm-a8core-start.h       |    55 -
 bsps/arm/include/bsp/arm-a9mpcore-start.h     |    29 +-
 bsps/arm/include/bsp/start.h                  |    13 +-
 .../dev/cache/arm-data-cache-loop-set-way.h   |    96 +
 .../dev/irq/arm-gic-arch.h}                   |    27 +-
 bsps/arm/raspberrypi/start/bspsmp_init.c      |     5 +-
 bsps/arm/raspberrypi/start/bspstarthooks.c    |    52 +-
 .../shared/cache/cache-v7ar-disable-data.S    |    71 +-
 bsps/arm/shared/start/start.S                 |   142 +-
 bsps/arm/xen/start/bspstarthooks.c            |     2 -
 bsps/arm/xilinx-zynq/start/bspstarthooks.c    |    36 -
 bsps/arm/xilinx-zynqmp/start/bspstarthooks.c  |    43 +-
 bsps/include/dev/irq/arm-gic-irq.h            |    13 -
 bsps/shared/dev/irq/arm-gicv2.c               |     1 +
 bsps/shared/dev/irq/arm-gicv3.c               |     7 +
 .../libbsp/arm/altera-cyclone-v/Makefile.am   |     1 -
 c/src/lib/libbsp/arm/imx/Makefile.am          |     1 -
 .../libbsp/arm/realview-pbx-a9/Makefile.am    |     1 -
 c/src/lib/libbsp/arm/xen/Makefile.am          |     1 -
 c/src/lib/libbsp/arm/xilinx-zynq/Makefile.am  |     1 -
 .../lib/libbsp/arm/xilinx-zynqmp/Makefile.am  |     1 -
 cpukit/libdebugger/rtems-debugger-arm.c       |     7 +
 .../score/cpu/arm/aarch32-psma-init-default.c |    60 +
 cpukit/score/cpu/arm/aarch32-psma-init.c      |   194 +
 .../arm/include/rtems/score/aarch32-pmsa.h    |   314 +
 .../rtems/score/aarch32-system-registers.h    | 14657 ++++++++++++++++
 spec/build/bsps/aarch64/a53/obj.yml           |     1 -
 spec/build/bsps/aarch64/grp.yml               |     1 +
 spec/build/bsps/aarch64/xilinx-zynqmp/obj.yml |     1 -
 .../altera-cyclone-v/bspalteracyclonev.yml    |     1 -
 spec/build/bsps/arm/fvp/abi.yml               |    20 +
 spec/build/bsps/arm/fvp/bspcortexr52.yml      |    19 +
 spec/build/bsps/arm/fvp/grp.yml               |    58 +
 spec/build/bsps/arm/fvp/linkcmds.yml          |    53 +
 spec/build/bsps/arm/fvp/obj.yml               |    44 +
 spec/build/bsps/arm/fvp/objsmp.yml            |    16 +
 spec/build/bsps/arm/fvp/optdevbegin.yml       |    22 +
 spec/build/bsps/arm/fvp/optdevsize.yml        |    18 +
 spec/build/bsps/arm/fvp/optdrambegin.yml      |    22 +
 spec/build/bsps/arm/fvp/optdramsize.yml       |    23 +
 spec/build/bsps/arm/fvp/optnullsize.yml       |    21 +
 spec/build/bsps/arm/grp.yml                   |     2 +-
 spec/build/bsps/arm/imx/bspimx.yml            |     1 -
 spec/build/bsps/arm/optgiccpuif.yml           |    19 +
 spec/build/bsps/arm/optgicdist.yml            |    19 +
 spec/build/bsps/arm/optgicredist.yml          |    19 +
 spec/build/bsps/arm/optgicspicount.yml        |    17 +
 spec/build/bsps/arm/optgtfreq.yml             |     5 +-
 .../arm/realview-pbx-a9/bsprealviewpbxa9.yml  |     1 -
 spec/build/bsps/arm/xen/bspxen.yml            |     1 -
 spec/build/bsps/arm/xilinx-zynq/obj.yml       |     1 -
 .../arm/xilinx-zynqmp/bspxilinxzynqmp.yml     |     1 -
 spec/build/cpukit/cpuarm.yml                  |     2 +
 spec/build/cpukit/optsmp.yml                  |     1 +
 70 files changed, 16589 insertions(+), 373 deletions(-)
 rename bsps/aarch64/{shared/irq/irq-arm-gicvx-aarch64.c => include/dev/irq/arm-gic-arch.h} (84%)
 create mode 100644 bsps/arm/fvp/console/console.c
 create mode 100644 bsps/arm/fvp/console/printk-support.c
 create mode 100644 bsps/arm/fvp/include/bsp.h
 create mode 100644 bsps/arm/fvp/include/bsp/irq.h
 create mode 100644 bsps/arm/fvp/include/bsp/semihosting.h
 create mode 100644 bsps/arm/fvp/include/tm27.h
 create mode 100644 bsps/arm/fvp/start/bspreset.c
 create mode 100644 bsps/arm/fvp/start/bspsmp.c
 create mode 100644 bsps/arm/fvp/start/bspstart.c
 create mode 100644 bsps/arm/fvp/start/bspstarthooks.c
 create mode 100644 bsps/arm/fvp/start/pmsa-sections.c
 delete mode 100644 bsps/arm/include/bsp/arm-a8core-start.h
 create mode 100644 bsps/arm/include/dev/cache/arm-data-cache-loop-set-way.h
 rename bsps/arm/{shared/irq/irq-arm-gicvx-aarch32.c => include/dev/irq/arm-gic-arch.h} (79%)
 create mode 100644 cpukit/score/cpu/arm/aarch32-psma-init-default.c
 create mode 100644 cpukit/score/cpu/arm/aarch32-psma-init.c
 create mode 100644 cpukit/score/cpu/arm/include/rtems/score/aarch32-pmsa.h
 create mode 100644 cpukit/score/cpu/arm/include/rtems/score/aarch32-system-registers.h
 create mode 100644 spec/build/bsps/arm/fvp/abi.yml
 create mode 100644 spec/build/bsps/arm/fvp/bspcortexr52.yml
 create mode 100644 spec/build/bsps/arm/fvp/grp.yml
 create mode 100644 spec/build/bsps/arm/fvp/linkcmds.yml
 create mode 100644 spec/build/bsps/arm/fvp/obj.yml
 create mode 100644 spec/build/bsps/arm/fvp/objsmp.yml
 create mode 100644 spec/build/bsps/arm/fvp/optdevbegin.yml
 create mode 100644 spec/build/bsps/arm/fvp/optdevsize.yml
 create mode 100644 spec/build/bsps/arm/fvp/optdrambegin.yml
 create mode 100644 spec/build/bsps/arm/fvp/optdramsize.yml
 create mode 100644 spec/build/bsps/arm/fvp/optnullsize.yml
 create mode 100644 spec/build/bsps/arm/optgiccpuif.yml
 create mode 100644 spec/build/bsps/arm/optgicdist.yml
 create mode 100644 spec/build/bsps/arm/optgicredist.yml
 create mode 100644 spec/build/bsps/arm/optgicspicount.yml

-- 
2.26.2

_______________________________________________
devel mailing list
devel at rtems.org
http://lists.rtems.org/mailman/listinfo/devel


More information about the devel mailing list