File | Date | Author | Commit |
---|---|---|---|
conf | 2013-11-12 | Oleg Dzhimiev | [39faa7] removing MACHINE, not needed |
recipes-bsp | 2014-04-25 | Oleg Dzhimiev | [b046b9] updated ezynq and uboot repo revisions |
LICENSE | 2013-10-03 | Oleg Dzhimiev | [ab6406] initial |
README.md | 2014-03-08 | Oleg Dzhimiev | [33d8eb] corrections |
This layer provides an unofficial support for Xilinx Zynq architecture
as well as evaluation boards.
ezynq-u-boot creates u-boot image (SPL + u-boot) without any extra proprietary tools required.
It does not support secure boot functionality and loading the FPGA (PL) part
with a bitstream - it is planned to do under the control of the operating system -
if needed this feature can be implemented using u-boot.
Boards supported by this layer:
This layer depends on:
The following instructions require a Poky installation (or equivalent).
Initialize a build using the oe-init-build-env script in Poky. Once
initialized configure bblayers.conf by adding the meta-ezynq layer:
meta-ezynq \
To build a specific target BSP configure the associated machine in local.conf:
MACHINE ?= "microzed"
Build U-Boot:
$ bitbake u-boot-ezynq
or:
$ bitbake virtual/bootloader
or:
$ bitbake u-boot
Once complete the images for the target machine will be available in the output
directory tmp/deploy/images.
Images generated:
Extra output at build/tmp/work/.../ezynq-u-boot/${PV}_${PR}/git/u-boot-xlnx/:
Note: This boot flow generates a bootable boot.bin.
Configure the new board in build/conf/local.conf:
MACHINE ?= "{new-board}"
Create conf/machine/<new-board>.conf</new-board> - use microzed.conf as a reference.
Edit {new-board}.conf - add:
UBOOT_MACHINE = "{new-config-name}_config"
where {new-config-name} is from boards.cfg in u-boot-xlnx plus "_config"-ending
Run
bitbake ezynq-u-boot -c patch -f
The command clones git repositories and add ezynq files to u-boot-xlnx.
Note: Ezynq can be cloned and generate boot.bin apart from poky - please see Ezynq's documentation.
Edit ezynq files located at build/tmp/work/.../ezynq-u-boot/${PV}_${PR}/git/u-boot-xlnx/:
boards.cfg - add {new-config-name} if it's not in the list.
create a new include/configs/{new-config-name}.h - use zynq_microzed.h as a reference)
{new-config-name}.h needs to include the following files:
#include <configs/ezynq/ezynq_MT41K256M16RE125.h> /* should be before zed_ezynq.h as it overwrites DDR3L with DDR3 */
#include <configs/ezynq/ezynq_XC7Z010_1CLG400.h>
#include <configs/ezynq/zed_ezynq.h>
edit the included header files according to the new board configuration.
WARNING: After the step 5 don't run bitbake ezynq-u-boot -c clean - deletes everything in build/tmp/work/.../ezynq-u-boot/${PV}_${PR}/
Run
bitbake u-boot-ezynq
Note: u-boot.bin (not the final boot.bin) size cannot exceed 192KB
Xilinx® and Zynq® are registered trademarks of Xilinx.
Ezynq project is not endorsed by or affiliated with Xilinx Inc.