[PATCH v2 0/7] Add aarch64/xilinx-versal

Gedare Bloom gedare at rtems.org
Thu Jun 24 15:50:17 UTC 2021


* Rebased and updated for BSP Interrupt Vector changes.
* Renamed BSP_START_IN_MON_SUPPORT to BSP_START_IN_EL3_MONITOR_MODE_SUPPORT
* Replaced BSP_START_IN_EL3_MONITOR_MODE_SUPPORT and
  BSP_START_IN_HYP_SUPPORT conditional code compliation with
  assembly switch-like logic to dynamically handle stepping
  down from EL3 or EL2 into EL1.

Tested with aarch64:
- xilinx_versal_lp64_qemu
- xilinx_zynqmp_lp64_qemu
- a72_lp64_qemu

Gedare Bloom (6):
  aarch64/xilinx-versal: new BSPs for qemu and vck190
  bsps/dev/irq: make icspicfgr an indexable array
  bsps/aarch64: add mnemonic for ICC_IGRPEN1_EL3
  bsps/aarch64: add physical secure timer
  bsps/aarch64: add non-secure mode and versal support
  bsps/aarch64: replace boot options with asm switch code

Kinsey Moore (1):
  aarch64: add support to drop EL3 to EL2

 .../shared/clock/arm-generic-timer-aarch64.c  |   8 +
 bsps/aarch64/shared/start/start.S             |  46 +++-
 bsps/aarch64/xilinx-versal/console/console.c  | 134 ++++++++++
 .../dev/serial/versal-uart-polled.c           | 228 ++++++++++++++++++
 bsps/aarch64/xilinx-versal/include/bsp.h      |  81 +++++++
 bsps/aarch64/xilinx-versal/include/bsp/irq.h  |  71 ++++++
 .../include/dev/serial/versal-uart-regs.h     | 141 +++++++++++
 .../include/dev/serial/versal-uart.h          |  90 +++++++
 bsps/aarch64/xilinx-versal/include/tm27.h     |  45 ++++
 bsps/aarch64/xilinx-versal/start/bspstart.c   |  48 ++++
 .../xilinx-versal/start/bspstarthooks.c       |  51 ++++
 .../aarch64/xilinx-versal/start/bspstartmmu.c |  77 ++++++
 bsps/include/dev/irq/arm-gic-regs.h           |   6 +-
 bsps/shared/dev/irq/arm-gicv3.c               |  24 +-
 spec/build/bsps/aarch64/a53/grp.yml           |   2 +
 spec/build/bsps/aarch64/a72/grp.yml           |   2 +
 spec/build/bsps/aarch64/optgtuseps.yml        |  17 ++
 spec/build/bsps/aarch64/optgtusevirt.yml      |  16 ++
 spec/build/bsps/aarch64/optisns.yml           |  20 ++
 spec/build/bsps/aarch64/xilinx-versal/abi.yml |  22 ++
 .../aarch64/xilinx-versal/bspqemuilp32.yml    |  19 ++
 .../aarch64/xilinx-versal/bspqemulp64.yml     |  19 ++
 .../aarch64/xilinx-versal/bspvck190ilp32.yml  |  19 ++
 .../aarch64/xilinx-versal/bspvck190lp64.yml   |  19 ++
 spec/build/bsps/aarch64/xilinx-versal/grp.yml |  56 +++++
 .../bsps/aarch64/xilinx-versal/grp_qemu.yml   |  16 ++
 .../bsps/aarch64/xilinx-versal/grp_vck190.yml |  16 ++
 .../aarch64/xilinx-versal/linkcmds_ilp32.yml  |  74 ++++++
 .../aarch64/xilinx-versal/linkcmds_lp64.yml   |  74 ++++++
 spec/build/bsps/aarch64/xilinx-versal/obj.yml |  44 ++++
 .../bsps/aarch64/xilinx-versal/optclkuart.yml |  20 ++
 .../aarch64/xilinx-versal/optconminor.yml     |  16 ++
 .../bsps/aarch64/xilinx-versal/optloadoff.yml |  22 ++
 .../aarch64/xilinx-versal/optnocachelen.yml   |  18 ++
 .../bsps/aarch64/xilinx-versal/optramlen.yml  |  18 ++
 .../bsps/aarch64/xilinx-versal/optramori.yml  |  22 ++
 .../bsps/aarch64/xilinx-versal/tstqemu.yml    |  19 ++
 .../bsps/aarch64/xilinx-versal/tstvck190.yml  |  19 ++
 spec/build/bsps/aarch64/xilinx-zynqmp/grp.yml |   2 +
 .../bsps/aarch64/xilinx-zynqmp/grp_zu3eg.yml  |   2 -
 40 files changed, 1633 insertions(+), 10 deletions(-)
 create mode 100644 bsps/aarch64/xilinx-versal/console/console.c
 create mode 100644 bsps/aarch64/xilinx-versal/dev/serial/versal-uart-polled.c
 create mode 100644 bsps/aarch64/xilinx-versal/include/bsp.h
 create mode 100644 bsps/aarch64/xilinx-versal/include/bsp/irq.h
 create mode 100644 bsps/aarch64/xilinx-versal/include/dev/serial/versal-uart-regs.h
 create mode 100644 bsps/aarch64/xilinx-versal/include/dev/serial/versal-uart.h
 create mode 100644 bsps/aarch64/xilinx-versal/include/tm27.h
 create mode 100644 bsps/aarch64/xilinx-versal/start/bspstart.c
 create mode 100644 bsps/aarch64/xilinx-versal/start/bspstarthooks.c
 create mode 100644 bsps/aarch64/xilinx-versal/start/bspstartmmu.c
 create mode 100644 spec/build/bsps/aarch64/optgtuseps.yml
 create mode 100644 spec/build/bsps/aarch64/optgtusevirt.yml
 create mode 100644 spec/build/bsps/aarch64/optisns.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/abi.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/bspqemuilp32.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/bspqemulp64.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/bspvck190ilp32.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/bspvck190lp64.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/grp.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/grp_qemu.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/grp_vck190.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/linkcmds_ilp32.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/linkcmds_lp64.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/obj.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/optclkuart.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/optconminor.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/optloadoff.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/optnocachelen.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/optramlen.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/optramori.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/tstqemu.yml
 create mode 100644 spec/build/bsps/aarch64/xilinx-versal/tstvck190.yml

-- 
2.25.1



More information about the devel mailing list