[meta-xilinx] How to boot the ZynqMP?

Brian Hutchinson b.hutchman at gmail.com
Wed Aug 30 13:20:00 PDT 2017


I too have been wrestling with generating the required images to boot the
ZCU102 from SD Card using the Yocto + meta-xilinx + meta-xilinx-tools
method.

I'm totally striking out.  And I'm working with a Xilinx FAE and striking
out!  No problem at all doing this kind of thing for ZCU107 or Zedboard but
ZCU102 is different beast for sure.

I have Ubuntu 16.04 box, I've tried yocto 2.2.1 (morty) and 2.3 (pyro) and
I get the same result ... my builds die with:

Build Configuration:
BB_VERSION        = "1.32.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-16.04"
TARGET_SYS        = "aarch64-poky-linux"
MACHINE           = "zcu102-zynqmp"
DISTRO            = "poky"
DISTRO_VERSION    = "2.2.1"
TUNE_FEATURES     = "aarch64"
TARGET_FPU        = ""
meta
meta-poky
meta-yocto-bsp    =
"heads/morty-16.0.1:6a1f33cc40bfac33cf030fe41e1a8efd1e5fad6f"
meta-perl
meta-systemd
meta-gpe
meta-python
meta-efl
meta-ruby
meta-filesystems
meta-gnome
meta-multimedia
meta-networking
meta-webserver
meta-xfce
meta-initramfs
meta-oe           = "morty-16.0.1:fe5c83312de11e80b85680ef237f8acb04b4b26e"
meta-xilinx       = "rel-v2017.1:ea7a5915702079634581c100abb7f3c9643b506e"
meta-xilinx-tools = "rel-v2017.1:26e34432e9a3ce89d97675a1de08581d559ed3d5"

Initialising tasks: 100%
|################################################################################################################################################################################################|
Time: 0:00:05
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: pmu-firmware-2017.1+gitAUTOINC+122565ec40-r0 do_deploy: Function
failed: do_deploy (log file is located at
/home/hutch/yocto_2.2.1-morty_zcu102/layers/poky/build/tmp/work/zcu102_zynqmp-poky-linux/pmu-firmware/2017.1+gitAUTOINC+122565ec40-r0/temp/log.do_deploy.8000)
ERROR: Logfile of failure stored in:
/home/hutch/yocto_2.2.1-morty_zcu102/layers/poky/build/tmp/work/zcu102_zynqmp-poky-linux/pmu-firmware/2017.1+gitAUTOINC+122565ec40-r0/temp/log.do_deploy.8000
Log data follows:
| DEBUG: Executing python function sstate_task_prefunc
| DEBUG: Python function sstate_task_prefunc finished
| DEBUG: Executing shell function do_deploy
| install: cannot stat
'/home/hutch/yocto_2.2.1-morty_zcu102/layers/poky/build/tmp/work/zcu102_zynqmp-poky-linux/pmu-firmware/2017.1+gitAUTOINC+122565ec40-r0/build/pmu-firmware/Release/pmu-firmware.elf':
No such file or directory
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_deploy (log file is located at
/home/hutch/yocto_2.2.1-morty_zcu102/layers/poky/build/tmp/work/zcu102_zynqmp-poky-linux/pmu-firmware/2017.1+gitAUTOINC+122565ec40-r0/temp/log.do_deploy.8000)
ERROR: Task
(/home/hutch/yocto_2.2.1-morty_zcu102/layers/meta-xilinx-tools/recipes-bsp/pmu/pmu-firmware_git.bb:do_deploy)
failed with exit code '1'
NOTE: Tasks Summary: Attempted 2149 tasks of which 9 didn't need to be
rerun and 1 failed.

Summary: 1 task failed:

/home/hutch/yocto_2.2.1-morty_zcu102/layers/meta-xilinx-tools/recipes-bsp/pmu/pmu-firmware_git.bb:
do_deploy
Summary: There was 1 ERROR message shown, returning a non-zero exit code


In my local.conf I've added:

MACHINE ?= "zcu102-zynqmp"

HDF_BASE = "file://"
#HDF_PATH =
"/home/hutch/yocto_pyro_zcu102/layers/poky/build/tmp/deploy/images/zcu102-zynqmp/Xilinx-zcu102-zynqmp.hdf"
#HDF_PATH = "/home/hutch/Downloads/Xilinx/Xilinx-zcu102-zynqmp.hdf"
HDF_PATH = "/home/hutch/Downloads/from_emil/config_mpsoc_wrapper.hdf"

XILINX_SDK_TOOLCHAIN = "/home/hutch/Xilinx/SDK/2017.1/"
XILINX_VER_MAIN = "2017.1"

# add Boot.bin dependency
IMAGE_CLASSES += " xilinx-bootbin"

... and I even added a bunch of BIF_ settings before I learned those were
for 2016.4

Pretty much no matter what my FAE tells me to try (it apparently works for
him) I always get this error about "pmu-firmware.elf': No such file or
directory" ... and I've tried all kind of things.

I'd really like to understand what I'm doing wrong here and find a path
that lets me generate the required images the same way I build images for
every other board I support using the yocto flow.

