[PATCH RFC xenomai-images 3/5] ci: Add the starfive visionfive2 board
Tobias Schaffner <[email protected]>
| Newsgroups | dev.linux.lists.xenomai |
|---|---|
| Message-ID | <[email protected]> |
Add everything needed to run the evl tests on the starfive visionfive2 board in the xenomai-images lava lab. Signed-off-by: Tobias Schaffner <[email protected]> --- ci/lib/gitlab-ci-base.yml | 21 +++++++ ci/lib/kernel/head.yml | 13 ++++ conf/machine/visionfive2.conf | 18 ++++++ kas.yaml | 1 + kas/board/starfive-visionfive2.yaml | 15 +++++ tests/jobs/xenomai-starfive-visionfive2.yml | 69 +++++++++++++++++++++ 6 files changed, 137 insertions(+) create mode 100644 conf/machine/visionfive2.conf create mode 100644 kas/board/starfive-visionfive2.yaml create mode 100644 tests/jobs/xenomai-starfive-visionfive2.yml diff --git a/ci/lib/gitlab-ci-base.yml b/ci/lib/gitlab-ci-base.yml index aaeb778..e297f54 100644 --- a/ci/lib/gitlab-ci-base.yml +++ b/ci/lib/gitlab-ci-base.yml @@ -227,3 +227,24 @@ default: resource_group: board-x86-64-efi variables: TARGET: x86-64-efi + +.build:starfive-visionfive2: + extends: .build + variables: + TARGET: starfive-visionfive2 + CACHE_ARCH: riscv64 + rules: + - if: '$XENOMAI_VERSION != "4-next"' + when: never + - when: always + +.lava-test:starfive-visionfive2: + extends: .test + resource_group: board-starfive-visionfive2 + variables: + TARGET: starfive-visionfive2 + EVL_TESTS_SKIP_PATTERN: "ptrace-sync" + rules: + - if: '$XENOMAI_VERSION != "4-next"' + when: never + - if: '$LAVA_TESTS_ENABLED == "true"' diff --git a/ci/lib/kernel/head.yml b/ci/lib/kernel/head.yml index e2884c2..e5af966 100644 --- a/ci/lib/kernel/head.yml +++ b/ci/lib/kernel/head.yml @@ -61,6 +61,19 @@ lava-test-head:qemu-riscv64: variables: KERNEL_VERSION: "head" +build-head:starfive-visionfive2: + extends: .build:starfive-visionfive2 + variables: + LINUX_BUILD_OPTION: ":kas/opt/linux-head.yaml" + KERNEL_VERSION: "head" + CACHE_KERNEL: evl + +lava-test-head:starfive-visionfive2: + needs: [ "build-head:starfive-visionfive2" ] + extends: .lava-test:starfive-visionfive2 + variables: + KERNEL_VERSION: "head" + build-head:rpi4: extends: .build:rpi4 variables: diff --git a/conf/machine/visionfive2.conf b/conf/machine/visionfive2.conf new file mode 100644 index 0000000..ff42ecc --- /dev/null +++ b/conf/machine/visionfive2.conf @@ -0,0 +1,18 @@ +# +# Xenomai Real-Time System +# +# Copyright (c) Siemens AG, 2026 +# +# Authors: +# Tobias Schaffner <[email protected]> +# +# SPDX-License-Identifier: MIT +# + +require conf/machine/starfive-visionfive2.conf + +MACHINE = "starfive-visionfive2" + +DTB_FILES = "\ + starfive/jh7110-starfive-visionfive-2-v1.2a.dtb \ + starfive/jh7110-starfive-visionfive-2-v1.3b.dtb" diff --git a/kas.yaml b/kas.yaml index f856ae1..875132b 100644 --- a/kas.yaml +++ b/kas.yaml @@ -25,6 +25,7 @@ repos: commit: 9792d18e9334b3cec72e2ade6a1065084c0c24d6 layers: meta: + meta-isar: bblayers_conf_header: standard: | diff --git a/kas/board/starfive-visionfive2.yaml b/kas/board/starfive-visionfive2.yaml new file mode 100644 index 0000000..4b38ef0 --- /dev/null +++ b/kas/board/starfive-visionfive2.yaml @@ -0,0 +1,15 @@ +# +# Xenomai Real-Time System +# +# Copyright (c) Siemens AG, 2026 +# +# Authors: +# Tobias Schaffner <[email protected]> +# +# SPDX-License-Identifier: MIT +# + +header: + version: 14 + +machine: visionfive2 diff --git a/tests/jobs/xenomai-starfive-visionfive2.yml b/tests/jobs/xenomai-starfive-visionfive2.yml new file mode 100644 index 0000000..6155fdf --- /dev/null +++ b/tests/jobs/xenomai-starfive-visionfive2.yml @@ -0,0 +1,69 @@ +# +# Xenomai Real-Time System +# +# Copyright (c) Siemens AG, 2026 +# +# Authors: +# Tobias Schaffner <[email protected]> +# +# SPDX-License-Identifier: MIT +# +job_name: xenomai-test-suite +device_type: starfive-visionfive2 + +timeouts: + job: + minutes: 90 + action: + minutes: 65 + connection: + minutes: 5 +priority: medium +visibility: public + +metadata: + docs-source: xenomai-starfive-visionfive2 + docs-filename: pipeline-xenomai-starfive-visionfive2 +# ACTION_BLOCK +actions: +- deploy: + timeout: + minutes: 30 + to: tftp + kernel: + url: ${DEPLOY_URL}/${ISAR_IMAGE}-${ISAR_DISTRIBUTION}-${TARGET}-vmlinux + type: image + dtb: + url: ${DEPLOY_URL}/jh7110-starfive-visionfive-2-v1.2a.dtb + nfsrootfs: + url: ${DEPLOY_URL}/${ISAR_IMAGE}-${ISAR_DISTRIBUTION}-${TARGET}.tar.gz + compression: gz +# BOOT_BLOCK +- boot: + failure_retry: 3 + timeout: + minutes: 5 + method: u-boot + commands: nfs + prompts: ["root@demo:"] + auto_login: + login_prompt: 'demo login:' + username: root + password_prompt: 'Password:' + password: root + +- test: + timeout: + minutes: ${TEST_TIMEOUT_MINUTES} + definitions: + - repository: + metadata: + format: Lava-Test Test Definition 1.0 + name: xenomai-test-suite + description: "runs the xenomai test suite" + run: + steps: + - ${TEST_COMMAND} || lava-test-raise "xenomai-test failed!" + from: inline + path: inline/xenomai-test-suite.yaml + name: xenomai-test-suite -- 2.43.0