diff mbox series

u-boot: move DT validation yaml removal patch to common SRC_URI

Message ID 20260507204018.3254064-1-ricardo.salveti@oss.qualcomm.com
State Under Review
Headers show
Series u-boot: move DT validation yaml removal patch to common SRC_URI | expand

Commit Message

Ricardo de Araujo (Salveti) May 7, 2026, 8:40 p.m. UTC
Commit 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation") added the
backport through SRC_URI_RISCV, so only RISC-V u-boot builds picked it up.

This issue is because the v1 of the patch was merged instead the v2 (which
is also not fully correct as it is not patching u-boot-tools). Drop the
patch from SRC_URI_RISCV and move it to u-boot-common.inc so it is applied
consistently to both u-boot and u-boot-tools.

Fixes: 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation")
Signed-off-by: Ricardo Salveti <ricardo.salveti@oss.qualcomm.com>
---
 meta/recipes-bsp/u-boot/u-boot-common.inc | 5 ++++-
 meta/recipes-bsp/u-boot/u-boot_2026.04.bb | 1 -
 2 files changed, 4 insertions(+), 2 deletions(-)

Comments

Quentin Schulz May 8, 2026, 2:35 p.m. UTC | #1
Hi Ricardo,

On 5/7/26 10:40 PM, Ricardo Salveti via lists.openembedded.org wrote:
> Commit 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation") added the
> backport through SRC_URI_RISCV, so only RISC-V u-boot builds picked it up.
> 
> This issue is because the v1 of the patch was merged instead the v2 (which
> is also not fully correct as it is not patching u-boot-tools). Drop the
> patch from SRC_URI_RISCV and move it to u-boot-common.inc so it is applied
> consistently to both u-boot and u-boot-tools.
> 
> Fixes: 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation")
> Signed-off-by: Ricardo Salveti <ricardo.salveti@oss.qualcomm.com>
> ---
>   meta/recipes-bsp/u-boot/u-boot-common.inc | 5 ++++-
>   meta/recipes-bsp/u-boot/u-boot_2026.04.bb | 1 -
>   2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-bsp/u-boot/u-boot-common.inc b/meta/recipes-bsp/u-boot/u-boot-common.inc
> index 574768b9f8..15e94a4e37 100644
> --- a/meta/recipes-bsp/u-boot/u-boot-common.inc
> +++ b/meta/recipes-bsp/u-boot/u-boot-common.inc
> @@ -14,7 +14,10 @@ PE = "1"
>   # repo during parse
>   SRCREV = "88dc2788777babfd6322fa655df549a019aa1e69"
>   
> -SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV}"
> +SRC_URI = "\
> +    git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV} \
> +    file://0001-scripts-dtc-drop-yaml-in-DT-validation.patch \
> +"
>   

This means any recipe including recipes-bsp/u-boot/u-boot-common.inc 
will need to override SRC_URI in addition to SRCREV otherwise the patch 
may not apply.

Wondering if we should move SRCREV and that patch into a

u-boot-2026.04.inc

which we can then include from
meta/recipes-bsp/u-boot/u-boot-tools_2026.04.bb
meta/recipes-bsp/u-boot/u-boot_2026.04.bb

with
require u-boot-${PV}.inc

?

