DEFCONFIG="arch/arm64/configs/defconfig"
DEVICE_TREES="arch/arm64/boot/dts/rockchip/rk3399-gru-kevin.dtb arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dtb arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dtb arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dtb arch/arm64/boot/dts/qcom/apq8016-sbc.dtb"
KERNEL_IMAGE_NAME="Image"
-else
+elif [[ "$DEBIAN_ARCH" = "armhf" ]]; then
GCC_ARCH="arm-linux-gnueabihf"
KERNEL_ARCH="arm"
DEFCONFIG="arch/arm/configs/multi_v7_defconfig"
DEVICE_TREES="arch/arm/boot/dts/rk3288-veyron-jaq.dtb arch/arm/boot/dts/sun8i-h3-libretech-all-h3-cc.dtb"
KERNEL_IMAGE_NAME="zImage"
. .gitlab-ci/create-cross-file.sh armhf
+else
+ GCC_ARCH="x86_64-linux-gnu"
+ KERNEL_ARCH="x86_64"
+ DEFCONFIG="arch/x86/configs/x86_64_defconfig"
+ DEVICE_TREES=""
+ KERNEL_IMAGE_NAME="bzImage"
fi
# Determine if we're in a cross build.
rm -rf /renderdoc
+############### Build libdrm
+EXTRA_MESON_ARGS+=" -D prefix=/libdrm"
+. .gitlab-ci/build-libdrm.sh
+mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/usr/lib/$GCC_ARCH
+find /libdrm/ -name lib\*\.so\* | xargs cp -t /lava-files/rootfs-${DEBIAN_ARCH}/usr/lib/$GCC_ARCH/.
+rm -rf /libdrm
+
+
############### Cross-build kernel
mkdir -p kernel
wget -qO- ${KERNEL_URL} | tar -xz --strip-components=1 -C kernel
pushd kernel
./scripts/kconfig/merge_config.sh ${DEFCONFIG} ../.gitlab-ci/${KERNEL_ARCH}.config
-make ${KERNEL_IMAGE_NAME} dtbs
+make ${KERNEL_IMAGE_NAME}
for image in ${KERNEL_IMAGE_NAME}; do
cp arch/${KERNEL_ARCH}/boot/${image} /lava-files/.
done
-cp ${DEVICE_TREES} /lava-files/.
+if [[ -n ${DEVICE_TREES} ]]; then
+ make dtbs
+ cp ${DEVICE_TREES} /lava-files/.
+fi
if [[ ${DEBIAN_ARCH} = "arm64" ]] && which mkimage > /dev/null; then
make Image.lzma
set -e
cp .gitlab-ci/create-rootfs.sh /lava-files/rootfs-${DEBIAN_ARCH}/.
+cp .gitlab-ci/container/llvm-snapshot.gpg.key /lava-files/rootfs-${DEBIAN_ARCH}/.
chroot /lava-files/rootfs-${DEBIAN_ARCH} sh /create-rootfs.sh
rm /lava-files/rootfs-${DEBIAN_ARCH}/create-rootfs.sh
+rm /lava-files/rootfs-${DEBIAN_ARCH}/llvm-snapshot.gpg.key
+du -ah /lava-files/rootfs-${DEBIAN_ARCH} | sort -h | tail -100
pushd /lava-files/rootfs-${DEBIAN_ARCH}
find -H | cpio -H newc -o | gzip -c - > /lava-files/lava-rootfs.cpio.gz
popd
if [ -n "$UPLOAD_FOR_LAVA" ]; then
ci-fairy minio login $CI_JOB_JWT
FILES_TO_UPLOAD="lava-rootfs.cpio.gz \
- $KERNEL_IMAGE_NAME \
- $(basename -a $DEVICE_TREES)"
+ $KERNEL_IMAGE_NAME"
+
+ if [[ -n $DEVICE_TREES ]]; then
+ FILES_TO_UPLOAD="$FILES_TO_UPLOAD $(basename -a $DEVICE_TREES)"
+ fi
for f in $FILES_TO_UPLOAD; do
ci-fairy minio cp /lava-files/$f \
variables:
- DISTRIBUTION_TAG: "2020-07-28"
+ DISTRIBUTION_TAG: "2020-07-28-x86"
.kernel+rootfs:
stage: container-2
KERNEL_URL: "https://gitlab.freedesktop.org/tomeu/linux/-/archive/v5.5-panfrost-fixes/linux-v5.5-panfrost-fixes.tar.gz"
UPLOAD_FOR_LAVA: 1
script:
- - .gitlab-ci/container/lava_arm.sh
+ - .gitlab-ci/container/lava_build.sh
+
+kernel+rootfs_amd64:
+ extends:
+ - .use-x86_build-base
+ - .kernel+rootfs
+ image: "$CI_REGISTRY_IMAGE/debian/x86_build-base:$BASE_TAG"
+ variables:
+ DEBIAN_ARCH: "amd64"
kernel+rootfs_arm64:
extends:
--base-artifacts-url ${ARTIFACTS_URL} \
--mesa-url ${MESA_URL} \
--device-type ${DEVICE_TYPE} \
+ --dtb ${DTB} \
--env-vars "${ENV_VARS} ${FIXED_ENV_VARS}" \
--deqp-version ${DEQP_VERSION} \
--kernel-image-name ${KERNEL_IMAGE_NAME} \
- kernel+rootfs_arm64
- meson-arm64
+.lava-test:amd64:
+ variables:
+ ARCH: amd64
+ KERNEL_IMAGE_NAME: bzImage
+ KERNEL_IMAGE_TYPE: "type:\ zimage"
+ BOOT_METHOD: u-boot
+ TEST_SUITE: "deqp"
+ extends:
+ - .lava-test
+ - .use-arm_build
+ needs:
+ - kernel+rootfs_amd64
+ - meson-testing
+
+.lava-traces:amd64:
+ variables:
+ TEST_SUITE: "tracie"
+ extends:
+ - .lava-test:amd64
+
.lava-traces:armhf:
variables:
TEST_SUITE: "tracie"
- .panfrost-rules
variables:
DEVICE_TYPE: sun50i-h6-pine-h64
+ DTB: ${DEVICE_TYPE}
GPU_VERSION: panfrost-t720
ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T720"
tags:
- .panfrost-rules
variables:
DEVICE_TYPE: rk3288-veyron-jaq
+ DTB: ${DEVICE_TYPE}
GPU_VERSION: panfrost-t760
BOOT_METHOD: depthcharge
KERNEL_IMAGE_TYPE: ""
- .panfrost-rules
variables:
DEVICE_TYPE: rk3288-veyron-jaq
+ DTB: ${DEVICE_TYPE}
GPU_VERSION: panfrost-t760
BOOT_METHOD: depthcharge
KERNEL_IMAGE_TYPE: ""
- .panfrost-rules
variables:
DEVICE_TYPE: rk3399-gru-kevin
+ DTB: ${DEVICE_TYPE}
GPU_VERSION: panfrost-t860
BOOT_METHOD: depthcharge
KERNEL_IMAGE_TYPE: ""
- .panfrost-rules
variables:
DEVICE_TYPE: meson-gxm-khadas-vim2
+ DTB: ${DEVICE_TYPE}
GPU_VERSION: panfrost-t820
LAVA_TAGS: panfrost
ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T820"
- .lima-rules
variables:
DEVICE_TYPE: sun8i-h3-libretech-all-h3-cc
+ DTB: ${DEVICE_TYPE}
GPU_VERSION: lima
ENV_VARS: "DEQP_PARALLEL=3 DEQP_EXPECTED_RENDERER=Mali400"
tags:
- .lima-rules
variables:
DEVICE_TYPE: meson-gxl-s905x-libretech-cc
+ DTB: ${DEVICE_TYPE}
GPU_VERSION: lima
ENV_VARS: "DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=Mali450"
tags:
- mesa-ci-aarch64-lava-baylibre
+
+# Commented out while waiting for more DUTs to come online
+.radeonsi-stoney-gles2:amd64:
+ extends:
+ - .lava-test:amd64
+ - .radeonsi-rules
+ variables:
+ DEVICE_TYPE: hp-11A-G6-EE-grunt
+ DTB: ""
+ GPU_VERSION: radeonsi-stoney
+ BOOT_METHOD: depthcharge
+ KERNEL_IMAGE_TYPE: ""
+ ENV_VARS: "DEQP_PARALLEL=4 DEQP_EXPECTED_RENDERER=STONEY NIR_VALIDATE=0"
+ tags:
+ - mesa-ci-aarch64-lava-collabora
+
+# Commented out while waiting for more DUTs to come online
+.radeonsi-stoney-gles3:amd64:
+ extends:
+ - .radeonsi-stoney-gles2:amd64
+ variables:
+ DEQP_VERSION: gles3
+ tags:
+ - mesa-ci-aarch64-lava-collabora
+
+radeonsi-stoney-traces:amd64:
+ extends:
+ - .lava-traces:amd64
+ - .radeonsi-rules
+ variables:
+ DEVICE_TYPE: hp-11A-G6-EE-grunt
+ DTB: ""
+ GPU_VERSION: radeonsi-stoney
+ BOOT_METHOD: depthcharge
+ KERNEL_IMAGE_TYPE: ""
+ tags:
+ - mesa-ci-aarch64-lava-collabora
checksum: 95df5e619a36e88fe408e45567a2d149
- device: gl-panfrost-t760
checksum: 30663eac9a4767d26fbf9b6db9712d9f
+ - device: gl-radeonsi-stoney
+ checksum: 316650141be869c8afe76b42d3573b49
- path: glmark2/jellyfish.rdc
expectations:
- device: gl-vmware-llvmpipe
checksum: 1d609b089732be5b6e3e78370abcb149
- device: gl-panfrost-t760
checksum: f98ef9118eeaba660c15065dac46e580
+ - device: gl-radeonsi-stoney
+ checksum: 2c57f9d33489dd43c8807bd0f06c3ed8
- path: glxgears/glxgears-2.trace
expectations:
- device: gl-vmware-llvmpipe
checksum: bcc73608b6e2b5d92bf926d1c21889c7
- device: gl-panfrost-t760
checksum: bcc73608b6e2b5d92bf926d1c21889c7
+ - device: gl-radeonsi-stoney
+ checksum: eb9b3d497be567f02a6e039fa32f2b13
- path: KhronosGroup-Vulkan-Tools/amd/polaris10/vkcube.gfxr
expectations:
- device: vk-amd-polaris10
expectations:
- device: gl-vmware-llvmpipe
checksum: d76d0f5b5b064bba3e6a2a122c0799cf
+ - device: gl-radeonsi-stoney
+ checksum: bfd97a7190f2b9de24ddfd446fcc4850
- path: pathfinder/demo.trace
expectations:
- device: gl-vmware-llvmpipe
checksum: c4f5e6bfe0cba230b1aef631c2fa4584
- device: gl-panfrost-t760
checksum: c4f5e6bfe0cba230b1aef631c2fa4584
+ - device: gl-radeonsi-stoney
+ checksum: c81c85f9b247dd1b06c3dd5b669cc283
- path: pathfinder/canvas_moire.trace
expectations:
- device: gl-vmware-llvmpipe
checksum: 2fb2c8e83719526cb6c02b6c2e069d61
- device: gl-panfrost-t760
checksum: 2fb2c8e83719526cb6c02b6c2e069d61
+ - device: gl-radeonsi-stoney
+ checksum: 78dd2357ad6e5ffc049a75bfb11c5497
- path: pathfinder/canvas_text.trace
expectations:
- device: gl-vmware-llvmpipe
checksum: 939038749a5204ec2b1448d3b9208fb3
- device: gl-panfrost-t760
checksum: 939038749a5204ec2b1448d3b9208fb3
+ - device: gl-radeonsi-stoney
+ checksum: 56d1398206ceea45562f80f8ea9d3814
- path: gputest/furmark.trace
expectations:
- device: gl-vmware-llvmpipe
checksum: 87ffd45be95f2d55f82325c86ce32f20
- device: gl-panfrost-t860
checksum: dc4ece101ed145228840d1f0654118c6
+ - device: gl-radeonsi-stoney
+ checksum: 1c569668d608c644f353caa177d577c6
- path: gputest/pixmark-piano.trace
expectations:
- device: gl-vmware-llvmpipe
checksum: 022b43b7fff9e8623dcfcd91e6bbe7aa
- device: gl-virgl
checksum: 24eb95484e5b8288b3d5d65117c98641
+ - device: gl-radeonsi-stoney
+ checksum: 061226c3fd179c611b8d60acaa44474f
- path: gputest/triangle.trace
expectations:
- device: gl-vmware-llvmpipe
checksum: 6def0c34ade7d4ec930b45d0eef6e46a
- device: gl-panfrost-t760
checksum: 6def0c34ade7d4ec930b45d0eef6e46a
+ - device: gl-radeonsi-stoney
+ checksum: 2d0527e7288a0fc31099404546dadbfb
- path: humus/Portals.trace
expectations:
- device: gl-vmware-llvmpipe
checksum: 5415bbf2a69b605bb1052a0e0b0f7040
- device: gl-panfrost-t760
checksum: a41f53e9318cbd32c27b48d304df1ea6
+ - device: gl-radeonsi-stoney
+ checksum: b6f00f39566152c3c8462903b7a1f258
+ - path: glmark2/buffer-columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: ee76b7ffb344d545ee22c1b83d61f893
+ - path: glmark2/buffer-columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 8f90923d9b9daf7b3708f10b3b019af8
+ - path: glmark2/buffer-columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: db55995d943f1284c39637a116ceb645
+ - path: glmark2/bump-bump-render=height.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: da75c0dfbcb27b44fbaed15b2f29509c
+ - path: glmark2/bump-bump-render=high-poly.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: e2e83a59d4eb6763d2fe922932aa14b5
+ - path: glmark2/bump-bump-render=normals.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: b7beae443e41e229d34da46ab2047a98
+ - path: glmark2/conditionals-fragment-steps=0:vertex-steps=0.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: e95f9a5ce73727a92eeb4109d28caba4
+ - path: glmark2/conditionals-fragment-steps=0:vertex-steps=5.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: e9ff7521f88eebd8a6770ab5eb28fad4
+ - path: glmark2/conditionals-fragment-steps=5:vertex-steps=0.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 0381a3eb918cfecec03a64d06158d1a3
+ - path: glmark2/desktop-effect=shadow:windows=4.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: c21cf8fe26107351eaa97725e6f9883f
+ - path: glmark2/effect2d-kernel=0,1,0;1,-4,1;0,1,0.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 2958ae3442ed26b681b6978e278ba10d
+ - path: glmark2/effect2d-kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 2d4384b59505215932dc2f01ae174379
+ - path: glmark2/function-fragment-complexity=low:fragment-steps=5.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: f84fc1a1ff1a8342678bca081f8a5c0d
+ - path: glmark2/function-fragment-complexity=medium:fragment-steps=5.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 4097ffd5e97bd56589dfab374574d116
+ - path: glmark2/glmark2-build-use-vbo-false.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: e344777696ef13adc2bd943dfd4199a2
+ - path: glmark2/glmark2-build-use-vbo-true.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 51da69c3490816c93c130e63686d2483
+ - path: glmark2/ideas-speed=duration.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 966191b52dc4885cfc56c0e7c80856b2
+ - path: glmark2/loop-fragment-loop=false:fragment-steps=5:vertex-steps=5.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 65cfa43254eaa0ca09ceb8792b4e4ee7
+ - path: glmark2/loop-fragment-steps=5:fragment-uniform=false:vertex-steps=5.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 716f1ebf84d9ab30a8c4261ecbed492b
+ - path: glmark2/loop-fragment-steps=5:fragment-uniform=true:vertex-steps=5.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 45061884dc857a9e0c31d0b0c02d4cbe
+ - path: glmark2/pulsar-light=false:quads=5:texture=false.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 605881a1cb0d8d59e28e19663b6f5eb0
+ - path: glmark2/refract.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: db300d3a8afb6cecc19ae8e38c7b87c6
+ - path: glmark2/shading-shading=blinn-phong-inf.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 36b193b33127144f8080aa60d582e65e
+ - path: glmark2/shading-shading=cel.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: faac1e367720e1ccd9820f2b78808294
+ - path: glmark2/shading-shading=gouraud.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 22bd04eb9862eb4ecff525ac83b2826d
+ - path: glmark2/shading-shading=phong.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: fda002d281d57b3eacb5c2c8f619a62d
+ - path: glmark2/shadow.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 4bf5ca9ce641de1031eb8125d80a3005
+ - path: glmark2/terrain.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 52f19a65bd77ae03b5f51ee0038a2982
+ - path: glmark2/texture-texture-filter=linear.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 992eb4af603d68a3920014f64f0973b1
+ - path: glmark2/texture-texture-filter=mipmap.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: c635b1741e4103cf48cd554882e15a4c
+ - path: glmark2/texture-texture-filter=nearest.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: bd00656bf6683dae40bfa26a6416061d
+ - path: godot/Material Testers.x86_64_2020.04.08_13.38_frame799.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 2ddcda6b1c136ce1448714a3ff8432eb
+ - path: gputest/gimark.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 98e742377cef049e98014300a34d7bba
+ - path: gputest/pixmark-julia-fp32.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: ad472cdef2a68ffaabcbf2a694c4aefe
+ - path: gputest/pixmark-julia-fp64.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: b181b0a910f5ae5b161df70f834c3d5f
+ - path: gputest/pixmark-piano.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 061226c3fd179c611b8d60acaa44474f
+ - path: gputest/pixmark-volplosion.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 2fba173643c014bcfa4b31eb55a514b9
+ - path: gputest/plot3d.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 799ce7b2d8050d6ba2e3ae595cf8729e
+ - path: gputest/tessmark.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: d6597f93caa383c492d8290036c60919
+ - path: humus/AmbientAperture.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 56291d097c4be9c079fb771c849c6a2e
+ - path: humus/CelShading.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 7d30dbe3470873c327464ea7ebe6bcf0
+ - path: humus/DynamicBranching3.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 0f02743d054c66f04da404add87d67dc
+ - path: humus/HDR.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: b44ce4cb377321f6423a5a62a9083794
+ - path: humus/RaytracedShadows.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 4209605af96a1d7c20aa7324aa93839f
+ - path: humus/VolumetricFogging2.trace
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 12ad73ad05b01854da65eb0094612ebf
+ - path: supertuxkart/supertuxkart-antediluvian-abyss.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 17f4039392a65ad23133cb2cac82dba4
+ - path: supertuxkart/supertuxkart-menu.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: bc851bb8808b311c2df9c36a6c289e6e
+ - path: supertuxkart/supertuxkart-ravenbridge-mansion.rdc
+ expectations:
+ - device: gl-radeonsi-stoney
+ checksum: 46f08af5c49d711b41d4082f8a5cf6d6