2019-06-19 21:25:17 +08:00
|
|
|
# SPDX-License-Identifier: GPL-2.0+
|
|
|
|
|
2023-03-10 17:53:02 +08:00
|
|
|
variables:
|
|
|
|
DEFAULT_TAG: ""
|
2023-03-10 17:53:03 +08:00
|
|
|
MIRROR_DOCKER: docker.io
|
2023-03-10 17:53:02 +08:00
|
|
|
|
|
|
|
default:
|
|
|
|
tags:
|
|
|
|
- ${DEFAULT_TAG}
|
|
|
|
|
2022-08-23 14:18:26 +08:00
|
|
|
# Grab our configured image. The source for this is found
|
|
|
|
# in the u-boot tree at tools/docker/Dockerfile
|
2024-08-21 23:41:20 +08:00
|
|
|
image: ${MIRROR_DOCKER}/trini/u-boot-gitlab-ci-runner:jammy-20240808-21Aug2024
|
2019-06-19 21:25:17 +08:00
|
|
|
|
|
|
|
# We run some tests in different order, to catch some failures quicker.
|
|
|
|
stages:
|
|
|
|
- testsuites
|
2019-07-25 01:09:31 +08:00
|
|
|
- test.py
|
2019-06-19 21:25:17 +08:00
|
|
|
- world build
|
|
|
|
|
|
|
|
.buildman_and_testpy_template: &buildman_and_testpy_dfn
|
|
|
|
stage: test.py
|
2023-07-12 10:33:03 +08:00
|
|
|
retry: 2 # QEMU may be too slow, etc.
|
2023-09-13 22:15:36 +08:00
|
|
|
rules:
|
|
|
|
- when: always
|
2019-06-19 21:25:17 +08:00
|
|
|
before_script:
|
|
|
|
# Clone uboot-test-hooks
|
2022-11-22 01:52:40 +08:00
|
|
|
- git config --global --add safe.directory "${CI_PROJECT_DIR}"
|
2021-02-25 06:05:04 +08:00
|
|
|
- git clone --depth=1 https://source.denx.de/u-boot/u-boot-test-hooks /tmp/uboot-test-hooks
|
2019-06-19 21:25:17 +08:00
|
|
|
- ln -s travis-ci /tmp/uboot-test-hooks/bin/`hostname`
|
|
|
|
- ln -s travis-ci /tmp/uboot-test-hooks/py/`hostname`
|
2019-10-05 00:12:54 +08:00
|
|
|
- grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
|
|
|
|
- grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
|
2020-03-28 22:25:29 +08:00
|
|
|
- if [[ "${TEST_PY_BD}" == "qemu-riscv32_spl" ]]; then
|
2023-10-25 06:15:43 +08:00
|
|
|
wget -O - https://github.com/riscv-software-src/opensbi/releases/download/v1.3.1/opensbi-1.3.1-rv-bin.tar.xz | tar -C /tmp -xJ;
|
|
|
|
export OPENSBI=/tmp/opensbi-1.3.1-rv-bin/share/opensbi/ilp32/generic/firmware/fw_dynamic.bin;
|
2020-03-28 22:25:29 +08:00
|
|
|
fi
|
2021-08-26 23:33:35 +08:00
|
|
|
- if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]] || [[ "${TEST_PY_BD}" == "sifive_unleashed" ]]; then
|
2023-10-25 06:15:43 +08:00
|
|
|
wget -O - https://github.com/riscv-software-src/opensbi/releases/download/v1.3.1/opensbi-1.3.1-rv-bin.tar.xz | tar -C /tmp -xJ;
|
|
|
|
export OPENSBI=/tmp/opensbi-1.3.1-rv-bin/share/opensbi/lp64/generic/firmware/fw_dynamic.bin;
|
2020-03-28 22:25:29 +08:00
|
|
|
fi
|
2019-07-25 01:09:31 +08:00
|
|
|
|
2019-06-19 21:25:17 +08:00
|
|
|
after_script:
|
2024-06-27 21:43:20 +08:00
|
|
|
- cp -v /tmp/${TEST_PY_BD}/*.{html,css,xml} .
|
2019-12-19 20:30:32 +08:00
|
|
|
- rm -rf /tmp/uboot-test-hooks /tmp/venv
|
2019-06-19 21:25:17 +08:00
|
|
|
script:
|
2020-03-18 23:42:57 +08:00
|
|
|
# If we've been asked to use clang only do one configuration.
|
2020-03-18 23:42:55 +08:00
|
|
|
- export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
|
2022-08-04 02:13:09 +08:00
|
|
|
- echo BUILD_ENV ${BUILD_ENV}
|
2023-01-16 05:16:00 +08:00
|
|
|
- if [ -n "${BUILD_ENV}" ]; then
|
|
|
|
export ${BUILD_ENV};
|
|
|
|
fi
|
2020-03-18 23:43:00 +08:00
|
|
|
- tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W -e
|
|
|
|
--board ${TEST_PY_BD} ${OVERRIDE}
|
2020-07-14 06:23:58 +08:00
|
|
|
- cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/
|
|
|
|
- cp ~/grub_x64.efi $UBOOT_TRAVIS_BUILD_DIR/
|
|
|
|
- cp /opt/grub/grubriscv64.efi $UBOOT_TRAVIS_BUILD_DIR/grub_riscv64.efi
|
|
|
|
- cp /opt/grub/grubaa64.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm64.efi
|
|
|
|
- cp /opt/grub/grubarm.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm.efi
|
2021-08-26 23:33:35 +08:00
|
|
|
# create sdcard / spi-nor images for sifive unleashed using genimage
|
|
|
|
- if [[ "${TEST_PY_BD}" == "sifive_unleashed" ]]; then
|
|
|
|
mkdir -p root;
|
|
|
|
cp ${UBOOT_TRAVIS_BUILD_DIR}/spl/u-boot-spl.bin .;
|
|
|
|
cp ${UBOOT_TRAVIS_BUILD_DIR}/u-boot.itb .;
|
|
|
|
rm -rf tmp;
|
|
|
|
genimage --inputpath . --config board/sifive/unleashed/genimage_sdcard.cfg;
|
|
|
|
cp images/sdcard.img ${UBOOT_TRAVIS_BUILD_DIR}/;
|
|
|
|
rm -rf tmp;
|
|
|
|
genimage --inputpath . --config board/sifive/unleashed/genimage_spi-nor.cfg;
|
|
|
|
cp images/spi-nor.img ${UBOOT_TRAVIS_BUILD_DIR}/;
|
|
|
|
fi
|
2022-01-22 01:23:01 +08:00
|
|
|
- if [[ "${TEST_PY_BD}" == "coreboot" ]]; then
|
2024-02-13 22:39:27 +08:00
|
|
|
cp /opt/coreboot/coreboot.rom ${UBOOT_TRAVIS_BUILD_DIR}/coreboot.rom;
|
|
|
|
/opt/coreboot/cbfstool ${UBOOT_TRAVIS_BUILD_DIR}/coreboot.rom remove -n fallback/payload;
|
|
|
|
/opt/coreboot/cbfstool ${UBOOT_TRAVIS_BUILD_DIR}/coreboot.rom add-flat-binary -f ${UBOOT_TRAVIS_BUILD_DIR}/u-boot.bin -n fallback/payload -c LZMA -l 0x1110000 -e 0x1110000;
|
2022-01-22 01:23:01 +08:00
|
|
|
fi
|
2019-10-24 23:59:27 +08:00
|
|
|
- virtualenv -p /usr/bin/python3 /tmp/venv
|
|
|
|
- . /tmp/venv/bin/activate
|
|
|
|
- pip install -r test/py/requirements.txt
|
2020-03-18 23:42:56 +08:00
|
|
|
# "${var:+"-k $var"}" expands to "" if $var is empty, "-k $var" if not
|
2020-03-18 23:42:55 +08:00
|
|
|
- export PATH=/opt/qemu/bin:/tmp/uboot-test-hooks/bin:${PATH};
|
2019-06-19 21:25:17 +08:00
|
|
|
export PYTHONPATH=/tmp/uboot-test-hooks/py/travis-ci;
|
2020-07-11 04:04:40 +08:00
|
|
|
./test/py/test.py -ra --bd ${TEST_PY_BD} ${TEST_PY_ID}
|
2020-03-18 23:42:56 +08:00
|
|
|
${TEST_PY_TEST_SPEC:+"-k ${TEST_PY_TEST_SPEC}"}
|
2020-03-18 23:42:59 +08:00
|
|
|
--build-dir "$UBOOT_TRAVIS_BUILD_DIR"
|
2024-06-27 21:43:20 +08:00
|
|
|
--junitxml=/tmp/${TEST_PY_BD}/results.xml
|
2023-03-03 09:22:25 +08:00
|
|
|
artifacts:
|
|
|
|
when: always
|
|
|
|
paths:
|
|
|
|
- "*.html"
|
|
|
|
- "*.css"
|
2024-06-27 21:43:20 +08:00
|
|
|
reports:
|
|
|
|
junit: results.xml
|
2023-03-03 09:22:25 +08:00
|
|
|
expire_in: 1 week
|
2019-06-19 21:25:17 +08:00
|
|
|
|
2023-09-13 22:15:36 +08:00
|
|
|
.world_build:
|
2019-06-19 21:25:17 +08:00
|
|
|
stage: world build
|
2023-09-13 22:15:36 +08:00
|
|
|
rules:
|
|
|
|
- when: always
|
|
|
|
|
|
|
|
build all 32bit ARM platforms:
|
|
|
|
extends: .world_build
|
2019-06-19 21:25:17 +08:00
|
|
|
script:
|
|
|
|
- ret=0;
|
2022-11-22 01:52:40 +08:00
|
|
|
git config --global --add safe.directory "${CI_PROJECT_DIR}";
|
2023-07-22 02:44:46 +08:00
|
|
|
pip install -r tools/buildman/requirements.txt;
|
2022-11-10 10:14:53 +08:00
|
|
|
./tools/buildman/buildman -o /tmp -PEWM arm -x aarch64 || ret=$?;
|
2020-03-18 23:42:57 +08:00
|
|
|
if [[ $ret -ne 0 ]]; then
|
2020-03-18 23:42:53 +08:00
|
|
|
./tools/buildman/buildman -o /tmp -seP;
|
2019-10-24 23:59:16 +08:00
|
|
|
exit $ret;
|
|
|
|
fi;
|
2019-07-18 05:51:28 +08:00
|
|
|
|
2019-10-06 18:26:16 +08:00
|
|
|
build all 64bit ARM platforms:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .world_build
|
2019-07-18 05:51:28 +08:00
|
|
|
script:
|
2020-02-12 01:41:14 +08:00
|
|
|
- virtualenv -p /usr/bin/python3 /tmp/venv
|
2019-07-18 19:28:36 +08:00
|
|
|
- . /tmp/venv/bin/activate
|
2019-07-18 05:51:28 +08:00
|
|
|
- ret=0;
|
2022-11-22 01:52:40 +08:00
|
|
|
git config --global --add safe.directory "${CI_PROJECT_DIR}";
|
2023-07-22 02:44:46 +08:00
|
|
|
pip install -r tools/buildman/requirements.txt;
|
2022-11-10 10:14:53 +08:00
|
|
|
./tools/buildman/buildman -o /tmp -PEWM aarch64 || ret=$?;
|
2020-03-18 23:42:57 +08:00
|
|
|
if [[ $ret -ne 0 ]]; then
|
2020-03-18 23:42:53 +08:00
|
|
|
./tools/buildman/buildman -o /tmp -seP;
|
2019-10-24 23:59:16 +08:00
|
|
|
exit $ret;
|
|
|
|
fi;
|
2019-07-18 05:51:28 +08:00
|
|
|
|
2019-10-06 18:26:16 +08:00
|
|
|
build all PowerPC platforms:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .world_build
|
2019-07-18 05:51:28 +08:00
|
|
|
script:
|
|
|
|
- ret=0;
|
2022-11-22 01:52:40 +08:00
|
|
|
git config --global --add safe.directory "${CI_PROJECT_DIR}";
|
2020-03-18 23:42:57 +08:00
|
|
|
./tools/buildman/buildman -o /tmp -P -E -W powerpc || ret=$?;
|
|
|
|
if [[ $ret -ne 0 ]]; then
|
2020-03-18 23:42:53 +08:00
|
|
|
./tools/buildman/buildman -o /tmp -seP;
|
2019-10-24 23:59:16 +08:00
|
|
|
exit $ret;
|
|
|
|
fi;
|
2019-07-18 05:51:28 +08:00
|
|
|
|
2019-10-06 18:26:16 +08:00
|
|
|
build all other platforms:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .world_build
|
2019-07-18 05:51:28 +08:00
|
|
|
script:
|
|
|
|
- ret=0;
|
2022-11-22 01:52:40 +08:00
|
|
|
git config --global --add safe.directory "${CI_PROJECT_DIR}";
|
2022-11-10 10:14:53 +08:00
|
|
|
./tools/buildman/buildman -o /tmp -PEWM -x arm,powerpc || ret=$?;
|
2020-03-18 23:42:57 +08:00
|
|
|
if [[ $ret -ne 0 ]]; then
|
2020-03-18 23:42:53 +08:00
|
|
|
./tools/buildman/buildman -o /tmp -seP;
|
2019-10-24 23:59:16 +08:00
|
|
|
exit $ret;
|
|
|
|
fi;
|
2019-06-19 21:25:17 +08:00
|
|
|
|
2023-09-13 22:15:36 +08:00
|
|
|
.testsuites:
|
2021-12-15 02:36:41 +08:00
|
|
|
stage: testsuites
|
2023-09-13 22:15:36 +08:00
|
|
|
rules:
|
|
|
|
- when: always
|
|
|
|
|
|
|
|
check for new CONFIG symbols outside Kconfig:
|
|
|
|
extends: .testsuites
|
2021-12-15 02:36:41 +08:00
|
|
|
script:
|
2022-12-04 23:14:15 +08:00
|
|
|
- git config --global --add safe.directory "${CI_PROJECT_DIR}"
|
|
|
|
# If grep succeeds and finds a match the test fails as we should
|
|
|
|
# have no matches.
|
|
|
|
- git grep -E '^#[[:blank:]]*(define|undef)[[:blank:]]*CONFIG_'
|
2023-01-11 00:19:46 +08:00
|
|
|
:^doc/ :^arch/arm/dts/ :^scripts/kconfig/lkc.h
|
2024-10-04 05:50:14 +08:00
|
|
|
:^include/linux/kconfig.h :^tools/ :^dts/upstream/
|
|
|
|
:^lib/mbedtls/external :^lib/mbedtls/mbedtls_def_config.h &&
|
2024-02-22 17:35:57 +08:00
|
|
|
exit 1 || exit 0
|
2021-12-15 02:36:41 +08:00
|
|
|
|
2023-01-13 03:30:58 +08:00
|
|
|
# build documentation
|
|
|
|
docs:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .testsuites
|
2020-02-22 01:24:01 +08:00
|
|
|
script:
|
2021-01-26 05:06:25 +08:00
|
|
|
- virtualenv -p /usr/bin/python3 /tmp/venvhtml
|
|
|
|
- . /tmp/venvhtml/bin/activate
|
|
|
|
- pip install -r doc/sphinx/requirements.txt
|
2023-05-02 11:04:11 +08:00
|
|
|
- make htmldocs KDOC_WERROR=1
|
2023-01-13 03:30:58 +08:00
|
|
|
- make infodocs
|
2020-02-22 01:24:01 +08:00
|
|
|
|
2019-06-19 21:25:17 +08:00
|
|
|
# ensure all configs have MAINTAINERS entries
|
|
|
|
Check for configs without MAINTAINERS entry:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .testsuites
|
2019-06-19 21:25:17 +08:00
|
|
|
script:
|
2023-10-23 23:37:47 +08:00
|
|
|
- ./tools/buildman/buildman --maintainer-check
|
2019-06-19 21:25:17 +08:00
|
|
|
|
|
|
|
# Ensure host tools build
|
2023-08-21 01:31:28 +08:00
|
|
|
Build tools-only and envtools:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .testsuites
|
2019-06-19 21:25:17 +08:00
|
|
|
script:
|
2023-08-21 01:31:28 +08:00
|
|
|
- make tools-only_config tools-only -j$(nproc);
|
|
|
|
make mrproper;
|
|
|
|
make tools-only_config envtools -j$(nproc)
|
2019-08-26 19:06:18 +08:00
|
|
|
|
2020-03-12 06:11:15 +08:00
|
|
|
Run binman, buildman, dtoc, Kconfig and patman testsuites:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .testsuites
|
2019-06-19 21:25:17 +08:00
|
|
|
script:
|
2019-08-12 22:09:08 +08:00
|
|
|
- git config --global user.name "GitLab CI Runner";
|
|
|
|
git config --global user.email trini@konsulko.com;
|
2022-08-10 09:08:54 +08:00
|
|
|
git config --global --add safe.directory "${CI_PROJECT_DIR}";
|
2019-08-12 22:09:08 +08:00
|
|
|
export USER=gitlab;
|
2020-02-12 01:41:14 +08:00
|
|
|
virtualenv -p /usr/bin/python3 /tmp/venv;
|
2019-08-12 22:09:08 +08:00
|
|
|
. /tmp/venv/bin/activate;
|
2021-02-26 20:52:29 +08:00
|
|
|
pip install -r test/py/requirements.txt;
|
2023-07-22 02:44:46 +08:00
|
|
|
pip install -r tools/buildman/requirements.txt;
|
2023-08-11 00:52:24 +08:00
|
|
|
export UBOOT_TRAVIS_BUILD_DIR=/tmp/tools-only;
|
2019-08-12 22:09:08 +08:00
|
|
|
export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt";
|
|
|
|
export PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}";
|
2022-08-10 09:08:54 +08:00
|
|
|
set +e;
|
2021-03-15 12:25:34 +08:00
|
|
|
./tools/buildman/buildman -T0 -o ${UBOOT_TRAVIS_BUILD_DIR} -w
|
2023-08-11 00:52:24 +08:00
|
|
|
--board tools-only;
|
2022-08-10 09:08:54 +08:00
|
|
|
set -e;
|
2019-08-12 22:09:08 +08:00
|
|
|
./tools/binman/binman --toolpath ${UBOOT_TRAVIS_BUILD_DIR}/tools test;
|
|
|
|
./tools/buildman/buildman -t;
|
|
|
|
./tools/dtoc/dtoc -t;
|
2020-07-06 11:41:55 +08:00
|
|
|
./tools/patman/patman test;
|
2020-03-12 06:11:15 +08:00
|
|
|
make testconfig
|
2019-06-19 21:25:17 +08:00
|
|
|
|
2022-02-12 04:23:26 +08:00
|
|
|
# Check for any pylint regressions
|
|
|
|
Run pylint:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .testsuites
|
2022-02-12 04:23:26 +08:00
|
|
|
script:
|
2022-08-10 09:08:54 +08:00
|
|
|
- git config --global --add safe.directory "${CI_PROJECT_DIR}"
|
2022-02-12 04:23:26 +08:00
|
|
|
- pip install -r test/py/requirements.txt
|
2023-07-22 02:44:46 +08:00
|
|
|
- pip install -r tools/buildman/requirements.txt
|
2022-03-25 20:19:09 +08:00
|
|
|
- pip install asteval pylint==2.12.2 pyopenssl
|
2022-02-12 04:23:26 +08:00
|
|
|
- export PATH=${PATH}:~/.local/bin
|
|
|
|
- echo "[MASTER]" >> .pylintrc
|
|
|
|
- echo "load-plugins=pylint.extensions.docparams" >> .pylintrc
|
2023-08-11 00:52:24 +08:00
|
|
|
- export UBOOT_TRAVIS_BUILD_DIR=/tmp/tools-only
|
2022-08-10 09:08:54 +08:00
|
|
|
- set +e
|
2022-02-12 04:23:26 +08:00
|
|
|
- ./tools/buildman/buildman -T0 -o ${UBOOT_TRAVIS_BUILD_DIR} -w
|
2023-08-11 00:52:24 +08:00
|
|
|
--board tools-only
|
2022-08-10 09:08:54 +08:00
|
|
|
- set -e
|
2022-02-12 04:23:26 +08:00
|
|
|
- pylint --version
|
|
|
|
- export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt"
|
|
|
|
- make pylint_err
|
|
|
|
|
2023-02-13 23:56:39 +08:00
|
|
|
# Check for pre-schema driver model tags
|
|
|
|
Check for pre-schema tags:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .testsuites
|
2023-02-13 23:56:39 +08:00
|
|
|
script:
|
|
|
|
- git config --global --add safe.directory "${CI_PROJECT_DIR}";
|
|
|
|
# If grep succeeds and finds a match the test fails as we should
|
|
|
|
# have no matches.
|
|
|
|
- git grep u-boot,dm- -- '*.dts*' && exit 1 || exit 0
|
|
|
|
|
2023-02-24 09:18:24 +08:00
|
|
|
# Check we can package the Python tools
|
|
|
|
Check packing of Python tools:
|
2023-09-13 22:15:36 +08:00
|
|
|
extends: .testsuites
|
2023-02-24 09:18:24 +08:00
|
|
|
script:
|
|
|
|
- make pip
|
|
|
|
|
2019-06-19 21:25:17 +08:00
|
|
|
# Test sandbox with test.py
|
|
|
|
sandbox test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2019-11-07 08:30:47 +08:00
|
|
|
sandbox with clang test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox"
|
2024-03-11 03:59:28 +08:00
|
|
|
OVERRIDE: "-O clang-17"
|
2019-11-07 08:30:47 +08:00
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2023-09-01 16:48:10 +08:00
|
|
|
sandbox64 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox64"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
sandbox64 with clang test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox64"
|
2024-03-11 03:59:28 +08:00
|
|
|
OVERRIDE: "-O clang-17"
|
2023-09-01 16:48:10 +08:00
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2019-06-19 21:25:17 +08:00
|
|
|
sandbox_spl test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox_spl"
|
2020-10-26 10:38:36 +08:00
|
|
|
TEST_PY_TEST_SPEC: "test_ofplatdata or test_handoff or test_spl"
|
2019-06-19 21:25:17 +08:00
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2021-03-15 12:25:34 +08:00
|
|
|
sandbox_noinst_test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox_noinst"
|
|
|
|
TEST_PY_TEST_SPEC: "test_ofplatdata or test_handoff or test_spl"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2023-10-15 04:47:59 +08:00
|
|
|
sandbox_noinst with LOAD_FIT_FULL test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox_noinst"
|
|
|
|
TEST_PY_TEST_SPEC: "test_ofplatdata or test_handoff or test_spl"
|
|
|
|
OVERRIDE: "-a CONFIG_SPL_LOAD_FIT_FULL=y"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2022-04-30 14:56:57 +08:00
|
|
|
sandbox_vpl test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox_vpl"
|
2023-04-02 10:01:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "vpl or test_spl"
|
2022-04-30 14:56:57 +08:00
|
|
|
<<: *buildman_and_testpy_dfn
|
2023-01-16 05:16:00 +08:00
|
|
|
|
|
|
|
# Enable tracing and disable LTO, to ensure functions are not elided
|
|
|
|
sandbox trace_test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox"
|
|
|
|
BUILD_ENV: "FTRACE=1 NO_LTO=1"
|
|
|
|
TEST_PY_TEST_SPEC: "trace"
|
2023-08-23 01:40:02 +08:00
|
|
|
OVERRIDE: "-a CONFIG_TRACE=y -a CONFIG_TRACE_EARLY=y -a CONFIG_TRACE_EARLY_SIZE=0x01000000 -a CONFIG_TRACE_BUFFER_SIZE=0x02000000"
|
2023-01-16 05:16:00 +08:00
|
|
|
<<: *buildman_and_testpy_dfn
|
2022-04-30 14:56:57 +08:00
|
|
|
|
2019-07-18 04:06:57 +08:00
|
|
|
evb-ast2500 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "evb-ast2500"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2019-07-18 04:06:57 +08:00
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2022-06-29 15:05:25 +08:00
|
|
|
evb-ast2600 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "evb-ast2600"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2022-06-29 15:05:25 +08:00
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2019-06-19 21:25:17 +08:00
|
|
|
sandbox_flattree test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sandbox_flattree"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
ARM: vexpress_ca9x4: Reintroduce board in order to use with QEMU.
vexpress_ca9x4 is seemingly the only board except for qemu_arm which
is able to run U-Boot correctly, using the `-M vexpress-a9` option to
QEMU. Building for qemu_arm and running qemu-system-arm with the `-M
virt` argument has a number of downsides, most importantly that it
only supports virtio storage drivers. This significantly reduces its
usefulness in testing memory card and Flash solutions, especially when
the tested images are from a third party source.
So therefore we reintroduce the vexpress_ca9x4 board in this commit,
with the explicit goal of using it with QEMU.
A number of differences to note from the original:
* Since the board was apparently unmaintained, I have now set myself
as the maintainer.
* The board has been converted to use the driver model, which was the
reason it was removed in the first place.
* The vexpress_ca15_tc2 and vexpress_ca5x2 boards, which were removed
in the same commit, are not necessary for the QEMU use case, and
have been omitted.
* An `mmc0` alias was introduced in the dts file. The mmc is not
detected correctly without this, now that it's based on the device
tree instead of the board's init function.
* A couple of other nodes were removed because they were problematic
when trying to run the UEFI bootmgr. Once again, the primary use
case here is QEMU, and these nodes are not needed for that to work.
* Unnecessary board init code has been removed, thanks to driver model
and device tree.
* `CONFIG_OF_EMBED` has been enabled. I know this goes against
recommended practice, but there doesn't seem to be any other way to
pass the dtb to U-Boot in the QEMU scenario. Using the -dtb argument
does not work, I suppose because U-Boot doesn't use the same
mechanics as the kernel when it's booting.
* Load addresses have been changed to fit QEMU use case.
People wanting to get a more detailed, yet somewhat isolated, diff
between this and the original, can run this command:
git diff c6c26a05b89f25a06e7562f8c2071b60fd0c9eac~1 -- \
$( git diff-tree --diff-filter=A -r --name-only HEAD~1 HEAD)
(Make sure to either check out this commit first, or replace HEAD with
the commit ID of this commit)
Signed-off-by: Kristian Amlie <kristian.amlie@northern.tech>
2021-09-07 14:37:51 +08:00
|
|
|
vexpress_ca9x4 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "vexpress_ca9x4"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
ARM: vexpress_ca9x4: Reintroduce board in order to use with QEMU.
vexpress_ca9x4 is seemingly the only board except for qemu_arm which
is able to run U-Boot correctly, using the `-M vexpress-a9` option to
QEMU. Building for qemu_arm and running qemu-system-arm with the `-M
virt` argument has a number of downsides, most importantly that it
only supports virtio storage drivers. This significantly reduces its
usefulness in testing memory card and Flash solutions, especially when
the tested images are from a third party source.
So therefore we reintroduce the vexpress_ca9x4 board in this commit,
with the explicit goal of using it with QEMU.
A number of differences to note from the original:
* Since the board was apparently unmaintained, I have now set myself
as the maintainer.
* The board has been converted to use the driver model, which was the
reason it was removed in the first place.
* The vexpress_ca15_tc2 and vexpress_ca5x2 boards, which were removed
in the same commit, are not necessary for the QEMU use case, and
have been omitted.
* An `mmc0` alias was introduced in the dts file. The mmc is not
detected correctly without this, now that it's based on the device
tree instead of the board's init function.
* A couple of other nodes were removed because they were problematic
when trying to run the UEFI bootmgr. Once again, the primary use
case here is QEMU, and these nodes are not needed for that to work.
* Unnecessary board init code has been removed, thanks to driver model
and device tree.
* `CONFIG_OF_EMBED` has been enabled. I know this goes against
recommended practice, but there doesn't seem to be any other way to
pass the dtb to U-Boot in the QEMU scenario. Using the -dtb argument
does not work, I suppose because U-Boot doesn't use the same
mechanics as the kernel when it's booting.
* Load addresses have been changed to fit QEMU use case.
People wanting to get a more detailed, yet somewhat isolated, diff
between this and the original, can run this command:
git diff c6c26a05b89f25a06e7562f8c2071b60fd0c9eac~1 -- \
$( git diff-tree --diff-filter=A -r --name-only HEAD~1 HEAD)
(Make sure to either check out this commit first, or replace HEAD with
the commit ID of this commit)
Signed-off-by: Kristian Amlie <kristian.amlie@northern.tech>
2021-09-07 14:37:51 +08:00
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2019-06-19 21:25:17 +08:00
|
|
|
integratorcp_cm926ejs test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "integratorcp_cm926ejs"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
qemu_arm test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu_arm"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
qemu_arm64 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu_arm64"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
2023-03-23 08:22:41 +08:00
|
|
|
|
|
|
|
qemu_m68k test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "M5208EVBE"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep and not efi"
|
|
|
|
OVERRIDE: "-a CONFIG_M68K_QEMU=y -a ~CONFIG_MCFTMR"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
2019-06-19 21:25:17 +08:00
|
|
|
|
2020-06-07 04:21:47 +08:00
|
|
|
qemu_malta test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "malta"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep and not efi"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
qemu_maltael test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "maltael"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep and not efi"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
qemu_malta64 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "malta64"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep and not efi"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
qemu_malta64el test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "malta64el"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep and not efi"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2019-06-19 21:25:17 +08:00
|
|
|
qemu-ppce500 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu-ppce500"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2020-03-28 22:25:27 +08:00
|
|
|
qemu-riscv32 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu-riscv32"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2019-08-02 23:32:37 +08:00
|
|
|
qemu-riscv64 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu-riscv64"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2020-03-28 22:25:29 +08:00
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
qemu-riscv32_spl test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu-riscv32_spl"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
qemu-riscv64_spl test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu-riscv64_spl"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2019-08-02 23:32:37 +08:00
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2019-06-19 21:25:17 +08:00
|
|
|
qemu-x86 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu-x86"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
qemu-x86_64 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu-x86_64"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2024-06-18 21:56:11 +08:00
|
|
|
qemu-xtensa-dc233c test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "qemu-xtensa-dc233c"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep and not efi"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2020-09-15 03:55:58 +08:00
|
|
|
r2dplus_i82557c test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "r2dplus"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2020-09-15 03:55:58 +08:00
|
|
|
TEST_PY_ID: "--id i82557c_qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
r2dplus_pcnet test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "r2dplus"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2020-09-15 03:55:58 +08:00
|
|
|
TEST_PY_ID: "--id pcnet_qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
r2dplus_rtl8139 test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "r2dplus"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2020-09-15 03:55:58 +08:00
|
|
|
TEST_PY_ID: "--id rtl8139_qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
r2dplus_tulip test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "r2dplus"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2020-09-15 03:55:58 +08:00
|
|
|
TEST_PY_ID: "--id tulip_qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2021-08-26 23:33:35 +08:00
|
|
|
sifive_unleashed_sdcard test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sifive_unleashed"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2021-08-26 23:33:35 +08:00
|
|
|
TEST_PY_ID: "--id sdcard_qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
sifive_unleashed_spi-nor test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "sifive_unleashed"
|
2024-10-16 02:28:26 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
2021-08-26 23:33:35 +08:00
|
|
|
TEST_PY_ID: "--id spi-nor_qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
2020-02-13 22:03:29 +08:00
|
|
|
xilinx_zynq_virt test.py:
|
2019-06-19 21:25:17 +08:00
|
|
|
variables:
|
2020-02-13 22:03:29 +08:00
|
|
|
TEST_PY_BD: "xilinx_zynq_virt"
|
2019-06-19 21:25:17 +08:00
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
xilinx_versal_virt test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "xilinx_versal_virt"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
|
|
|
|
|
|
|
xtfpga test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "xtfpga"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|
2022-01-22 01:23:01 +08:00
|
|
|
|
|
|
|
coreboot test.py:
|
|
|
|
variables:
|
|
|
|
TEST_PY_BD: "coreboot"
|
|
|
|
TEST_PY_TEST_SPEC: "not sleep"
|
|
|
|
TEST_PY_ID: "--id qemu"
|
|
|
|
<<: *buildman_and_testpy_dfn
|