diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 94fa8830169..13b544b8b12 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -686,14 +686,6 @@ arm64_a630_gles3: variables: DEQP_VER: gles3 -arm64_a306_gles2: - extends: arm64_a630_gles2 - variables: - DEQP_EXPECTED_FAILS: deqp-freedreno-a307-fails.txt - DEQP_SKIPS: deqp-default-skips.txt - tags: - - db410c - # RADV CI .test-radv: variables: diff --git a/.gitlab-ci/deqp-freedreno-a307-skips.txt b/.gitlab-ci/deqp-freedreno-a307-skips.txt new file mode 100644 index 00000000000..f7d0cd59a90 --- /dev/null +++ b/.gitlab-ci/deqp-freedreno-a307-skips.txt @@ -0,0 +1,10 @@ +# Note: skips lists for CI are just a list of lines that, when +# non-zero-length and not starting with '#', will regex match to +# delete lines from the test list. Be careful. + +# Skip the perf/stress tests to keep runtime manageable +dEQP-GLES[0-9]*.performance.* +dEQP-GLES[0-9]*.stress.* + +# These are really slow on tiling architectures (including llvmpipe). +dEQP-GLES[0-9]*.functional.flush_finish.* diff --git a/.gitlab-ci/lava-deqp.yml.jinja2 b/.gitlab-ci/lava-deqp.yml.jinja2 index a46e3558c07..6e6620e221f 100644 --- a/.gitlab-ci/lava-deqp.yml.jinja2 +++ b/.gitlab-ci/lava-deqp.yml.jinja2 @@ -20,6 +20,13 @@ actions: - deploy: timeout: minutes: 10 +{% if boot_method == "fastboot" %} +{# fastboot has just one boot image with the dtb and rootfs packed in #} + to: fastboot + images: + boot: + url: {{ base_artifacts_url }}/{{ kernel_image_name }} +{% else %} to: tftp kernel: url: {{ base_artifacts_url }}/{{ kernel_image_name }} @@ -31,12 +38,23 @@ actions: compression: gz dtb: url: {{ base_artifacts_url }}/{{ device_type }}.dtb +{% endif %} os: oe - boot: timeout: minutes: 5 method: {{ boot_method }} +{% if boot_method == "fastboot" %} +{# + For fastboot, LAVA doesn't know how to unpack the rootfs/apply overlay/repack, + so we transfer the overlay over the network after boot. +#} + transfer_overlay: + download_command: wget -S --progress=dot:giga + unpack_command: tar -C / -xzf +{% else %} commands: ramdisk +{% endif %} prompts: - 'lava-shell:' - test: @@ -56,7 +74,7 @@ actions: steps: - mount -t proc none /proc - mount -t sysfs none /sys - - mount -t devtmpfs none /dev + - mount -t devtmpfs none /dev || echo possibly already mounted - mkdir -p /dev/pts - mount -t devpts devpts /dev/pts diff --git a/.gitlab-ci/lava-gitlab-ci.yml b/.gitlab-ci/lava-gitlab-ci.yml index ea67546aac4..9e008508793 100644 --- a/.gitlab-ci/lava-gitlab-ci.yml +++ b/.gitlab-ci/lava-gitlab-ci.yml @@ -139,3 +139,14 @@ lima-mali450-test:arm64: ENV_VARS: "DEQP_PARALLEL=6" tags: - lava-meson-gxl-s905x-libretech-cc + +freedreno-a307-gles2: + extends: .lava-test:arm64 + variables: + DEVICE_TYPE: apq8016-sbc + GPU_VERSION: freedreno-a307 + ENV_VARS: "DEQP_PARALLEL=4" + KERNEL_IMAGE_NAME: db410c.img + BOOT_METHOD: fastboot + tags: + - lava-mesa-db410c diff --git a/.gitlab-ci/prepare-artifacts.sh b/.gitlab-ci/prepare-artifacts.sh index e0c0eb8cb8a..1d259ada8c4 100755 --- a/.gitlab-ci/prepare-artifacts.sh +++ b/.gitlab-ci/prepare-artifacts.sh @@ -53,6 +53,17 @@ if [ -d /lava-files ]; then find -H | cpio -H newc -o | gzip -c - > $CI_PROJECT_DIR/artifacts/lava-rootfs-${CROSS:-arm64}.cpio.gz popd + if [ -z "$CROSS" ]; then + gzip -c artifacts/Image > Image.gz + cat Image.gz artifacts/apq8016-sbc.dtb > Image.gz-dtb + abootimg \ + --create artifacts/db410c.img \ + -k Image.gz-dtb \ + -r artifacts/lava-rootfs-${CROSS:-arm64}.cpio.gz \ + -c cmdline="ip=dhcp console=ttyMSM0,115200n8" + rm Image.gz Image.gz-dtb + fi + # Store job ID so the test stage can build URLs to the artifacts echo $CI_JOB_ID > artifacts/build_job_id.txt