Regards,

Brian

On Tue, Aug 22, 2017 at 2:25 PM, Manjukumar Harthikote Matha <
MANJUKUM at xilinx.com> wrote:

> Hi Giordon,
>
> meta-xilinx-tools with xsct in your path would enable the same way ,
> instead of using the Vivado GUI to generate fsbl/pmu/boot.bin
>
>
>
> http://www.wiki.xilinx.com/Using+meta-xilinx-tools+layer
>
>
>
> Thanks,
>
> Manju
>
>
>
> *From:* meta-xilinx-bounces at yoctoproject.org [mailto:meta-xilinx-bounces@
> yoctoproject.org] *On Behalf Of *Giordon Stark
> *Sent:* Tuesday, August 22, 2017 7:46 AM
> *To:* Mike Looijmans <mike.looijmans at topic.nl>; Jean-Francois Dagenais <
> jeff.dagenais at gmail.com>
> *Cc:* meta-xilinx at yoctoproject.org
> *Subject:* Re: [meta-xilinx] How to boot the ZynqMP?
>
>
>
> Hi,
>
>
>
> I'll share my experiences as it has been somewhat painful -- but I did
> manage to have success booting from an SD card directly for MPSOC. I'm
> working on QSPI boot -- but I wrote my experiences/guide here:
> https://github.com/kratsg/meta-l1calo/wiki/ZynqMP:-Prepare-and-Boot-
> Hardware
>
>
>
> You can also compare it to how I did it for the Zynq-7 -- to see the
> differences. But this might help you get a bit further if you haven't
> already.
>
>
>
> Giordon
>
> On Tue, Aug 22, 2017 at 12:47 AM Mike Looijmans <mike.looijmans at topic.nl>
> wrote:
>
> On 22-08-17 02:25, Jean-Francois Dagenais wrote:
> >
> >>
>
> Kind regards,
>
> Mike Looijmans
> System Expert
>
> TOPIC Products
> Materiaalweg 4, NL-5681 RJ Best
> Postbus 440, NL-5680 AK Best
> Telefoon: +31 (0) 499 33 69 79 <+31%20499%20336%20979>
> E-mail: mike.looijmans at topicproducts.com
> Website: www.topicproducts.com
>
> Please consider the environment before printing this e-mail
>
>
>
> On Aug 21, 2017, at 04:20, Mike Looijmans <mike.looijmans at topic.nl> wrote:
> >>
> >>
> >> I recall having done this stuff about half a year ago, and at least
> then I could create an SPL based loader that actually booted. The layer
> above looks like regression to me.
> >
> > Xilinx "official" support is in FSBL for zynqmp. They removed the SPL
> zynqmp stuff from their u-boot fork if I am not mistaken. And they
> configure everything using their own stack including other layers such as
> meta-linaro and meta-petalinux.
> >
>
> I'm not sure they removed it, the u-boot-xlnx fork is about 8 months
> behind on
> mainline u-boot.
>
> Stangely, the mainline version has SPL support, an I actually can get the
> board to boot with SPL. But I can't figure out how to make it load PMU and
> ATF.
>
> There have been dozens of commits from Xilinx to support the zynqmp in
> u-boot
> mainline. None of these are in the Xilnx fork, so I assumed that Xilinx had
> seen the light... Apparently the opposite is true.
>
> >>
> >> Current state is that if I generate FSBL using Vivado SDK I can make it
> load u-boot by generating a boot.bin containing the FSBL and u-boot.elf.
> But then I don't have the PMU firmware and ATF and thus the kernel won't
> run.
> >
> > Had the same problem. This is because we are hanging on to the old trail
> (without the extra layers Xilinx wants us to use).
> >
> >>
> >> I tried putting ATF and PMU firmware from the meta-xilinx build into
> the boot.bin using the proper attributes, but that results in complete and
> utter quiet hangup after power-up. I only see the FSBL start message on the
> uart.
> >
> > I had to fork a machine from zcu102 in u-boot (so I forked u-boot-xlnx)
> in my env. Also forked meta-xilinx-tools such that my machine does the same
> configuration of xilinx-bootbin as zcu102 so the ATF and PMU firmware are
> bundled inside boot.bin. My fork of u-boot-xlnx/include/configs/xilinx_zynqmp_zcu102.h
> is where I tie it all together with the right file names for linux image
> and dtb to match what I have put into the partition using wic, and the
> default names that yocto uses for those.
> >
> > It was a bit of a hassle, and a annoyance compared to the ease of build
> of the zynq7 series board, but in the end, learned a lot and am more than
> ever the master of my domain! ;)
> >
>
> At least now I understand why there's so little interest in the MPSOC. The
> licensing alone is a nightmare.
> --
> _______________________________________________
> meta-xilinx mailing list
> meta-xilinx at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-xilinx
>
>
> --
> _______________________________________________
> meta-xilinx mailing list
> meta-xilinx at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-xilinx
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-xilinx/attachments/20170830/6353c427/attachment.html>


More information about the meta-xilinx mailing list