[PATCH v2 3/4] Gitlab: sage: Add Pine64+ platform

Jerome Forissier jerome.forissier at linaro.org
Thu Nov 20 16:51:46 CET 2025


Hi Tom,

On 11/18/25 22:00, Tom Rini wrote:
> This adds the Pine64+ platform to the sage lab, for both legacy and lwIP
> networking stacks. In order to build this platform we need to copy
> certain files that were built in the container to /tmp and then set
> BINMAN_INDIRS to /tmp in order to find them when building.
> 
> For now, we disable the test_net_pxe_boot_config test on lwIP as it
> leads to a crash that needs to be investigated.
> 
> Signed-off-by: Tom Rini <trini at konsulko.com>
> ---
> Cc: Andre Przywara <andre.przywara at arm.com>
> Cc: Jerome Forissier <jerome.forissier at linaro.org>
> 
> Andre, Jerome, how would you like to handle looking in to this issue?
> https://source.denx.de/u-boot/u-boot/-/jobs/1303375#L2235 shows the
> crash and I don't have enough sunxi targets to know if this is more
> broadly breakable or not. But it doesn't happen on lwIP + Pi for
> example, nor lwIP + Hummingboard (mx6cuboxi defconfig). I can't at this
> point give remote access to the lab directly, but I can help come up
> with a gitlab job that'll acquire the board, build and try and boot
> whatever you have.

Well the crash dump doesn't tell much on its own, except that we have
an invalid read at address 0x17. But we do have the ELR so it would be
helpful to have the u-boot.elf file. Could it be made available as a job
artifact, especially in case of failure (or always)?

Thanks,
-- 
Jerome


> ---
>  .gitlab-ci-sage-lab.yml | 30 ++++++++++++++++++++++++++++--
>  1 file changed, 28 insertions(+), 2 deletions(-)
> 
> diff --git a/.gitlab-ci-sage-lab.yml b/.gitlab-ci-sage-lab.yml
> index fa7d79668b2c..815c93087f4f 100644
> --- a/.gitlab-ci-sage-lab.yml
> +++ b/.gitlab-ci-sage-lab.yml
> @@ -35,14 +35,21 @@
>      # Prepare ssh
>      - mkdir --mode=0700 ~/.ssh;
>        printf 'Host sage-exporter-*\n\tUser labgrid\n' > ~/.ssh/config
> +    # If we have TF-A binaries, we need to use them.
> +    - if [[ -d /opt/tf-a/${TEST_PY_BD}${TEST_PY_ID//--id /_} ]]; then
> +        cp /opt/tf-a/${TEST_PY_BD}${TEST_PY_ID//--id /_}/* /tmp/;
> +      elif [[ -d /opt/tf-a/${TEST_PY_BD} ]]; then
> +        cp /opt/tf-a/${TEST_PY_BD}/* /tmp/;
> +      fi;
> +      export BINMAN_INDIRS=/tmp;
>    script:
>      - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
>      # Don't stop on non-zero exit codes now, to provide as much chance as
>      # possible to ensure we don't leave lab resources acquired.
>      - set +e;
> -    # Sage is 16 threads and has 3 devices attached, so 6 builder threads.
> +    # Sage is 16 threads and has 4 devices attached, so 4 builder threads.
>      - tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W -e
> -        --board ${TEST_PY_BD} ${OVERRIDE} -T 6;
> +        --board ${TEST_PY_BD} ${OVERRIDE} -T 4;
>        RC=`echo $?`;
>      # Wait for the exporter to have the device ready
>      - while test `labgrid-client resources |
> @@ -79,6 +86,25 @@
>        junit: results.xml
>      expire_in: 1 week
>  
> +Pine64+:
> +  <<: *sage_lab_dfn
> +  variables:
> +    LABGRID_EXPORTER: "sage-exporter-pine64-1"
> +    LG_PLACE: "pine64-1"
> +    TEST_PY_BD: "pine64_plus"
> +    OVERRIDE: "-a CMD_BOOTMENU -a CMD_LOG"
> +
> +Pine64+ (lwIP):
> +  <<: *sage_lab_dfn
> +  needs: [ "Pine64+" ]
> +  variables:
> +    LABGRID_EXPORTER: "sage-exporter-pine64-1"
> +    LG_PLACE: "pine64-1"
> +    TEST_PY_BD: "pine64_plus"
> +    # Leads to crash on lwIP, needs investigation.
> +    TEST_PY_TEST_SPEC: "not test_net_pxe_boot_config"
> +    OVERRIDE: "-a CMD_BOOTMENU -a CMD_LOG -a NET_LWIP"
> +
>  SolidRun Hummingboard 2:
>    <<: *sage_lab_dfn
>    variables:


More information about the U-Boot mailing list