<div dir="ltr">I seem to have forgotten PMUFW. So I've added that in, and I manage to get further.<div><br></div><div><a href="https://gist.github.com/kratsg/932ca6ff01fb489ee190ea3902c3fc73">https://gist.github.com/kratsg/932ca6ff01fb489ee190ea3902c3fc73</a><br></div><div><br></div><div>From what I can tell, it's not mounting the rootfs correctly (error -2) but it seems to be hinting that I should give it an `init=` command.... but that feels like something else is wrong.</div><div><br></div><div>Giordon</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Mar 27, 2017 at 6:00 PM Giordon Stark <<a href="mailto:kratsg@gmail.com">kratsg@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg">In particular, this is all I see now:<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg"><div class="gmail_msg">Xilinx Zynq MP First Stage Boot Loader</div><div class="gmail_msg">Release 2016.4   Mar 27 2017  -  17:50:52</div><div class="gmail_msg">Platform: Silicon (3.0), Running on A53-0 (64-bit) Processor, Device Name: XCZU9EG</div><div class="gmail_msg">SD1 with level shifter Boot Mode</div><div class="gmail_msg">Bitstream download to start now</div><div class="gmail_msg">PL Configuration done successfully</div><div class="gmail_msg">  ATF running on XCZU9EG/silicon v3/RTL5.1 at 0xfffea000</div><div class="gmail_msg">NOTICE:  BL31: Secure code at 0x0</div><div class="gmail_msg">NOTICE:  BL31: Non secure code at 0x0</div><div class="gmail_msg">NOTICE:  BL31: v1.2(release):a9e3716</div><div class="gmail_msg">NOTICE:  BL31: Built : 14:06:27, Mar  7 2017</div><div class="gmail_msg"><br class="gmail_msg">When I have:</div></div><div class="gmail_msg">- FSBL.elf<br class="gmail_msg">- top.bit<br class="gmail_msg">- ATF.elf<br class="gmail_msg">- u-boot.elf<br class="gmail_msg"><br class="gmail_msg">It seems like it hangs at ATF stage.</div></div><br class="gmail_msg"><div class="gmail_quote gmail_msg"><div dir="ltr" class="gmail_msg">On Mon, Mar 27, 2017 at 4:00 PM Giordon Stark <<a href="mailto:kratsg@gmail.com" class="gmail_msg" target="_blank">kratsg@gmail.com</a>> wrote:<br class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg">Hi,<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">I attempted to get ATF included. I ran `bitbake arm-trusted-firmware` and then included the generated ELF in the boot image. Unfortunately, now the board doesn't even seem to boot at all (no messages come up in the serial console).</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">I've tried looking through the documentation that Xilinx provides for ATF and where to include it, but there isn't any. My best guess is that it needs to come after the bitstream but before the u-boot. Unfortunately, I'm at a loss and I can't seem to do (what was much simpler and straightforward with Zynq-7000 series) an FSBL boot to the OS.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Any tips or links to the full set of steps would be helpful.</div></div><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Giordon</div></div><br class="gmail_msg"><div class="gmail_quote gmail_msg"><div dir="ltr" class="gmail_msg">On Wed, Mar 22, 2017 at 5:46 AM Jason Wu <<a href="mailto:jason.wu.misc@gmail.com" class="gmail_msg" target="_blank">jason.wu.misc@gmail.com</a>> wrote:<br class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br class="gmail_msg">
<br class="gmail_msg">
On 22/03/2017 3:00 PM, Giordon Stark wrote:<br class="gmail_msg">
> Thanks for the response!<br class="gmail_msg">
><br class="gmail_msg">
> inline comments/questions<br class="gmail_msg">
><br class="gmail_msg">
> On Tue, Mar 21, 2017 at 11:44 PM Jason Wu <<a href="mailto:jason.wu.misc@gmail.com" class="gmail_msg" target="_blank">jason.wu.misc@gmail.com</a><br class="gmail_msg">
> <mailto:<a href="mailto:jason.wu.misc@gmail.com" class="gmail_msg" target="_blank">jason.wu.misc@gmail.com</a>>> wrote:<br class="gmail_msg">
><br class="gmail_msg">
><br class="gmail_msg">
><br class="gmail_msg">
>     On 22/03/2017 2:42 PM, Jason Wu wrote:<br class="gmail_msg">
>     ><br class="gmail_msg">
>     ><br class="gmail_msg">
>     > On 22/03/2017 2:19 AM, Giordon Stark wrote:<br class="gmail_msg">
>     >> Hi all,<br class="gmail_msg">
>     >><br class="gmail_msg">
>     >> We've got a rev 1.0 board (HW-Z1-ZCU102) which we're trying to do an<br class="gmail_msg">
>     >> FSBL boot (seeing the lack of success with SPL at the moment in the<br class="gmail_msg">
>     >> meta-xilinx mailing list). There are a few issues:<br class="gmail_msg">
>     >><br class="gmail_msg">
>     >> - uEnv.txt variables set for the device tree file as well as the<br class="gmail_msg">
>     kernel<br class="gmail_msg">
>     >> image do not seem to be understood by u-boot at all [it keeps<br class="gmail_msg">
>     asking for<br class="gmail_msg">
>     >> system.dtb or "Image" even if we set the variable correctly). For<br class="gmail_msg">
>     now,<br class="gmail_msg">
>     >> we just renamed the files to get things working.<br class="gmail_msg">
>     >><br class="gmail_msg">
>     >> - a kernel panic occurs after we manage to change the bootargs.<br class="gmail_msg">
>     Here is<br class="gmail_msg">
>     >> the kernel<br class="gmail_msg">
>     >> panic:<br class="gmail_msg">
>     <a href="https://gist.github.com/anonymous/055a978826d0a2adaf87e7b1f3ca0c70" rel="noreferrer" class="gmail_msg" target="_blank">https://gist.github.com/anonymous/055a978826d0a2adaf87e7b1f3ca0c70</a>.<br class="gmail_msg">
>     >> This looks highly similar<br class="gmail_msg">
>     >> to<br class="gmail_msg">
>     <a href="https://lists.yoctoproject.org/pipermail/meta-xilinx/2016-May/001691.html" rel="noreferrer" class="gmail_msg" target="_blank">https://lists.yoctoproject.org/pipermail/meta-xilinx/2016-May/001691.html</a><br class="gmail_msg">
>     but<br class="gmail_msg">
>     >> I'm not sure if there was a solution?<br class="gmail_msg">
>     >><br class="gmail_msg">
>     >> The uEnv.txt looks<br class="gmail_msg">
>     >> like: <a href="https://gist.github.com/kratsg/0598f6965deb0c4a03bafb64d9d01c37" rel="noreferrer" class="gmail_msg" target="_blank">https://gist.github.com/kratsg/0598f6965deb0c4a03bafb64d9d01c37</a><br class="gmail_msg">
>     >> for us right now.<br class="gmail_msg">
>     >><br class="gmail_msg">
>     >> I used the evaluation board bitstream, with Xilinx SDK (2016.4) to<br class="gmail_msg">
>     >> create an FSBL.elf file (named fsbl.elf) as well as a boot image that<br class="gmail_msg">
>     >> contains the u-boot.elf generated from bitbake (as a datafile in the<br class="gmail_msg">
>     >> third slot).<br class="gmail_msg">
>     > You need to make sure your FSBL matches the dts/dtb you are used.<br class="gmail_msg">
>     > I am using hybrid images. I use FSBL + PMU from the system I generated<br class="gmail_msg">
>     > and  ATF + U-boot + kernel + rootfs + dtb from meta-xilinx. I<br class="gmail_msg">
>     create the<br class="gmail_msg">
>     > vivado design base on the DTS. I did have some changes to u-boot and<br class="gmail_msg">
>     > kernel dts. This will give full working system. IRC, MMC + sata is not<br class="gmail_msg">
>     > working for me with SPL.<br class="gmail_msg">
><br class="gmail_msg">
><br class="gmail_msg">
> How do we make sure the FSBL matches the dts/dtb we are using? As far as<br class="gmail_msg">
> I can tell, it is built based on the bitstream file given, and I just<br class="gmail_msg">
> hoped (right now) that the evaluation board's bitstream file provided by<br class="gmail_msg">
> Vivado SDK matched the DTS file provided by meta-xilinx [this might be<br class="gmail_msg">
> the case]. In the future, not sure how to do this if I'm given just the<br class="gmail_msg">
> DTS/DTB.<br class="gmail_msg">
One way to do it is to generate the dts with the HDF, just to be sure<br class="gmail_msg">
the system is not far different between two dts/dtb.<br class="gmail_msg">
><br class="gmail_msg">
><br class="gmail_msg">
>     ><br class="gmail_msg">
>     >><br class="gmail_msg">
>     >> *Some side notes:*<br class="gmail_msg">
>     >> - the boot from SD Card was not possible until we set the switches to<br class="gmail_msg">
>     >> SW[4:1] = 0001 (the switch at "1" is flipped to "ON" side) instead of<br class="gmail_msg">
>     >> the suggested 0x5 or 0xE (neither of which worked).<br class="gmail_msg">
>     > IRC 0xE is 0001 on the sw[4:1].<br class="gmail_msg">
><br class="gmail_msg">
><br class="gmail_msg">
> This may be because it's upside-down a bit. It's been very confusing<br class="gmail_msg">
> trying to figure out what is 1/0 for the switches.<br class="gmail_msg">
:). IRC, i was checking it in the xsdb. You can read the mode in xsdb.<br class="gmail_msg">
"puts [mrd 0xFF5E0200]" should give you E.<br class="gmail_msg">
<br class="gmail_msg">
><br class="gmail_msg">
><br class="gmail_msg">
>     >> - our bootargs initially set to "root=/dev/mmcblk0p2 rw rootwait" but<br class="gmail_msg">
>     >> everything hung at the "Starting kernel..." stage<br class="gmail_msg">
>     >>   - changing the bootargs to "earlycon=cdns,mmio,0xFF000000,115200n8<br class="gmail_msg">
>     >> root=/dev/mmcblk0p2 rw rootwait cma=256M" gets us past the hanging<br class="gmail_msg">
>     >> "Starting kernel..." stage, but leads to the kernel panic above<br class="gmail_msg">
>     >> - we are using "morty" everywhere. Should I change to master for<br class="gmail_msg">
>     >> meta-xilinx?<br class="gmail_msg">
>     > I think the best is for you to post your kernel panic message.<br class="gmail_msg">
>     my bad, i did not see you have post the kernel panic log. The problem<br class="gmail_msg">
>     you have is because you did not have the ATF loaded. You need to create<br class="gmail_msg">
>     your boot.bin with atf.<br class="gmail_msg">
><br class="gmail_msg">
><br class="gmail_msg">
> How do we create the boot.bin with ATF (ARM trusted firmware)? How do<br class="gmail_msg">
> you know it's because we do not have ATF loaded?<br class="gmail_msg">
because your u-boot is showing running at EL3. You need to check bif<br class="gmail_msg">
format and see how to include the atf. IRC, it is part of the zynq<br class="gmail_msg">
ultrascale SW development doc.<br class="gmail_msg">
<br class="gmail_msg">
Regards,<br class="gmail_msg">
<br class="gmail_msg">
Jason<br class="gmail_msg">
><br class="gmail_msg">
> Thanks,<br class="gmail_msg">
><br class="gmail_msg">
> Giordon<br class="gmail_msg">
</blockquote></div></blockquote></div></blockquote></div>