From: Tomeu Vizoso Date: Fri, 3 Jul 2020 08:04:20 +0000 (+0200) Subject: ci: Build kernels and rootfs for x86 devices X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6c8b921572a542f5de62475a76501a9db73dae4d;p=mesa.git ci: Build kernels and rootfs for x86 devices For testing Mesa on LAVA devices with the amd64 architecture, build kernels and rootfs in the same way as we do for arm64 and armhf. Also add a few trivial jobs for a specific AMD Chromebook. Signed-off-by: Tomeu Vizoso Reviewed-by: Rohan Garg Part-of: --- diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0943b5dfb89..e63539fc1f6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -30,6 +30,7 @@ stages: - radv - lima - virgl + - radeonsi - success # Generic rule to not run the job during scheduled pipelines @@ -203,7 +204,7 @@ x86_build-base: - .fdo.container-build@debian - .container variables: - FDO_DISTRIBUTION_TAG: &x86_build-base "2020-07-28-libdrm" + FDO_DISTRIBUTION_TAG: &x86_build-base "2020-07-28-x86-2" .use-x86_build-base: extends: @@ -221,7 +222,7 @@ x86_build: extends: - .use-x86_build-base variables: - FDO_DISTRIBUTION_TAG: &x86_build "2020-07-28-libdrm-2" + FDO_DISTRIBUTION_TAG: &x86_build "2020-07-28-x86-2" .use-x86_build: variables: @@ -235,7 +236,7 @@ i386_build: extends: - .use-x86_build-base variables: - FDO_DISTRIBUTION_TAG: &i386_build "2020-07-28-libdrm" + FDO_DISTRIBUTION_TAG: &i386_build "2020-07-28-x86-2" .use-i386_build: variables: @@ -249,7 +250,7 @@ ppc64el_build: extends: - .use-x86_build-base variables: - FDO_DISTRIBUTION_TAG: &ppc64el_build "2020-07-28-libdrm" + FDO_DISTRIBUTION_TAG: &ppc64el_build "2020-07-28-x86-2" .use-ppc64el_build: variables: @@ -263,7 +264,7 @@ s390x_build: extends: - .use-x86_build-base variables: - FDO_DISTRIBUTION_TAG: &s390x_build "2020-07-28-libdrm" + FDO_DISTRIBUTION_TAG: &s390x_build "2020-07-28-x86-2" .use-s390x_build: variables: @@ -276,7 +277,7 @@ s390x_build: x86_test-base: extends: x86_build-base variables: - FDO_DISTRIBUTION_TAG: &x86_test-base "2020-07-28-libdrm" + FDO_DISTRIBUTION_TAG: &x86_test-base "2020-07-28-x86-2" .use-x86_test-base: extends: @@ -293,19 +294,19 @@ x86_test-base: x86_test-gl: extends: .use-x86_test-base variables: - FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-07-28-libdrm" + FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-07-28-x86-2" # Debian 10 based x86 test image for VK x86_test-vk: extends: .use-x86_test-base variables: - FDO_DISTRIBUTION_TAG: &x86_test-vk "2020-07-28-libdrm" + FDO_DISTRIBUTION_TAG: &x86_test-vk "2020-07-28-x86-2" # Debian 9 based x86 build image (old LLVM) x86_build_old: extends: x86_build-base variables: - FDO_DISTRIBUTION_TAG: &x86_build_old "2020-07-28-libdrm" + FDO_DISTRIBUTION_TAG: &x86_build_old "2020-07-28-x86-2" FDO_DISTRIBUTION_VERSION: stretch-slim .use-x86_build_old: @@ -518,11 +519,13 @@ meson-testing: -D platforms=x11 GALLIUM_ST: > -D dri3=enabled - GALLIUM_DRIVERS: "swrast,virgl" + GALLIUM_DRIVERS: "swrast,virgl,radeonsi" VULKAN_DRIVERS: amd BUILDTYPE: "debugoptimized" EXTRA_OPTION: > -D werror=true + UPLOAD_FOR_LAVA: 1 + DEBIAN_ARCH: amd64 script: - .gitlab-ci/meson-build.sh - .gitlab-ci/prepare-artifacts.sh diff --git a/.gitlab-ci/container/baremetal_build.sh b/.gitlab-ci/container/baremetal_build.sh index e7e92ba2e2e..edfd4f980f0 100644 --- a/.gitlab-ci/container/baremetal_build.sh +++ b/.gitlab-ci/container/baremetal_build.sh @@ -51,7 +51,7 @@ mkdir /var/cache/apt/archives/$arch ############### Create rootfs KERNEL_URL=https://gitlab.freedesktop.org/drm/msm/-/archive/drm-msm-fixes-2020-06-25/msm-drm-msm-fixes-2020-06-25.tar.gz -DEBIAN_ARCH=$arch INCLUDE_VK_CTS=1 . .gitlab-ci/container/lava_arm.sh +DEBIAN_ARCH=$arch INCLUDE_VK_CTS=1 . .gitlab-ci/container/lava_build.sh ############### Store traces # Clone the traces-db at container build time so we don't have to pull traces diff --git a/.gitlab-ci/container/lava_arm.sh b/.gitlab-ci/container/lava_arm.sh deleted file mode 100755 index baee8d813f2..00000000000 --- a/.gitlab-ci/container/lava_arm.sh +++ /dev/null @@ -1,217 +0,0 @@ -#!/bin/bash - -set -e -set -o xtrace - -check_minio() -{ - MINIO_PATH="minio-packet.freedesktop.org/mesa-lava/$1/${DISTRIBUTION_TAG}/${DEBIAN_ARCH}" - if wget -q --method=HEAD "https://${MINIO_PATH}/done"; then - exit - fi -} - -# If remote files are up-to-date, skip rebuilding them -check_minio "mesa/mesa" -check_minio "${CI_PROJECT_PATH}" - -. .gitlab-ci/container/container_pre_build.sh - -if [[ "$DEBIAN_ARCH" = "arm64" ]]; then - GCC_ARCH="aarch64-linux-gnu" - KERNEL_ARCH="arm64" - 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 - 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 -fi - -# Determine if we're in a cross build. -if [[ -e /cross_file-$DEBIAN_ARCH.txt ]]; then - EXTRA_MESON_ARGS="--cross-file /cross_file-$DEBIAN_ARCH.txt" - EXTRA_CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=/toolchain-$DEBIAN_ARCH.cmake" - - export ARCH=${KERNEL_ARCH} - export CROSS_COMPILE="${GCC_ARCH}-" -fi - -apt-get update -apt-get install -y automake \ - git \ - bc \ - cmake \ - cpio \ - wget \ - debootstrap \ - libboost-dev \ - libegl1-mesa-dev \ - libgbm-dev \ - libgles2-mesa-dev \ - libpcre3-dev \ - libpng-dev \ - libpython3-dev \ - libssl-dev \ - libvulkan-dev \ - libxcb-keysyms1-dev \ - python3-dev \ - python3-distutils \ - python3-serial \ - qt5-default \ - qt5-qmake \ - qtbase5-dev - - -if [[ "$DEBIAN_ARCH" = "armhf" ]]; then - apt-get install -y libboost-dev:armhf \ - libegl1-mesa-dev:armhf \ - libelf-dev:armhf \ - libgbm-dev:armhf \ - libgles2-mesa-dev:armhf \ - libpcre3-dev:armhf \ - libpng-dev:armhf \ - libpython3-dev:armhf \ - libvulkan-dev:armhf \ - libxcb-keysyms1-dev:armhf \ - qtbase5-dev:armhf -fi - -############### Build dEQP runner -. .gitlab-ci/build-cts-runner.sh -mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/usr/bin -mv /usr/local/bin/deqp-runner /lava-files/rootfs-${DEBIAN_ARCH}/usr/bin/. - - -############### Build dEQP -STRIP_CMD="${GCC_ARCH}-strip" -if [ -n "$INCLUDE_VK_CTS" ]; then - DEQP_TARGET=surfaceless . .gitlab-ci/build-deqp-vk.sh -else - . .gitlab-ci/build-deqp-gl.sh -fi - -mv /deqp /lava-files/rootfs-${DEBIAN_ARCH}/. - - -############### Build apitrace -. .gitlab-ci/build-apitrace.sh -mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/apitrace -mv /apitrace/build /lava-files/rootfs-${DEBIAN_ARCH}/apitrace -rm -rf /apitrace - -mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/waffle -mv /waffle/build /lava-files/rootfs-${DEBIAN_ARCH}/waffle -rm -rf /waffle - - -############### Build renderdoc -EXTRA_CMAKE_ARGS+=" -DENABLE_XCB=false" -. .gitlab-ci/build-renderdoc.sh -mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/renderdoc -mv /renderdoc/build /lava-files/rootfs-${DEBIAN_ARCH}/renderdoc -rm -rf /renderdoc - - -############### 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 -for image in ${KERNEL_IMAGE_NAME}; do - cp arch/${KERNEL_ARCH}/boot/${image} /lava-files/. -done -cp ${DEVICE_TREES} /lava-files/. - -if [[ ${DEBIAN_ARCH} = "arm64" ]] && which mkimage > /dev/null; then - make Image.lzma - mkimage \ - -f auto \ - -A arm \ - -O linux \ - -d arch/arm64/boot/Image.lzma \ - -C lzma\ - -b arch/arm64/boot/dts/qcom/sdm845-cheza-r3.dtb \ - /lava-files/cheza-kernel -fi - -popd -rm -rf kernel - -############### Create rootfs -set +e -debootstrap \ - --variant=minbase \ - --arch=${DEBIAN_ARCH} \ - --components main,contrib,non-free \ - buster \ - /lava-files/rootfs-${DEBIAN_ARCH}/ \ - http://deb.debian.org/debian - -cat /lava-files/rootfs-${DEBIAN_ARCH}/debootstrap/debootstrap.log -set -e - -cp .gitlab-ci/create-rootfs.sh /lava-files/rootfs-${DEBIAN_ARCH}/. -chroot /lava-files/rootfs-${DEBIAN_ARCH} sh /create-rootfs.sh -rm /lava-files/rootfs-${DEBIAN_ARCH}/create-rootfs.sh -pushd /lava-files/rootfs-${DEBIAN_ARCH} - find -H | cpio -H newc -o | gzip -c - > /lava-files/lava-rootfs.cpio.gz -popd - -if [ ${DEBIAN_ARCH} = arm64 ]; then - # Pull down a specific build of qcomlt/release/qcomlt-5.4 8c79b3d12355 - # ("Merge tag 'v5.4.23' into release/qcomlt-5.4"), where I used the - # .config from - # http://snapshots.linaro.org/96boards/dragonboard820c/linaro/debian/457/config-5.4.0-qcomlt-arm64 - # with the following merged in: - # - # CONFIG_DRM=y - # CONFIG_DRM_MSM=y - # CONFIG_ATL1C=y - # - # Reason: 5.5 has a big stack of oopses and warns on db820c. 4.14-5.4 - # linaro kernel binaries (see above .config link) have these as modules - # and distributed the modules only in the debian system, not the initrd, - # so they're very hard to extract (involving simg2img and loopback - # mounting). 4.11 is missing d72fea538fe6 ("drm/msm: Fix the check for - # the command size") so it can't actually run fredreno. qcomlt-4.14 is - # unstable at boot (~10% instaboot rate). The 5.4 qcomlt kernel with msm - # built in seems like the easiest way to go. - wget https://people.freedesktop.org/~anholt/qcomlt-5.4-msm-build/Image.gz -O Image.gz \ - -O /lava-files/db820c-kernel - wget https://people.freedesktop.org/~anholt/qcomlt-5.4-msm-build/apq8096-db820c.dtb \ - -O /lava-files/db820c.dtb - - # Make a gzipped copy of the Image for db410c. - gzip -k /lava-files/Image - - # Add missing a630 firmware, added to debian packge in apr 2020 - wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/qcom/a630_gmu.bin \ - -O /lava-files/rootfs-arm64/lib/firmware/qcom/a630_gmu.bin - wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/qcom/a630_sqe.fw \ - -O /lava-files/rootfs-arm64/lib/firmware/qcom/a630_sqe.fw -fi - -. .gitlab-ci/container/container_post_build.sh - -############### Upload the files! -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)" - - for f in $FILES_TO_UPLOAD; do - ci-fairy minio cp /lava-files/$f \ - minio://${MINIO_PATH}/$f - done - - touch /lava-files/done - ci-fairy minio cp /lava-files/done minio://${MINIO_PATH}/done -fi - diff --git a/.gitlab-ci/container/lava_build.sh b/.gitlab-ci/container/lava_build.sh new file mode 100755 index 00000000000..7a7e997a31c --- /dev/null +++ b/.gitlab-ci/container/lava_build.sh @@ -0,0 +1,240 @@ +#!/bin/bash + +set -e +set -o xtrace + +check_minio() +{ + MINIO_PATH="minio-packet.freedesktop.org/mesa-lava/$1/${DISTRIBUTION_TAG}/${DEBIAN_ARCH}" + if wget -q --method=HEAD "https://${MINIO_PATH}/done"; then + exit + fi +} + +# If remote files are up-to-date, skip rebuilding them +check_minio "mesa/mesa" +check_minio "${CI_PROJECT_PATH}" + +. .gitlab-ci/container/container_pre_build.sh + +if [[ "$DEBIAN_ARCH" = "arm64" ]]; then + GCC_ARCH="aarch64-linux-gnu" + KERNEL_ARCH="arm64" + 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" +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. +if [[ -e /cross_file-$DEBIAN_ARCH.txt ]]; then + EXTRA_MESON_ARGS="--cross-file /cross_file-$DEBIAN_ARCH.txt" + EXTRA_CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=/toolchain-$DEBIAN_ARCH.cmake" + + export ARCH=${KERNEL_ARCH} + export CROSS_COMPILE="${GCC_ARCH}-" +fi + +apt-get update +apt-get install -y automake \ + git \ + bc \ + cmake \ + cpio \ + wget \ + debootstrap \ + libboost-dev \ + libegl1-mesa-dev \ + libgbm-dev \ + libgles2-mesa-dev \ + libpcre3-dev \ + libpng-dev \ + libpython3-dev \ + libssl-dev \ + libvulkan-dev \ + libxcb-keysyms1-dev \ + python3-dev \ + python3-distutils \ + python3-serial \ + qt5-default \ + qt5-qmake \ + qtbase5-dev + + +if [[ "$DEBIAN_ARCH" = "armhf" ]]; then + apt-get install -y libboost-dev:armhf \ + libegl1-mesa-dev:armhf \ + libelf-dev:armhf \ + libgbm-dev:armhf \ + libgles2-mesa-dev:armhf \ + libpcre3-dev:armhf \ + libpng-dev:armhf \ + libpython3-dev:armhf \ + libvulkan-dev:armhf \ + libxcb-keysyms1-dev:armhf \ + qtbase5-dev:armhf +fi + +############### Build dEQP runner +. .gitlab-ci/build-cts-runner.sh +mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/usr/bin +mv /usr/local/bin/deqp-runner /lava-files/rootfs-${DEBIAN_ARCH}/usr/bin/. + + +############### Build dEQP +STRIP_CMD="${GCC_ARCH}-strip" +if [ -n "$INCLUDE_VK_CTS" ]; then + DEQP_TARGET=surfaceless . .gitlab-ci/build-deqp-vk.sh +else + . .gitlab-ci/build-deqp-gl.sh +fi + +mv /deqp /lava-files/rootfs-${DEBIAN_ARCH}/. + + +############### Build apitrace +. .gitlab-ci/build-apitrace.sh +mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/apitrace +mv /apitrace/build /lava-files/rootfs-${DEBIAN_ARCH}/apitrace +rm -rf /apitrace + +mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/waffle +mv /waffle/build /lava-files/rootfs-${DEBIAN_ARCH}/waffle +rm -rf /waffle + + +############### Build renderdoc +EXTRA_CMAKE_ARGS+=" -DENABLE_XCB=false" +. .gitlab-ci/build-renderdoc.sh +mkdir -p /lava-files/rootfs-${DEBIAN_ARCH}/renderdoc +mv /renderdoc/build /lava-files/rootfs-${DEBIAN_ARCH}/renderdoc +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} +for image in ${KERNEL_IMAGE_NAME}; do + cp arch/${KERNEL_ARCH}/boot/${image} /lava-files/. +done +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 + mkimage \ + -f auto \ + -A arm \ + -O linux \ + -d arch/arm64/boot/Image.lzma \ + -C lzma\ + -b arch/arm64/boot/dts/qcom/sdm845-cheza-r3.dtb \ + /lava-files/cheza-kernel +fi + +popd +rm -rf kernel + +############### Create rootfs +set +e +debootstrap \ + --variant=minbase \ + --arch=${DEBIAN_ARCH} \ + --components main,contrib,non-free \ + buster \ + /lava-files/rootfs-${DEBIAN_ARCH}/ \ + http://deb.debian.org/debian + +cat /lava-files/rootfs-${DEBIAN_ARCH}/debootstrap/debootstrap.log +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 [ ${DEBIAN_ARCH} = arm64 ]; then + # Pull down a specific build of qcomlt/release/qcomlt-5.4 8c79b3d12355 + # ("Merge tag 'v5.4.23' into release/qcomlt-5.4"), where I used the + # .config from + # http://snapshots.linaro.org/96boards/dragonboard820c/linaro/debian/457/config-5.4.0-qcomlt-arm64 + # with the following merged in: + # + # CONFIG_DRM=y + # CONFIG_DRM_MSM=y + # CONFIG_ATL1C=y + # + # Reason: 5.5 has a big stack of oopses and warns on db820c. 4.14-5.4 + # linaro kernel binaries (see above .config link) have these as modules + # and distributed the modules only in the debian system, not the initrd, + # so they're very hard to extract (involving simg2img and loopback + # mounting). 4.11 is missing d72fea538fe6 ("drm/msm: Fix the check for + # the command size") so it can't actually run fredreno. qcomlt-4.14 is + # unstable at boot (~10% instaboot rate). The 5.4 qcomlt kernel with msm + # built in seems like the easiest way to go. + wget https://people.freedesktop.org/~anholt/qcomlt-5.4-msm-build/Image.gz -O Image.gz \ + -O /lava-files/db820c-kernel + wget https://people.freedesktop.org/~anholt/qcomlt-5.4-msm-build/apq8096-db820c.dtb \ + -O /lava-files/db820c.dtb + + # Make a gzipped copy of the Image for db410c. + gzip -k /lava-files/Image + + # Add missing a630 firmware, added to debian packge in apr 2020 + wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/qcom/a630_gmu.bin \ + -O /lava-files/rootfs-arm64/lib/firmware/qcom/a630_gmu.bin + wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/qcom/a630_sqe.fw \ + -O /lava-files/rootfs-arm64/lib/firmware/qcom/a630_sqe.fw +fi + +. .gitlab-ci/container/container_post_build.sh + +############### Upload the files! +if [ -n "$UPLOAD_FOR_LAVA" ]; then + ci-fairy minio login $CI_JOB_JWT + FILES_TO_UPLOAD="lava-rootfs.cpio.gz \ + $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 \ + minio://${MINIO_PATH}/$f + done + + touch /lava-files/done + ci-fairy minio cp /lava-files/done minio://${MINIO_PATH}/done +fi + diff --git a/.gitlab-ci/container/x86_build-base.sh b/.gitlab-ci/container/x86_build-base.sh index a833dcda4b1..e6a1db2028f 100644 --- a/.gitlab-ci/container/x86_build-base.sh +++ b/.gitlab-ci/container/x86_build-base.sh @@ -61,7 +61,9 @@ apt-get install -y --no-remove \ python-mako \ python3-mako \ python3-pil \ + python3-pip \ python3-requests \ + python3-setuptools \ qemu-user \ scons \ wine64-development \ @@ -90,7 +92,6 @@ rm bin/glslangValidator glslang-master-linux-Release.zip apt-get purge -y \ gnupg \ - unzip \ - wget + unzip . .gitlab-ci/container/container_post_build.sh diff --git a/.gitlab-ci/create-rootfs.sh b/.gitlab-ci/create-rootfs.sh index 8422bab11b4..4f4609ed4c6 100644 --- a/.gitlab-ci/create-rootfs.sh +++ b/.gitlab-ci/create-rootfs.sh @@ -2,6 +2,27 @@ set -ex +if [ $DEBIAN_ARCH = arm64 ]; then + ARCH_PACKAGES="firmware-qcom-media" +elif [ $DEBIAN_ARCH = amd64 ]; then + # Upstream LLVM package repository + apt-get -y install --no-install-recommends gnupg ca-certificates + apt-key add /llvm-snapshot.gpg.key + echo "deb https://apt.llvm.org/buster/ llvm-toolchain-buster-9 main" >/etc/apt/sources.list.d/llvm9.list + apt-get update + + ARCH_PACKAGES="libelf1 + libllvm9 + libxcb-dri2-0 + libxcb-dri3-0 + libxcb-present0 + libxcb-sync1 + libxcb-xfixes0 + libxshmfence1 + firmware-amd-graphics + " +fi + apt-get -y install --no-install-recommends \ ca-certificates \ curl \ @@ -12,7 +33,7 @@ apt-get -y install --no-install-recommends \ libexpat1 \ libx11-6 \ libx11-xcb1 \ - firmware-qcom-media \ + $ARCH_PACKAGES \ netcat-openbsd \ python3 \ libpython3.7 \ @@ -57,7 +78,8 @@ cp /usr/share/zoneinfo/Etc/UTC /etc/localtime UNNEEDED_PACKAGES="libfdisk1 tzdata - diffutils" + diffutils + gnupg" export DEBIAN_FRONTEND=noninteractive diff --git a/.gitlab-ci/deqp-radeonsi-stoney-fails.txt b/.gitlab-ci/deqp-radeonsi-stoney-fails.txt new file mode 100644 index 00000000000..e69de29bb2d diff --git a/.gitlab-ci/deqp-radeonsi-stoney-skips.txt b/.gitlab-ci/deqp-radeonsi-stoney-skips.txt new file mode 100644 index 00000000000..69d00870a04 --- /dev/null +++ b/.gitlab-ci/deqp-radeonsi-stoney-skips.txt @@ -0,0 +1,11 @@ +# 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/generate_lava.py b/.gitlab-ci/generate_lava.py index 61da42877ad..6f887c5f90b 100755 --- a/.gitlab-ci/generate_lava.py +++ b/.gitlab-ci/generate_lava.py @@ -11,6 +11,7 @@ parser.add_argument("--pipeline-info") parser.add_argument("--base-artifacts-url") parser.add_argument("--mesa-url") parser.add_argument("--device-type") +parser.add_argument("--dtb", nargs='?', default="") parser.add_argument("--kernel-image-name") parser.add_argument("--kernel-image-type", nargs='?', default="") parser.add_argument("--gpu-version") @@ -33,6 +34,7 @@ values['pipeline_info'] = args.pipeline_info values['base_artifacts_url'] = args.base_artifacts_url values['mesa_url'] = args.mesa_url values['device_type'] = args.device_type +values['dtb'] = args.dtb values['kernel_image_name'] = args.kernel_image_name values['kernel_image_type'] = args.kernel_image_type values['gpu_version'] = args.gpu_version diff --git a/.gitlab-ci/lava-deqp.yml.jinja2 b/.gitlab-ci/lava-deqp.yml.jinja2 index 92a48ed7915..639f1d1f40e 100644 --- a/.gitlab-ci/lava-deqp.yml.jinja2 +++ b/.gitlab-ci/lava-deqp.yml.jinja2 @@ -30,8 +30,10 @@ actions: ramdisk: url: {{ base_artifacts_url }}/lava-rootfs.cpio.gz compression: gz +{% if dtb %} dtb: - url: {{ base_artifacts_url }}/{{ device_type }}.dtb + url: {{ base_artifacts_url }}/{{ dtb }}.dtb +{% endif %} os: oe - boot: timeout: diff --git a/.gitlab-ci/lava-gitlab-ci.yml b/.gitlab-ci/lava-gitlab-ci.yml index 1be28ef6e13..0055ef524ee 100644 --- a/.gitlab-ci/lava-gitlab-ci.yml +++ b/.gitlab-ci/lava-gitlab-ci.yml @@ -1,5 +1,5 @@ variables: - DISTRIBUTION_TAG: "2020-07-28" + DISTRIBUTION_TAG: "2020-07-28-x86" .kernel+rootfs: stage: container-2 @@ -10,7 +10,15 @@ variables: 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: @@ -54,6 +62,7 @@ kernel+rootfs_armhf: --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} \ @@ -108,6 +117,26 @@ kernel+rootfs_armhf: - 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" @@ -126,6 +155,7 @@ panfrost-t720-gles2:arm64: - .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: @@ -137,6 +167,7 @@ panfrost-t760-gles2:armhf: - .panfrost-rules variables: DEVICE_TYPE: rk3288-veyron-jaq + DTB: ${DEVICE_TYPE} GPU_VERSION: panfrost-t760 BOOT_METHOD: depthcharge KERNEL_IMAGE_TYPE: "" @@ -150,6 +181,7 @@ panfrost-t760-gles2:armhf: - .panfrost-rules variables: DEVICE_TYPE: rk3288-veyron-jaq + DTB: ${DEVICE_TYPE} GPU_VERSION: panfrost-t760 BOOT_METHOD: depthcharge KERNEL_IMAGE_TYPE: "" @@ -162,6 +194,7 @@ panfrost-t760-gles2:armhf: - .panfrost-rules variables: DEVICE_TYPE: rk3399-gru-kevin + DTB: ${DEVICE_TYPE} GPU_VERSION: panfrost-t860 BOOT_METHOD: depthcharge KERNEL_IMAGE_TYPE: "" @@ -197,6 +230,7 @@ panfrost-t860-traces:arm64: - .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" @@ -210,6 +244,7 @@ panfrost-t860-traces:arm64: - .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: @@ -221,7 +256,45 @@ panfrost-t860-traces:arm64: - .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 diff --git a/.gitlab-ci/lava-tracie.yml.jinja2 b/.gitlab-ci/lava-tracie.yml.jinja2 index f8b6bcb37d8..0811c6724fe 100644 --- a/.gitlab-ci/lava-tracie.yml.jinja2 +++ b/.gitlab-ci/lava-tracie.yml.jinja2 @@ -30,8 +30,10 @@ actions: ramdisk: url: {{ base_artifacts_url }}/lava-rootfs.cpio.gz compression: gz +{% if dtb %} dtb: - url: {{ base_artifacts_url }}/{{ device_type }}.dtb + url: {{ base_artifacts_url }}/{{ dtb }}.dtb +{% endif %} os: oe - boot: timeout: diff --git a/.gitlab-ci/test-source-dep.yml b/.gitlab-ci/test-source-dep.yml index 6a006b8d6c3..fc65153ad13 100644 --- a/.gitlab-ci/test-source-dep.yml +++ b/.gitlab-ci/test-source-dep.yml @@ -170,3 +170,19 @@ - src/gallium/winsys/virgl/**/* when: on_success - when: never + +.radeonsi-rules: + stage: radeonsi + rules: + - changes: + *mesa_core_file_list + when: on_success + - changes: + *gallium_core_file_list + when: on_success + - changes: + - src/gallium/drivers/radeonsi/**/* + - src/gallium/winsys/amdgpu/**/* + - src/amd/**/* + when: on_success + - when: never diff --git a/.gitlab-ci/traces.yml b/.gitlab-ci/traces.yml index 19949e91e88..5f0e259b4fe 100644 --- a/.gitlab-ci/traces.yml +++ b/.gitlab-ci/traces.yml @@ -12,6 +12,8 @@ traces: checksum: 95df5e619a36e88fe408e45567a2d149 - device: gl-panfrost-t760 checksum: 30663eac9a4767d26fbf9b6db9712d9f + - device: gl-radeonsi-stoney + checksum: 316650141be869c8afe76b42d3573b49 - path: glmark2/jellyfish.rdc expectations: - device: gl-vmware-llvmpipe @@ -22,6 +24,8 @@ traces: checksum: 1d609b089732be5b6e3e78370abcb149 - device: gl-panfrost-t760 checksum: f98ef9118eeaba660c15065dac46e580 + - device: gl-radeonsi-stoney + checksum: 2c57f9d33489dd43c8807bd0f06c3ed8 - path: glxgears/glxgears-2.trace expectations: - device: gl-vmware-llvmpipe @@ -32,6 +36,8 @@ traces: 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 @@ -54,6 +60,8 @@ traces: expectations: - device: gl-vmware-llvmpipe checksum: d76d0f5b5b064bba3e6a2a122c0799cf + - device: gl-radeonsi-stoney + checksum: bfd97a7190f2b9de24ddfd446fcc4850 - path: pathfinder/demo.trace expectations: - device: gl-vmware-llvmpipe @@ -62,6 +70,8 @@ traces: checksum: c4f5e6bfe0cba230b1aef631c2fa4584 - device: gl-panfrost-t760 checksum: c4f5e6bfe0cba230b1aef631c2fa4584 + - device: gl-radeonsi-stoney + checksum: c81c85f9b247dd1b06c3dd5b669cc283 - path: pathfinder/canvas_moire.trace expectations: - device: gl-vmware-llvmpipe @@ -70,6 +80,8 @@ traces: checksum: 2fb2c8e83719526cb6c02b6c2e069d61 - device: gl-panfrost-t760 checksum: 2fb2c8e83719526cb6c02b6c2e069d61 + - device: gl-radeonsi-stoney + checksum: 78dd2357ad6e5ffc049a75bfb11c5497 - path: pathfinder/canvas_text.trace expectations: - device: gl-vmware-llvmpipe @@ -78,6 +90,8 @@ traces: checksum: 939038749a5204ec2b1448d3b9208fb3 - device: gl-panfrost-t760 checksum: 939038749a5204ec2b1448d3b9208fb3 + - device: gl-radeonsi-stoney + checksum: 56d1398206ceea45562f80f8ea9d3814 - path: gputest/furmark.trace expectations: - device: gl-vmware-llvmpipe @@ -86,12 +100,16 @@ traces: 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 @@ -102,6 +120,8 @@ traces: checksum: 6def0c34ade7d4ec930b45d0eef6e46a - device: gl-panfrost-t760 checksum: 6def0c34ade7d4ec930b45d0eef6e46a + - device: gl-radeonsi-stoney + checksum: 2d0527e7288a0fc31099404546dadbfb - path: humus/Portals.trace expectations: - device: gl-vmware-llvmpipe @@ -112,3 +132,197 @@ traces: 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 diff --git a/.gitlab-ci/x86_64.config b/.gitlab-ci/x86_64.config new file mode 100644 index 00000000000..2a28645e40d --- /dev/null +++ b/.gitlab-ci/x86_64.config @@ -0,0 +1,65 @@ +CONFIG_LOCALVERSION="ccu" + +CONFIG_DEBUG_KERNEL=y + +CONFIG_DEVFREQ_GOV_PERFORMANCE=y +CONFIG_DEVFREQ_GOV_POWERSAVE=y +CONFIG_DEVFREQ_GOV_USERSPACE=y +CONFIG_DEVFREQ_GOV_PASSIVE=y + +CONFIG_DRM=y +CONFIG_DRM_PANEL_SIMPLE=y +CONFIG_PWM_CROS_EC=y +CONFIG_BACKLIGHT_PWM=y + +# Strip out some stuff we don't need for graphics testing, to reduce +# the build. +CONFIG_CAN=n +CONFIG_WIRELESS=n +CONFIG_RFKILL=n +CONFIG_WLAN=n + +CONFIG_REGULATOR_FAN53555=y +CONFIG_REGULATOR=y + +CONFIG_REGULATOR_VCTRL=y + +CONFIG_KASAN=n +CONFIG_KASAN_INLINE=n +CONFIG_STACKTRACE=n + +CONFIG_TMPFS=y + +CONFIG_PROVE_LOCKING=n +CONFIG_DEBUG_LOCKDEP=n +CONFIG_SOFTLOCKUP_DETECTOR=y +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y + +CONFIG_DETECT_HUNG_TASK=y + +CONFIG_USB_USBNET=y +CONFIG_NETDEVICES=y +CONFIG_USB_NET_DRIVERS=y +CONFIG_USB_RTL8152=y +CONFIG_USB_NET_AX8817X=y +CONFIG_USB_NET_SMSC95XX=y + +CONFIG_FW_LOADER_COMPRESS=y + +# options for AMD devices +CONFIG_X86_AMD_PLATFORM_DEVICE=y +CONFIG_ACPI_VIDEO=y +CONFIG_X86_AMD_FREQ_SENSITIVITY=y +CONFIG_PINCTRL=y +CONFIG_PINCTRL_AMD=y +CONFIG_DRM_AMDGPU=y +CONFIG_DRM_AMDGPU_SI=y +CONFIG_DRM_AMD_ACP=y +CONFIG_ACPI_WMI=y +CONFIG_MXM_WMI=y +CONFIG_PARPORT=y +CONFIG_PARPORT_PC=y +CONFIG_PARPORT_SERIAL=y +CONFIG_SERIAL_8250_DW=y +CONFIG_CHROME_PLATFORMS=y +