Hi Nathan,

I don't quite follow you here - the PMU provider of zcu102 is:


martin@dell:~/work/petalinux/build$ cat 
../sources/meta-xilinx/meta-xilinx-bsp/conf/machine/zcu102-zynqmp.conf | grep 
PREFERRED_PROVIDER_virtual/pmu
PREFERRED_PROVIDER_virtual/pmu-firmware ?= "zynqmp-pmu-pmu-firmware"

however, it is built using XSDK - from the compile log:


+ eval xsct 
/home/martin/work/petalinux/build/tmp/work/zcu102_zynqmp-xilinx-linux/pmu-firmware/2018.1+gitAUTOINC+aaa566bc3f-r0/app.tcl
 -ws 
/home/martin/work/petalinux/build/tmp/work/zcu102_zynqmp-xilinx-linux/pmu-firmware/2018.1+gitAUTOINC+aaa566bc3f-r0/build
 -pname pmu-firmware -rp 
/home/martin/work/petalinux/build/tmp/work/zcu102_zynqmp-xilinx-linux/pmu-firmware/2018.1+gitAUTOINC+aaa566bc3f-r0/git
 -do_compile 1


martin@dell:~/work/petalinux/build$ ll tmp/deploy/images/zcu102-zynqmp/pmu-*
-rw-r--r-- 2 martin martin 116744 May 15 10:31 
tmp/deploy/images/zcu102-zynqmp/pmu-firmware-2018.1+gitAUTOINC+aaa566bc3f-r0-zcu102-zynqmp-20180515083059.elf
lrwxrwxrwx 2 martin martin     77 May 15 10:31 
tmp/deploy/images/zcu102-zynqmp/pmu-firmware-zcu102-zynqmp.elf -> 
pmu-firmware-2018.1+gitAUTOINC+aaa566bc3f-r0-zcu102-zynqmp-20180515083059.elf
lrwxrwxrwx 2 martin martin     30 May 15 10:31 
tmp/deploy/images/zcu102-zynqmp/pmu-zcu102-zynqmp.elf -> 
pmu-firmware-zcu102-zynqmp.elf

Br,
Martin



________________________________
From: Nathan Rossi <nat...@nathanrossi.com>
Sent: Tuesday, May 15, 2018 6:19:43 PM
To: Martin Siegumfeldt
Cc: meta-xilinx@yoctoproject.org
Subject: Re: [meta-xilinx] Provider of pmu-firmware [rel-v2018.1]

On 15 May 2018 at 20:54, Martin Siegumfeldt <m...@gomspace.com> wrote:
> Hi,
>
> Based on 
> https://github.com/Xilinx/meta-xilinx-tools/commit/a516c3a4a8b29e07233b5f2ecf91a2a3e63a1ff7
>  I would like to switch from building the pmu-firmware using the XSDK (i.e. 
> through meta-xilinx-tools) to the generated toolchain (i.e. through 
> meta-xilinx). However the latter layer seems not (directly at least) to 
> provide this:
>
> martin@dell:~/work/tmp/xilinx$ ack ^'PROVIDES = "virtual/pmu-firmware' 
> meta-xilinx-tools/ meta-xilinx
> meta-xilinx-tools/recipes-bsp/pmu-firmware/pmu-firmware_git.bb
> 3:PROVIDES = "virtual/pmu-firmware"
>
> Inspecting 
> https://github.com/Xilinx/meta-xilinx/blob/rel-v2018.1/meta-xilinx-bsp/recipes-bsp/pmu-firmware/pmu-firmware_2017.3.bb
>
> provides the following information:
>
> # force this recipe to provide a target virtual/pmu-firmware. this is applied
> # after any class extender mapping and results in this recipe always providing
> # 'virtual/pmu-firmware'.
> python append_target_provides () {
>     d.appendVar("PROVIDES", " virtual/pmu-firmware")
> }

This is to work around the recipe only providing
"virtual/zynqmp-pmu-pmu-firmware" since the recipe is only valid for
the microblaze 'multilib'.

>
> which is not exactly clear to me? In any case, the recipes are named the same 
> and I don't see how to switch between the providers? I tried deleting 
> 'meta-xilinx-tools/recipes-bsp/pmu-firmware/pmu-firmware_git.bb' after which 
> the meta-xilinx variant seems to be built but does not boot.
>
> Am I missing something or is the provider concept broken/incomplete?

The preferred provider selection should work, however due to the
naming of the recipes it might be a bit confusing.

To use the pmu-firmware (aka zynqmp-pmu-pmu-firmware) built in oe via
the meta-xilinx-bsp pmu-firmware recipe you should set the provider
like so:

PREFERRED_PROVIDER_virtual/pmu-firmware = "zynqmp-pmu-pmu-firmware"

(like how the zcu102-zynqmp machine does
https://github.com/Xilinx/meta-xilinx/blob/master/meta-xilinx-bsp/conf/machine/zcu102-zynqmp.conf#L28)

To use the pmu-firmware built using XSDK/xsct via the
meta-xilinx-tools pmu-firmware recipe you should set the provider like
so:

PREFERRED_PROVIDER_virtual/pmu-firmware = "pmu-firmware"

Regards,
Nathan
-- 
_______________________________________________
meta-xilinx mailing list
meta-xilinx@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-xilinx

Reply via email to