[meta-xilinx] Pyro -> Rocko: "Nothing PROVIDES 'device-tree'" error?

Giordon Stark kratsg at gmail.com
Sun Mar 18 08:42:36 PDT 2018


Hi Nathan,

On Sun, Mar 18, 2018 at 6:29 AM Nathan Rossi <nathan at nathanrossi.com> wrote:

> On 18 March 2018 at 04:57, Giordon Stark <kratsg at gmail.com> wrote:
> > Hi,
> >
> > Based on Jorge's suggestion (cc'd), I uncommented my lines in
> > device-tree.bbappend to set compatible machine = ".*" for my particular
> > boards as it is being done upstream... and bitbake seems to be happier
> with
> > that, but then I run into this error
>
> Yes that change was done for rocko. It was done to prevent
> expectations around device-tree supporting machines where the user has
> not provided the device tree files to build, in order to make it clear
> what pieces are needed to build for custom machines.
>

Can you point to the specific change made? It's not clear to me that adding

COMPATIBLE_MACHINE_my-machine = ".*"

actually makes this situation clearer, rather than say

COMPATIBLE_MACHINE_my-machine = "my_machine"

So I went ahead and set SPL_BINARY = "" to clear it out, and updated
platform-init but then I got a boot-bin recipe related error as well as the
fact that platform-init can't find the ps*init files. I guess a lot of this
is now requiring tighter integration with the SDK which is slightly
breaking my use case..

I'm currently using the FSBL method at the moment, so I'm doing this via
CROPS (virtual machine + automating the build in continuous integration)
and then taking the bitbake outputs and loading them up into my SDK on a
different machine to make the BOOT.bin. Is this not possible anymore with
all of these changes and requiring the zcu102-zynqmp.conf? Should I just go
one step higher and set all of these things myself manually and drop
platform-init/boot-bin/spl?

G


>
> >
> > ERROR: Nothing PROVIDES 'virtual/xilinx-platform-init' (but
> > /local/d4/gstark/meta-xilinx/meta-xilinx-bsp/recipes-bsp/u-boot/
> u-boot-xlnx_2017.3.bb
> > DEPENDS on or otherwise requires it)
> > platform-init PROVIDES virtual/xilinx-platform-init but was skipped:
> > incompatible with machine gfex-prototype3a (not in COMPATIBLE_MACHINE)
> > ERROR: Required build target 'zynq-base' has no buildable providers.
> > Missing or unbuildable dependency chain was: ['zynq-base',
> > 'virtual/bootloader', 'virtual/xilinx-platform-init']
> >
> > So I suppose I need to add a platform-init/platform-init.bbappend file
> that
> > overrides the compatible machine again as well...
> >
> > This seems slightly hacky, and maybe indicative that I've done something
> > wrong in defining a machine on top of zcu102-zynqmp somehow... but this
> > worked in pyro, so there must be a change between pyro and rocko... any
> > ideas?
>
> There were some changes to the u-boot spl platform detection logic,
> this may have changed your use case. But if you don't want u-boot SPL
> for zynqmp, don't set SPL_BINARY to boot.bin.
>
> If you do want SPL make sure you are doing one of the following:
>
> * using a defconfig that provides platform init files (e.g.
> xilinx_zynqmp_zcu102_rev1_0_defconfig), u-boot-xlnx had some churn to
> which configs provided platform-init files, check you are using the
> desired one
> * appending to platform-init to include the files in your layer, and
> that platform-init has COMPATIBLE_MACHINE set to match your machine
> * patching u-boot to include the platform init files, and that you are
> adding the defconfig that provides them to the HAS_PLATFORM_INIT
> variable.
>
> Regards,
> Nathan
>
> >
> > Giordon
> >
> >
> >
> > On Sat, Mar 17, 2018 at 1:10 PM Giordon Stark <kratsg at gmail.com> wrote:
> >>
> >> Hi,
> >>
> >> I've been trying to understand/figure out what changed to break
> something
> >> that was definitely working on pyro -- but it's been hard to trace
> changes
> >> because of the move/restructuring...
> >>
> >> When I re-run bitbake for an image that I've built in pyro just fine
> using
> >> all the same code, I see this error about "Nothing PROVIDES
> 'device-tree' as
> >> seen below.
> >>
> >> This seems to stem from how I tell u-boot about the dtb files that have
> >> been made:
> >>
> https://github.com/kratsg/meta-l1calo/blob/master/recipes-bsp/u-boot/u-boot-xlnx.inc
> >> (DEPENDS_append_... = " device-tree"). Is there a new way of doing it?
> >>
> >> ERROR: Nothing PROVIDES 'device-tree' (but
> >> /local/d4/gstark/meta-xilinx/meta-xilinx-bsp/recipes-bsp/u-boot/
> u-boot-xlnx_2017.3.bb
> >> DEPENDS on or otherwise requires it)
> >> device-tree was skipped: incompatible with machine gfex-prototype3a (not
> >> in COMPATIBLE_MACHINE)
> >> ERROR: Required build target 'zynq-base' has no buildable providers.
> >> Missing or unbuildable dependency chain was: ['zynq-base',
> >> 'virtual/bootloader', 'device-tree']
> >>
> >> Summary: There were 2 ERROR messages shown, returning a non-zero exit
> >> code.
> >>
> >> Giordon
> >> --
> >> Giordon Stark
> >
> > --
> > Giordon Stark
> >
> > --
> > _______________________________________________
> > meta-xilinx mailing list
> > meta-xilinx at yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/meta-xilinx
> >
>
-- 
Giordon Stark
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-xilinx/attachments/20180318/6cb4011d/attachment-0001.html>


More information about the meta-xilinx mailing list