Cheers,
Quentin
Ricardo de Araujo (Salveti) May 8, 2026, 4:04 p.m. UTC | #2
On Fri, May 8, 2026 at 11:35 AM Quentin Schulz <quentin.schulz@cherry.de> wrote:
>
> Hi Ricardo,
>
> On 5/7/26 10:40 PM, Ricardo Salveti via lists.openembedded.org wrote:
> > Commit 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation") added the
> > backport through SRC_URI_RISCV, so only RISC-V u-boot builds picked it up.
> >
> > This issue is because the v1 of the patch was merged instead the v2 (which
> > is also not fully correct as it is not patching u-boot-tools). Drop the
> > patch from SRC_URI_RISCV and move it to u-boot-common.inc so it is applied
> > consistently to both u-boot and u-boot-tools.
> >
> > Fixes: 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation")
> > Signed-off-by: Ricardo Salveti <ricardo.salveti@oss.qualcomm.com>
> > ---
> >   meta/recipes-bsp/u-boot/u-boot-common.inc | 5 ++++-
> >   meta/recipes-bsp/u-boot/u-boot_2026.04.bb | 1 -
> >   2 files changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/meta/recipes-bsp/u-boot/u-boot-common.inc b/meta/recipes-bsp/u-boot/u-boot-common.inc
> > index 574768b9f8..15e94a4e37 100644
> > --- a/meta/recipes-bsp/u-boot/u-boot-common.inc
> > +++ b/meta/recipes-bsp/u-boot/u-boot-common.inc
> > @@ -14,7 +14,10 @@ PE = "1"
> >   # repo during parse
> >   SRCREV = "88dc2788777babfd6322fa655df549a019aa1e69"
> >
> > -SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV}"
> > +SRC_URI = "\
> > +    git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV} \
> > +    file://0001-scripts-dtc-drop-yaml-in-DT-validation.patch \
> > +"
> >
>
> This means any recipe including recipes-bsp/u-boot/u-boot-common.inc
> will need to override SRC_URI in addition to SRCREV otherwise the patch
> may not apply.
>
> Wondering if we should move SRCREV and that patch into a
>
> u-boot-2026.04.inc
>
> which we can then include from
> meta/recipes-bsp/u-boot/u-boot-tools_2026.04.bb
> meta/recipes-bsp/u-boot/u-boot_2026.04.bb
>
> with
> require u-boot-${PV}.inc

u-boot-common.inc is really minimal and mostly just to add the common
homepage, license, srcrev and src_uri, so not sure if other variants
should really be including it (e.g. LIC_FILES_CHKSUM could as well
change based on the base version used).

If we move SRCREV and SRC_URI to another common include file then
u-boot-common.inc will just be used to share non-critical variables,
which should probably also be customized by other alternatives (e.g.
HOMEPAGE could be different).

So not sure if this would help much.

Thanks,

Ricardo
Dmitry Baryshkov May 8, 2026, 7:09 p.m. UTC | #3
On Thu, May 07, 2026 at 05:40:18PM -0300, Ricardo Salveti wrote:
> Commit 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation") added the
> backport through SRC_URI_RISCV, so only RISC-V u-boot builds picked it up.
> 
> This issue is because the v1 of the patch was merged instead the v2 (which
> is also not fully correct as it is not patching u-boot-tools). Drop the
> patch from SRC_URI_RISCV and move it to u-boot-common.inc so it is applied
> consistently to both u-boot and u-boot-tools.
> 
> Fixes: 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation")
> Signed-off-by: Ricardo Salveti <ricardo.salveti@oss.qualcomm.com>
> ---
>  meta/recipes-bsp/u-boot/u-boot-common.inc | 5 ++++-
>  meta/recipes-bsp/u-boot/u-boot_2026.04.bb | 1 -
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-bsp/u-boot/u-boot-common.inc b/meta/recipes-bsp/u-boot/u-boot-common.inc
> index 574768b9f8..15e94a4e37 100644
> --- a/meta/recipes-bsp/u-boot/u-boot-common.inc
> +++ b/meta/recipes-bsp/u-boot/u-boot-common.inc
> @@ -14,7 +14,10 @@ PE = "1"
>  # repo during parse
>  SRCREV = "88dc2788777babfd6322fa655df549a019aa1e69"
>  
> -SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV}"
> +SRC_URI = "\
> +    git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV} \
> +    file://0001-scripts-dtc-drop-yaml-in-DT-validation.patch \

We are fetching the source basing on the PV. The patch might be
applicable or might not. I'd suggest listing the patch twice: in the
u-boot_2026.04.bb and u-boot-tools_2026.04.bb.

(in fact I did that in a local patch, it's good that I checked the ML
before sending it).

