* 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 _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel