[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <089fbd77-43ec-4ed5-8bcf-168a502c5270@igalia.com>
Date: Wed, 23 Apr 2025 15:56:51 -0300
From: Helen Koike <koike@...lia.com>
To: Vignesh Raman <vignesh.raman@...labora.com>,
dri-devel@...ts.freedesktop.org
Cc: daniels@...labora.com, daniel@...ishbar.org, helen.fornazier@...il.com,
airlied@...il.com, simona.vetter@...ll.ch, robdclark@...il.com,
guilherme.gallo@...labora.com, sergi.blanch.torne@...labora.com,
valentine.burley@...labora.com, lumag@...nel.org,
dmitry.baryshkov@....qualcomm.com, quic_abhinavk@...cinc.com,
mripard@...nel.org, maarten.lankhorst@...ux.intel.com, tzimmermann@...e.de,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 1/2] drm/ci: Add jobs to validate devicetrees
On 17/04/2025 00:04, Vignesh Raman wrote:
> Add jobs to run dt_binding_check and dtbs_check. If warnings are seen,
> exit with a non-zero error code while configuring them as warning in
> the GitLab CI pipeline.
>
> Signed-off-by: Vignesh Raman <vignesh.raman@...labora.com>
> Reviewed-by: Maxime Ripard <mripard@...nel.org>
> Acked-by: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
> ---
>
> v3:
> - Add dt-binding-check and dtbs-check jobs to the static-checks stage.
>
> v2:
> - Use LLVM/Clang instead of GCC to avoid architecture-specific
> toolchains for cross-compiling.
>
> ---
> drivers/gpu/drm/ci/check-devicetrees.yml | 44 ++++++++++++++++++++++++
> drivers/gpu/drm/ci/dt-binding-check.sh | 16 +++++++++
> drivers/gpu/drm/ci/dtbs-check.sh | 19 ++++++++++
> drivers/gpu/drm/ci/gitlab-ci.yml | 2 ++
> 4 files changed, 81 insertions(+)
> create mode 100644 drivers/gpu/drm/ci/check-devicetrees.yml
> create mode 100755 drivers/gpu/drm/ci/dt-binding-check.sh
> create mode 100755 drivers/gpu/drm/ci/dtbs-check.sh
>
> diff --git a/drivers/gpu/drm/ci/check-devicetrees.yml b/drivers/gpu/drm/ci/check-devicetrees.yml
> new file mode 100644
> index 000000000000..75c9b009da1f
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/check-devicetrees.yml
> @@ -0,0 +1,44 @@
> +.dt-check-base:
> + stage: static-checks
> + timeout: "30m"
> + variables:
> + FF_USE_NEW_BASH_EVAL_STRATEGY: 'true'
> + SCHEMA: "display"
Shouldn't we also check for gpu ?
Regards,
Helen
> + before_script:
> + - apt-get update -qq
> + - apt-get install -y --no-install-recommends clang lld llvm python3-pip yamllint
> + - pip3 install dtschema
> + script:
> + - drivers/gpu/drm/ci/${SCRIPT_NAME}
> + artifacts:
> + when: on_failure
> + paths:
> + - ${ARTIFACT_FILE}
> + allow_failure:
> + exit_codes:
> + - 102
> +
> +dtbs-check:arm32:
> + extends:
> + - .build:arm32
> + - .dt-check-base
> + variables:
> + SCRIPT_NAME: "dtbs-check.sh"
> + ARTIFACT_FILE: "dtbs-check.log"
> +
> +dtbs-check:arm64:
> + extends:
> + - .build:arm64
> + - .dt-check-base
> + variables:
> + SCRIPT_NAME: "dtbs-check.sh"
> + ARTIFACT_FILE: "dtbs-check.log"
> +
> +dt-binding-check:
> + extends:
> + - .build
> + - .use-debian/x86_64_build
> + - .dt-check-base
> + variables:
> + SCRIPT_NAME: "dt-binding-check.sh"
> + ARTIFACT_FILE: "dt-binding-check.log"
> diff --git a/drivers/gpu/drm/ci/dt-binding-check.sh b/drivers/gpu/drm/ci/dt-binding-check.sh
> new file mode 100755
> index 000000000000..5e9a439c48a4
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/dt-binding-check.sh
> @@ -0,0 +1,16 @@
> +#!/bin/bash
> +# SPDX-License-Identifier: MIT
> +
> +set -euxo pipefail
> +
> +if ! make -j"${FDO_CI_CONCURRENT:-4}" dt_binding_check \
> + DT_SCHEMA_FILES="${SCHEMA:-}" 2>dt-binding-check.log; then
> + echo "ERROR: 'make dt_binding_check' failed. Please check dt-binding-check.log for details."
> + exit 1
> +fi
> +
> +if [[ -s dt-binding-check.log ]]; then
> + echo "WARNING: dt_binding_check reported warnings. Please check dt-binding-check.log" \
> + "for details."
> + exit 102
> +fi
> diff --git a/drivers/gpu/drm/ci/dtbs-check.sh b/drivers/gpu/drm/ci/dtbs-check.sh
> new file mode 100755
> index 000000000000..91212f19fb98
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/dtbs-check.sh
> @@ -0,0 +1,19 @@
> +#!/bin/bash
> +# SPDX-License-Identifier: MIT
> +
> +set -euxo pipefail
> +
> +: "${KERNEL_ARCH:?ERROR: KERNEL_ARCH must be set}"
> +
> +make LLVM=1 ARCH="${KERNEL_ARCH}" defconfig
> +
> +if ! make -j"${FDO_CI_CONCURRENT:-4}" ARCH="${KERNEL_ARCH}" LLVM=1 dtbs_check \
> + DT_SCHEMA_FILES="${SCHEMA:-}" 2>dtbs-check.log; then
> + echo "ERROR: 'make dtbs_check' failed. Please check dtbs-check.log for details."
> + exit 1
> +fi
> +
> +if [[ -s dtbs-check.log ]]; then
> + echo "WARNING: dtbs_check reported warnings. Please check dtbs-check.log for details."
> + exit 102
> +fi
> diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml b/drivers/gpu/drm/ci/gitlab-ci.yml
> index 65adcd97e06b..ac2f498cfe5a 100644
> --- a/drivers/gpu/drm/ci/gitlab-ci.yml
> +++ b/drivers/gpu/drm/ci/gitlab-ci.yml
> @@ -108,6 +108,7 @@ include:
> - drivers/gpu/drm/ci/static-checks.yml
> - drivers/gpu/drm/ci/build.yml
> - drivers/gpu/drm/ci/test.yml
> + - drivers/gpu/drm/ci/check-devicetrees.yml
> - 'https://gitlab.freedesktop.org/gfx-ci/lab-status/-/raw/main/lab-status.yml'
>
>
> @@ -117,6 +118,7 @@ stages:
> - git-archive
> - build-for-tests
> - build-only
> + - static-checks
> - code-validation
> - amdgpu
> - i915
Powered by blists - more mailing lists