[meta-xilinx] Thud release update
Luca Ceresoli
luca at lucaceresoli.net
Fri Dec 14 02:43:38 PST 2018
Hi Manjukumar,
On 13/12/18 00:04, Manjukumar Harthikote Matha wrote:
>
>
>> -----Original Message-----
>> From: Manjukumar Harthikote Matha
>> Sent: Wednesday, December 12, 2018 11:42 AM
>> To: Luca Ceresoli <luca at lucaceresoli.net>; meta-xilinx at yoctoproject.org
>> Subject: RE: [meta-xilinx] Thud release update
>>
>> Hi Luca,
>>
>>> -----Original Message-----
>>> From: Luca Ceresoli [mailto:luca at lucaceresoli.net]
>>> Sent: Wednesday, December 12, 2018 8:31 AM
>>> To: Manjukumar Harthikote Matha <MANJUKUM at xilinx.com>; meta-
>>> xilinx at yoctoproject.org
>>> Subject: Re: [meta-xilinx] Thud release update
>>>
>>> Hi Manjukumar,
>>>
>>> On 29/11/18 18:07, Manjukumar Harthikote Matha wrote:
>>>> Hi All,
>>>>
>>>> Thud release branch is under-testing as of now, we will start sending patches
>> next
>>> week and start merging to master:
>>>> Please check the tree here:
>>>> https://github.com/Xilinx/meta-xilinx/commits/master-next
>>>>
>>>> Major changes:
>>>> meta-xilinx-standalone layer to support building toolchain for MB and pmu-
>>> firmware
>>>> Proposal was sent here:
>>>> https://lists.yoctoproject.org/pipermail/meta-xilinx/2018-
>> September/004051.html
>>>>
>>>> There are two ways to build pmu-firmware: One using multiconfig and other as
>>> two separate distros
>>>>
>>>> 1) multiconfig way:
>>>> - You need to add the dependency in the image file, for example in core-
>>> image-minimal you will need
>>>> do_image[mcdepends] = "multiconfig:zcu102:pmu:pmu-
>>> firmware:do_deploy"
>>>>
>>>>
>>>> - Add conf/multiconfig in the build directory and create pmu.conf and
>>> zcu102.conf under conf/multiconfig
>>>> pmu.conf consists of
>>>> MACHINE="zynqmp-pmu"
>>>> DISTRO="xilinx-standalone"
>>>> GCCVERSION="7.%"
>>>> TMPDIR="${TOPDIR}/pmutmp"
>>>>
>>>> zcu102.conf consists of
>>>> MACHINE="zcu102-zynqmp"
>>>> DISTRO="poky"
>>>> - In local.conf multiconfig is enabled by: BBMULTICONFIG ?= "zcu102
>>> pmu"
>>>> - bitbake multiconfig:zcu102:core-image-minimal
>>>>
>>>> This will build pmu-firmware in build/pmutmp and all the linux images in
>> build/tmp
>>>
>>> [Disclaimer: I did not double-check everything I state below since it
>>> takes hours for each test]
>>>
>>> I tried this setup and building u-boot-xlnx fails:
>>>
>>> $ bitbake multiconfig:zcu102:core-image-minimal
>>> [...]
>>> Cannot read
>>> ../../../../../../pmutmp/deploy/images/zynqmp-pmu/pmu-firmware-zynqmp-
>> pmu.bin
>>>
>>> This can be reproduced with the attached script.
>>>
>>
>> From script it seems you are missing do_image[mcdepends] =
>> "multiconfig:zcu102:pmu:pmu-firmware:do_deploy" in your image file?
>> I think you could also add in local.conf
>>
>
> Spoke too soon :)
>
> You need both, we are looking into why both lines will be required.
> In Local.conf
> do_image[mcdepends] = "multiconfig:zcu102:pmu:pmu-firmware:do_deploy"
> In u-boot-xlnx
> do_compile[mcdepends] = "multiconfig:zcu102:pmu:pmu-firmware:do_deploy"
I confirm adding *both* lines let me finish my first multiconfig build.
I also don't understand the need for the do_image[mcdepends] line: it
should be implied by the fact that the image depends on u-boot-xlnx,
which in turn depends on pmu-firmware:do_deploy.
Since I have no zcu102 to runtime test, I tried building for zcu106. It
doesn't build as is, do you have plans to support it?
To let it build I had to change (copying from zcu102):
--- a/meta-xilinx-bsp/conf/machine/zcu106-zynqmp.conf
+++ b/meta-xilinx-bsp/conf/machine/zcu106-zynqmp.conf
@@ -24,7 +24,6 @@ PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
EXTRA_IMAGEDEPENDS += " \
u-boot-zynq-uenv \
arm-trusted-firmware \
- virtual/pmu-firmware \
virtual/boot-bin \
virtual/bootloader \
"
@@ -35,3 +34,10 @@ IMAGE_BOOT_FILES += " \
"
MACHINE_HWCODECS = "libomxil-xlnx"
+
+# PMU instance args
+PMU_FIRMWARE_DEPLOY_DIR ?= "${TOPDIR}/pmutmp/deploy/images/zynqmp-pmu"
+PMU_FIRMWARE_IMAGE_NAME ?= "pmu-firmware-zynqmp-pmu"
+
+do_write_qemuboot_conf[depends] += "u-boot-zynq-uenv:do_deploy"
Note that the PMU_* variables should probably be shared among all zynqmp
boards.
And of course I had to add:
--- a/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-xlnx_2018.3.bb
+++ b/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-xlnx_2018.3.bb
@@ -30,3 +30,4 @@ HAS_PLATFORM_INIT ?= " \
"
do_compile[mcdepends] = "multiconfig:zcu102:pmu:pmu-firmware:do_deploy"
+do_compile[mcdepends] = "multiconfig:zcu106:pmu:pmu-firmware:do_deploy"
This is clearly not nicely scaling to many boards, but at least I got a
core-image-minimal built for zcu106.
--
Luca
More information about the meta-xilinx
mailing list