> +"
>  
>  B = "${WORKDIR}/build"
>
Ricardo de Araujo (Salveti) May 8, 2026, 8:57 p.m. UTC | #4
On Fri, May 8, 2026 at 4:09 PM Dmitry Baryshkov
<dmitry.baryshkov@oss.qualcomm.com> wrote:
> On Thu, May 07, 2026 at 05:40:18PM -0300, Ricardo Salveti wrote:
> > Commit 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation") added the
> > backport through SRC_URI_RISCV, so only RISC-V u-boot builds picked it up.
> >
> > This issue is because the v1 of the patch was merged instead the v2 (which
> > is also not fully correct as it is not patching u-boot-tools). Drop the
> > patch from SRC_URI_RISCV and move it to u-boot-common.inc so it is applied
> > consistently to both u-boot and u-boot-tools.
> >
> > Fixes: 5e97f3c1e2cf ("u-boot-tools: drop yaml in DT validation")
> > Signed-off-by: Ricardo Salveti <ricardo.salveti@oss.qualcomm.com>
> > ---
> >  meta/recipes-bsp/u-boot/u-boot-common.inc | 5 ++++-
> >  meta/recipes-bsp/u-boot/u-boot_2026.04.bb | 1 -
> >  2 files changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/meta/recipes-bsp/u-boot/u-boot-common.inc b/meta/recipes-bsp/u-boot/u-boot-common.inc
> > index 574768b9f8..15e94a4e37 100644
> > --- a/meta/recipes-bsp/u-boot/u-boot-common.inc
> > +++ b/meta/recipes-bsp/u-boot/u-boot-common.inc
> > @@ -14,7 +14,10 @@ PE = "1"
> >  # repo during parse
> >  SRCREV = "88dc2788777babfd6322fa655df549a019aa1e69"
> >
> > -SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV}"
> > +SRC_URI = "\
> > +    git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV} \
> > +    file://0001-scripts-dtc-drop-yaml-in-DT-validation.patch \
>
> We are fetching the source basing on the PV. The patch might be
> applicable or might not. I'd suggest listing the patch twice: in the
> u-boot_2026.04.bb and u-boot-tools_2026.04.bb.

But the SRCREV is part of u-boot-common.inc, so it is aligned with it
anyway (and it was also how patches were managed before here).

If we move the patch it might be better to move everything related to
the version used, and at that point we would end up duplicating most
entries from it anyway.

Cheers,

Ricardo
Joao Marcos Costa May 8, 2026, 10:51 p.m. UTC | #5
Hello Quentin and Ricardo,

First, thanks @Ricardo for spotting this v1-instead-of-v2 error!

On 5/8/26 16:35, Quentin Schulz via lists.openembedded.org wrote:
(...)
> 
> This means any recipe including recipes-bsp/u-boot/u-boot-common.inc 
> will need to override SRC_URI in addition to SRCREV otherwise the patch 
> may not apply.

It's actually a bit harsher than not applying:

ERROR: 
/src/openembedded-core/meta/recipes-bsp/dummy-u-boot/u-boot-foo_2026.04.foo.bb: 
Unable to get checksum for u-boot-foo SRC_URI entry 
0001-scripts-dtc-drop-yaml-in-DT-validation.patch: file could not be found

so bitbake halts right away, far before do_patch.

While I agree the v2 was not fully correct, this patch cannot be added 
to .inc files, since they may be required by recipes whose FILESPATH 
list wouldn't include the patch in the first place.

See "72d1f9ec6fc060ea586a61f3da92ffac440f0ded: u-boot: relocate 
SRC_URI_RISCV into recipe".
Joao Marcos Costa May 8, 2026, 10:55 p.m. UTC | #6
Hello,

On 5/8/26 21:09, Dmitry Baryshkov via lists.openembedded.org wrote:
(...)
> 
> We are fetching the source basing on the PV. The patch might be
> applicable or might not. I'd suggest listing the patch twice: in the
> u-boot_2026.04.bb and u-boot-tools_2026.04.bb.
> 
> (in fact I did that in a local patch, it's good that I checked the ML
> before sending it).

