[PATCH RFC xenomai-images 0/5] Test riscv in xenomai-images CI
Tobias Schaffner <[email protected]>
| Newsgroups | dev.linux.lists.xenomai |
|---|---|
| Message-ID | <[email protected]> |
Hi all, This is the current state of RISC-V testing in the Xenomai Images CI. It runs the EVL test suite on both qemu-riscv64 as well as the StarFive VisionFive2. See the last successful run here: https://gitlab.com/Xenomai/xenomai-images/-/pipelines/2460891121 Open points for discussion I would like to gather your input: 1. While I have already proposed a patch for `evl test` that integrates an interface for running a stressor in the background during test execution, we do not have such a mechanism for latmus. Is there a plan to merge latmus into the evl command, as was recently done for hectic, or will it remain standalone? If it stays standalone: do we want to integrate stress command handling, or should we create some kind of wrapper? 2. I do not want to add a fully featured kernel config but would prefer either to provide only a defconfig or even set `KERNEL_DEFCONFIG` to "" to force a fallback to the kernel version’s defconfig, adding snippets for the features we want to enable, as I did for `nfs.cfg`. This is related to the "Rework linux-xenomai debug configuration" RFC I posted a while ago, where I analyzed how to factor out all debug options into a separate snippet to fix the inverted debug enablement logic without changing the resulting kernel config. However, I no longer think this is the right approach, as I do not want to pull in a large number of debug config switches that are unnecessary and only present in other architectures for historical reasons. I see that altering defconfigs carries the risk of breaking downstream setups, but at least for the debug part, I believe we should be able to arrange with a snippet smaller than 100 lines. 3. I had to pull in meta-isar to enable the use of the VisionFive2 BSP implementation, as I wanted to avoid duplicating it. The implementation in meta-isar is outdated and needs updates. While doing so, I will also add the second DTB. But is pulling in meta-isar an acceptable option at all? Looking forward to your feedback! Tobias Tobias Schaffner (5): ci: Build and test the evl risc-v port on qemu ci: Fix deploy script to handle multiple DTB files ci: Add the starfive visionfive2 board recipes-kernel: Move nfs boot configs to own snippet recipes-kernel: add debug additions to riscv64_defconfig ci/lib/gitlab-ci-base.yml | 59 +++- ci/lib/kernel/head.yml | 26 ++ conf/machine/qemu-riscv64.conf | 1 - conf/machine/visionfive2.conf | 18 + kas.yaml | 1 + kas/board/starfive-visionfive2.yaml | 15 + recipes-kernel/linux/files/amd64_defconfig | 6 - recipes-kernel/linux/files/arm64_defconfig | 6 - recipes-kernel/linux/files/armhf_defconfig | 6 - recipes-kernel/linux/files/common_nodbg.cfg | 2 + recipes-kernel/linux/files/nfs.cfg | 6 + recipes-kernel/linux/files/riscv64_defconfig | 328 +++++++++++++++++++ recipes-kernel/linux/linux-xenomai.inc | 1 + scripts/deploy_to_aws.sh | 9 +- tests/jobs/xenomai-qemu-riscv64.yml | 93 ++++++ tests/jobs/xenomai-starfive-visionfive2.yml | 69 ++++ 16 files changed, 617 insertions(+), 29 deletions(-) create mode 100644 conf/machine/visionfive2.conf create mode 100644 kas/board/starfive-visionfive2.yaml create mode 100644 recipes-kernel/linux/files/nfs.cfg create mode 100644 recipes-kernel/linux/files/riscv64_defconfig create mode 100644 tests/jobs/xenomai-qemu-riscv64.yml create mode 100644 tests/jobs/xenomai-starfive-visionfive2.yml -- 2.43.0