From bf0c70e8563226ba7c4776dc102910d5c18bfe53 Mon Sep 17 00:00:00 2001 From: Dmitry Baryshkov Date: Wed, 4 Feb 2026 20:37:53 +0200 Subject: [PATCH] Create meta-qcom-distro as a copy of meta-qcom In preparation for meta-qcom-distro support, copy non-generic files and create necessary symlinks pointing to meta-qcom, ensuring that tests at meta-qcom and meta-qcom-distro can run the same tests. Signed-off-by: Dmitry Baryshkov --- .../projects/meta-qcom-distro/README.md | 21 +++++++ .../meta-qcom-distro/devices/dragonboard-410c | 1 + .../meta-qcom-distro/devices/dragonboard-820c | 1 + .../meta-qcom-distro/devices/dragonboard-845c | 1 + .../meta-qcom-distro/devices/qcs404-evb-1k | 1 + .../meta-qcom-distro/devices/qcs404-evb-4k | 1 + .../meta-qcom-distro/devices/sdm845-mtp | 1 + .../meta-qcom-distro/devices/sm8150-mtp | 1 + .../meta-qcom-distro/devices/sm8250-mtp | 1 + .../meta-qcom-distro/devices/sm8350-mtp | 1 + .../projects/meta-qcom-distro/fastboot.jinja2 | 56 +++++++++++++++++++ .../projects/meta-qcom-distro/flasher.jinja2 | 20 +++++++ .../include/auth-header.jinja2 | 1 + .../include/meta-qcom-distro-metadata.jinja2 | 1 + ...ta-qcom-distro-qcom-distro-metadata.jinja2 | 1 + .../variables-db845c-rootfs.ini | 30 ++++++++++ .../projects/meta-qcom-distro/variables.ini | 23 ++++++++ .../projects/meta-qcom-distro/variables.yaml | 38 +++++++++++++ .../qcom-distro/boot/boot.yaml | 1 + .../pre-merge/pre-merge-basic.yaml | 1 + .../qcom-distro/pre-merge/pre-merge-bt.yaml | 1 + 21 files changed, 203 insertions(+) create mode 100644 lava_test_plans/projects/meta-qcom-distro/README.md create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-410c create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-820c create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-845c create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/qcs404-evb-1k create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/qcs404-evb-4k create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/sdm845-mtp create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/sm8150-mtp create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/sm8250-mtp create mode 120000 lava_test_plans/projects/meta-qcom-distro/devices/sm8350-mtp create mode 100644 lava_test_plans/projects/meta-qcom-distro/fastboot.jinja2 create mode 100644 lava_test_plans/projects/meta-qcom-distro/flasher.jinja2 create mode 120000 lava_test_plans/projects/meta-qcom-distro/include/auth-header.jinja2 create mode 120000 lava_test_plans/projects/meta-qcom-distro/include/meta-qcom-distro-metadata.jinja2 create mode 120000 lava_test_plans/projects/meta-qcom-distro/include/meta-qcom-distro-qcom-distro-metadata.jinja2 create mode 100644 lava_test_plans/projects/meta-qcom-distro/variables-db845c-rootfs.ini create mode 100644 lava_test_plans/projects/meta-qcom-distro/variables.ini create mode 100644 lava_test_plans/projects/meta-qcom-distro/variables.yaml create mode 120000 lava_test_plans/testplans/meta-qcom-distro/qcom-distro/boot/boot.yaml create mode 120000 lava_test_plans/testplans/meta-qcom-distro/qcom-distro/pre-merge/pre-merge-basic.yaml create mode 100644 lava_test_plans/testplans/meta-qcom-distro/qcom-distro/pre-merge/pre-merge-bt.yaml diff --git a/lava_test_plans/projects/meta-qcom-distro/README.md b/lava_test_plans/projects/meta-qcom-distro/README.md new file mode 100644 index 00000000..6e4b222a --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/README.md @@ -0,0 +1,21 @@ +# Qualcomm Landing Team LAVA test plans + +## Brief + +The Qualcomm Landing Team supports testing of the Kernel and Distros (Debian/OE RPB) using this set of templates. + +These LAVA templates are based on LKFT fastboot and extends to add LXC support, We are planning to migrate to docker but +certain tasks needs to be done like create docker image to access QCOM remote lab boards (qcs-4k-* and sdm845-mtp). + +## Testing + +For generate example of LAVA jobs manually, + + +Kernel bootrr ramdisk based testing, + +$ python3 -m lava_test_plans --variables projects/lt-qcom/variables.ini --testplan-device-path projects/lt-qcom/devices --device-type dragonboard-410c --dry-run --verbose 1 --test-case testcases/kernel-bootrr.yaml + +Kernel rootfs based testing, + +$ python3 -m lava_test_plans --variables projects/lt-qcom/variables-db845c-rootfs.ini --testplan-device-path projects/lt-qcom/devices --device-type dragonboard-845c --dry-run --verbose 1 --test-case testcases/kernel-smoke.yaml diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-410c b/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-410c new file mode 120000 index 00000000..6f7d0974 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-410c @@ -0,0 +1 @@ +../../meta-qcom/devices/dragonboard-410c \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-820c b/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-820c new file mode 120000 index 00000000..81cb534a --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-820c @@ -0,0 +1 @@ +../../meta-qcom/devices/dragonboard-820c \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-845c b/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-845c new file mode 120000 index 00000000..28fad849 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/dragonboard-845c @@ -0,0 +1 @@ +../../meta-qcom/devices/dragonboard-845c \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/qcs404-evb-1k b/lava_test_plans/projects/meta-qcom-distro/devices/qcs404-evb-1k new file mode 120000 index 00000000..ef5dd36a --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/qcs404-evb-1k @@ -0,0 +1 @@ +../../meta-qcom/devices/qcs404-evb-1k \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/qcs404-evb-4k b/lava_test_plans/projects/meta-qcom-distro/devices/qcs404-evb-4k new file mode 120000 index 00000000..e20cdb75 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/qcs404-evb-4k @@ -0,0 +1 @@ +../../meta-qcom/devices/qcs404-evb-4k \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/sdm845-mtp b/lava_test_plans/projects/meta-qcom-distro/devices/sdm845-mtp new file mode 120000 index 00000000..de4ea338 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/sdm845-mtp @@ -0,0 +1 @@ +../../meta-qcom/devices/sdm845-mtp \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/sm8150-mtp b/lava_test_plans/projects/meta-qcom-distro/devices/sm8150-mtp new file mode 120000 index 00000000..f2a9e6d8 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/sm8150-mtp @@ -0,0 +1 @@ +../../meta-qcom/devices/sm8150-mtp \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/sm8250-mtp b/lava_test_plans/projects/meta-qcom-distro/devices/sm8250-mtp new file mode 120000 index 00000000..8af1f499 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/sm8250-mtp @@ -0,0 +1 @@ +../../meta-qcom/devices/sm8250-mtp \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/devices/sm8350-mtp b/lava_test_plans/projects/meta-qcom-distro/devices/sm8350-mtp new file mode 120000 index 00000000..4d2f074b --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/devices/sm8350-mtp @@ -0,0 +1 @@ +../../meta-qcom/devices/sm8350-mtp \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/fastboot.jinja2 b/lava_test_plans/projects/meta-qcom-distro/fastboot.jinja2 new file mode 100644 index 00000000..5c0c633b --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/fastboot.jinja2 @@ -0,0 +1,56 @@ +{% extends "include/fastboot.jinja2" %} + +{% set DEPLOY_TARGET = DEPLOY_TARGET|default("fastboot") %} +{% set download_postprocess_required = false %} +{% set DEPLOY_OS = "" %} +{% set BUILD_OS = BUILD_OS|default("poky-altcfg") %} +{% set BUILD_MACHINE = BUILD_MACHINE|default("qcom-armv8a") %} +{% set DOCKER_IMAGE_POSTPROCESS = DOCKER_IMAGE_POSTPROCESS|default("ghcr.io/foundriesio/lava-lmp-sign:main") %} +{% set BOOT_LABEL = "boot" %} +{% set BOOT_URL = "downloads://" + BOOT_IMG_FILE %} +{% set ROOTFS_URL = "downloads://" + ROOTFS_IMG_FILE + ".img" %} +{% set ROOTFS_URL_COMP = null %} +{% set target_deploy_timeout = 15 %} +{% set use_download_headers = use_download_headers|default(false) %} + +{% block metadata %} + source: https://github.com/Linaro/lava-test-plans.git + path: projects/meta-qcom-distro/ +{% if OS_INFO %} +{% include PROJECT+"include/meta-qcom-distro-"+OS_INFO+"-metadata.jinja2" %} +{% else %} +{% include PROJECT+"include/meta-qcom-distro-metadata.jinja2" %} +{% endif %} +{% endblock metadata %} + +{% block deploy_target %} +- deploy: + timeout: + minutes: {{ target_downloads_timeout }} + to: downloads + images: + boot: +{% if use_download_headers %} + {% include PROJECT+"include/auth-header.jinja2" %} +{% endif %} + url: "{{ BUILD_DOWNLOAD_URL }}/{{ BUILD_OS }}/{{ BUILD_MACHINE }}/{{ BOOT_IMG_FILE }}" + rootfs: +{% if use_download_headers %} + {% include PROJECT+"include/auth-header.jinja2" %} +{% endif %} + url: "{{ BUILD_DOWNLOAD_URL }}/{{ BUILD_OS }}/{{ BUILD_MACHINE }}/{{ ROOTFS_IMG_FILE }}.gz" + compression: gz + postprocess: + docker: + image: {{ DOCKER_IMAGE_POSTPROCESS }} + steps: + - export IMAGE_PATH=$PWD + - img2simg {{ ROOTFS_IMG_FILE }} {{ ROOTFS_IMG_FILE }}.img +{{ super() }} +{% endblock deploy_target %} + +{% block pre_boot_command %} +{% endblock pre_boot_command %} + +{% block post_boot_command %} +{% endblock post_boot_command %} diff --git a/lava_test_plans/projects/meta-qcom-distro/flasher.jinja2 b/lava_test_plans/projects/meta-qcom-distro/flasher.jinja2 new file mode 100644 index 00000000..e2c84bf3 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/flasher.jinja2 @@ -0,0 +1,20 @@ +{% extends "include/flasher.jinja2" %} + +{% block deploy_target %} +{{ super() }} +{% endblock deploy_target %} + +{% block metadata %} + source: https://github.com/Linaro/lava-test-plans.git + path: projects/meta-qcom-distro/ +{% if OS_INFO %} +{% include PROJECT+"include/meta-qcom-distro-"+OS_INFO+"-metadata.jinja2" %} +{% else %} +{% include PROJECT+"include/meta-qcom-distro-metadata.jinja2" %} +{% endif %} +{% endblock metadata %} + +{% block context %} + lava_test_results_dir: /home/lava-%s + test_character_delay: 10 +{% endblock context %} diff --git a/lava_test_plans/projects/meta-qcom-distro/include/auth-header.jinja2 b/lava_test_plans/projects/meta-qcom-distro/include/auth-header.jinja2 new file mode 120000 index 00000000..702035f5 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/include/auth-header.jinja2 @@ -0,0 +1 @@ +../../../include/auth-header.jinja2 \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/include/meta-qcom-distro-metadata.jinja2 b/lava_test_plans/projects/meta-qcom-distro/include/meta-qcom-distro-metadata.jinja2 new file mode 120000 index 00000000..3796180e --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/include/meta-qcom-distro-metadata.jinja2 @@ -0,0 +1 @@ +../../meta-qcom/include/meta-qcom-metadata.jinja2 \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/include/meta-qcom-distro-qcom-distro-metadata.jinja2 b/lava_test_plans/projects/meta-qcom-distro/include/meta-qcom-distro-qcom-distro-metadata.jinja2 new file mode 120000 index 00000000..4a2ac90d --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/include/meta-qcom-distro-qcom-distro-metadata.jinja2 @@ -0,0 +1 @@ +../../meta-qcom/include/meta-qcom-poky-altcfg-metadata.jinja2 \ No newline at end of file diff --git a/lava_test_plans/projects/meta-qcom-distro/variables-db845c-rootfs.ini b/lava_test_plans/projects/meta-qcom-distro/variables-db845c-rootfs.ini new file mode 100644 index 00000000..d2c62623 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/variables-db845c-rootfs.ini @@ -0,0 +1,30 @@ +PROJECT_NAME=meta-qcom-distro +PROJECT=projects/meta-qcom-distro/ +LAVA_JOB_PRIORITY=high +BUILD_NUMBER=738 +BOOT_URL=https://snapshots.linaro.org/member-builds/qcomlt/linux-integration/sdm845-db845c/738/boot-rootfs-linux-integration-v5.11-rc5-319-g2d623fc6ac5c-738-sdm845-db845c.img +BOOT_URL_COMP= +LXC_BOOT_FILE=boot-rootfs-linux-integration-v5.11-rc5-319-g2d623fc6ac5c-738-sdm845-db845c.img +PTABLE_URL=https://images.validation.linaro.org/snapshots.linaro.org/96boards/dragonboard845c/linaro/rescue/28/dragonboard-845c-bootloader-ufs-linux-28/gpt_both0.bin +LXC_PTABLE_FILE=gpt_both0.bin +ROOTFS_URL=https://snapshots.linaro.org/member-builds/qcomlt/linux-integration/sdm845-db845c/738/rpb-console-image-test-qemuarm64-20210124073924-672.rootfs.img.gz +ROOTFS_URL_COMP=gz +LXC_ROOTFS_FILE=rpb-console-image-test-qemuarm64-20210124073924-672.rootfs.img +DEPLOY_OS=oe +OS_INFO=kernel +BOOT_OS_PROMPT=root@qemuarm64:~# +FASTBOOT_COMMANDS=oem select-display-panel none, reboot + +KERNEL_BRANCH=integration-linux-qcomlt +KERNEL_REPO=https://git.linaro.org/landing-teams/working/qualcomm/kernel.git/ +KERNEL_COMMIT=latest +KERNEL_DESCRIBE=v5.11-rc5-319-g2d623fc6ac5c +KERNEL_CONFIG=defconfig distro.config +TOOLCHAIN=unknown +BUILD_URL=https://ci.linaro.org/job/meta-qcom-distro-linux-integration/738/MACHINE=sdm845-db845c,label=docker-stretch-amd64/ + +# QCOM test variables +SMOKE_TESTS="pwd, uname -a, ip a, vmstat, lsblk, lscpu" +WLAN_DEVICE=wlan0 +ETH_DEVICE=eth0 + diff --git a/lava_test_plans/projects/meta-qcom-distro/variables.ini b/lava_test_plans/projects/meta-qcom-distro/variables.ini new file mode 100644 index 00000000..321de1c6 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/variables.ini @@ -0,0 +1,23 @@ +PROJECT_NAME=meta-qcom-distro +PROJECT=projects/meta-qcom-distro/ +LAVA_JOB_PRIORITY=high +BUILD_NUMBER=738 +BOOT_URL=https://snapshots.linaro.org/member-builds/qcomlt/linux-integration/apq8016-sbc/738/boot-linux-integration-v5.11-rc5-319-g2d623fc6ac5c-738-apq8016-sbc.img +BOOT_URL_COMP= +LXC_BOOT_FILE=boot-linux-integration-v5.11-rc5-319-g2d623fc6ac5c-738-apq8016-sbc.img +ROOTFS_URL= +ROOTFS_URL_COMP= +LXC_ROOTFS_FILE= +DEPLOY_OS=oe +OS_INFO=kernel +BOOT_OS_PROMPT=root@qemuarm64:~# +KERNEL_BRANCH=integration-linux-qcomlt +KERNEL_REPO=https://git.linaro.org/landing-teams/working/qualcomm/kernel.git/ +KERNEL_COMMIT=latest +KERNEL_DESCRIBE=v5.11-rc5-319-g2d623fc6ac5c +KERNEL_CONFIG=defconfig distro.config +TOOLCHAIN=unknown +BUILD_URL=https://ci.linaro.org/job/meta-qcom-distro-linux-integration/738/MACHINE=apq8016-sbc,label=docker-stretch-amd64/ +# Audio test variables (generate AUDIO_CLIPS_URL with: aws s3 presign s3://qcom-prd-gh-artifacts/qualcomm-linux/test-media-assets/AudioClips.tar.gz --expires-in 196000) +AUDIO_CLIPS_URL= +AUDIO_CLIPS_BASE_DIR=/home/AudioClips/ diff --git a/lava_test_plans/projects/meta-qcom-distro/variables.yaml b/lava_test_plans/projects/meta-qcom-distro/variables.yaml new file mode 100644 index 00000000..affc7d71 --- /dev/null +++ b/lava_test_plans/projects/meta-qcom-distro/variables.yaml @@ -0,0 +1,38 @@ +"PROJECT_NAME": "test" +"LAVA_JOB_PRIORITY": "99" +"BUILD_NUMBER": "123" +"BOOT_URL": "boot-url" +# QCOM variables +"BOOT_URL_COMP": "gz" +"BOOT_IMG_FILE": "boot-apq8096-db820c-qcom-armv8a.img" +"ROOTFS_IMG_FILE": "variable-value" +"ROOTFS_URL": "variable-value" +"BUILD_DOWNLOAD_URL": "variable-value" +"# ROOTFS_URL_FORMAT": "variable-value" +"ROOTFS_URL_COMP": "xz" +"DEPLOY_OS": "variable-value" +"DOCKER_ROOTFS_FILE": "docker-rootfs-file" +"BOOT_OS_PROMPT": "variable-value" +"SMOKE_TESTS": "variable-value" +"PM_QA_TESTS": "pm-qa-tests" +"DOCKER_BOOT_FILE": "docker-boot" +"WLAN_DEVICE": "variable-value" +"ETH_DEVICE": "variable-value" +"WIFI_SSID_NAME": "variable-value" +"WIFI_SSID_PASSWORD": "variable-value" +"WLAN_TIME_DELAY": "wlan-time-delay" +"GST_IGNORE_TESTS_REPO": "variable-value" +"GST_IGNORE_TESTS_FILE": "variable-value" +"PTEST_EXCLUDE": "variable-value" +"QA_SERVER_PROJECT": "qa-server-project" +"PROJECT": "projects/meta-qcom-distro/" +"LXC_BOOT_FILE": "" +"LXC_ROOTFS_FILE": "" +"VIDEO_DEVICES" : {"/dev/video0": "venus-encoder", "/dev/video1": "venus-decoder"} +"KERNEL_BRANCH": "variable-value" +"KERNEL_REPO": "variable-value" +"KERNEL_COMMIT": "variable-value" +"KERNEL_DESCRIBE": "variable-value" +"KERNEL_CONFIG": "defconfig" +"TOOLCHAIN": "unknown" +"BUILD_URL": "https://some-url" diff --git a/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/boot/boot.yaml b/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/boot/boot.yaml new file mode 120000 index 00000000..ce7d73fc --- /dev/null +++ b/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/boot/boot.yaml @@ -0,0 +1 @@ +../../../../testcases/boot.yaml \ No newline at end of file diff --git a/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/pre-merge/pre-merge-basic.yaml b/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/pre-merge/pre-merge-basic.yaml new file mode 120000 index 00000000..fd9626ca --- /dev/null +++ b/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/pre-merge/pre-merge-basic.yaml @@ -0,0 +1 @@ +../../../../testcases/pre-merge-basic.yaml \ No newline at end of file diff --git a/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/pre-merge/pre-merge-bt.yaml b/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/pre-merge/pre-merge-bt.yaml new file mode 100644 index 00000000..69defb24 --- /dev/null +++ b/lava_test_plans/testplans/meta-qcom-distro/qcom-distro/pre-merge/pre-merge-bt.yaml @@ -0,0 +1 @@ +../../../../testcases/pre-merge-bt.yaml \ No newline at end of file