I agree with this approach. Also, even if someone does not like seeing 
the same patch applied in two different recipes, the patch was already 
merged upstream and should be available in v2026.05 (I hope?). So, in 
any case, we will drop it soon enough.
Ricardo de Araujo (Salveti) May 8, 2026, 11:43 p.m. UTC | #7
On Fri, May 8, 2026 at 7:51 PM Joao Marcos Costa
<joaomarcos.costa@bootlin.com> wrote:
>
> Hello Quentin and Ricardo,
>
> First, thanks @Ricardo for spotting this v1-instead-of-v2 error!
>
> On 5/8/26 16:35, Quentin Schulz via lists.openembedded.org wrote:
> (...)
> >
> > This means any recipe including recipes-bsp/u-boot/u-boot-common.inc
> > will need to override SRC_URI in addition to SRCREV otherwise the patch
> > may not apply.
>
> It's actually a bit harsher than not applying:
>
> ERROR:
> /src/openembedded-core/meta/recipes-bsp/dummy-u-boot/u-boot-foo_2026.04.foo.bb:
> Unable to get checksum for u-boot-foo SRC_URI entry
> 0001-scripts-dtc-drop-yaml-in-DT-validation.patch: file could not be found
>
> so bitbake halts right away, far before do_patch.
>
> While I agree the v2 was not fully correct, this patch cannot be added
> to .inc files, since they may be required by recipes whose FILESPATH
> list wouldn't include the patch in the first place.

I don't think it correct to import an .inc and later replace SRCREV
without having to also deal with other side effects, and this inc file
is really minimal, mostly to set the common recipe-related variables,
the dependencies and the source rev for both u-boot and u-boot-tools.

We could duplicate these variables per recipe, or create yet another
common file based on the version (as suggested by Quentin), but I
think it is just an overkill.

If you look at how patches were managed here before, they were always
included together with SRCREV, as it is OK to expect both to be
defined together.

Thanks,

Ricardo
diff mbox series

Patch

diff --git a/meta/recipes-bsp/u-boot/u-boot-common.inc b/meta/recipes-bsp/u-boot/u-boot-common.inc
index 574768b9f8..15e94a4e37 100644
--- a/meta/recipes-bsp/u-boot/u-boot-common.inc
+++ b/meta/recipes-bsp/u-boot/u-boot-common.inc
@@ -14,7 +14,10 @@  PE = "1"
 # repo during parse
 SRCREV = "88dc2788777babfd6322fa655df549a019aa1e69"
 
-SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV}"
+SRC_URI = "\
+    git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV} \
+    file://0001-scripts-dtc-drop-yaml-in-DT-validation.patch \
+"
 
 B = "${WORKDIR}/build"
 
diff --git a/meta/recipes-bsp/u-boot/u-boot_2026.04.bb b/meta/recipes-bsp/u-boot/u-boot_2026.04.bb
index 9f09d91daa..5259fd5832 100644
--- a/meta/recipes-bsp/u-boot/u-boot_2026.04.bb
+++ b/meta/recipes-bsp/u-boot/u-boot_2026.04.bb
@@ -14,7 +14,6 @@  SRC_URI_RISCV = "\
     ${@bb.utils.contains    ("TUNE_FEATURES", "d",      "file://u-boot-riscv-isa_d.cfg", "", d)} \
     ${@bb.utils.contains_any("TUNE_FEATURES", "b zbb",  "file://u-boot-riscv-isa_zbb.cfg", "", d)} \
     ${@bb.utils.contains    ("TUNE_FEATURES", "zicbom", "file://u-boot-riscv-isa_zicbom.cfg", "", d)} \
-    file://0001-scripts-dtc-drop-yaml-in-DT-validation.patch \
     "
 
 SRC_URI:append:riscv32 = "${SRC_URI_RISCV}"