Commit 4029c7c8 authored by Oleg Dzhimiev's avatar Oleg Dzhimiev

formatting

parent 87283f55
meta-ezynq # meta-ezynq
=========== ***
This layer provides an unofficial support for Xilinx Zynq architecture This layer provides an unofficial support for Xilinx Zynq architecture
as well as evaluation boards. as well as evaluation boards.
ezynq-u-boot creates bootable image without any extra proprietary tools required. *ezynq-u-boot* creates bootable image without any extra proprietary tools required.
It does not support secure boot functionality and loading the FPGA (PL) part 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 - 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... if needed this feature can be implemented using u-boot...
***
## Supported boards/machines
Boards supported by this layer and sub-layers:
Supported Boards/Machines * **Avnet MicroZed (Zynq)**
========================= ***
## Dependencies
Boards Supported by this layer and sub-layers:
* Avnet/Digilent MicroZed (Zynq)
Dependencies
============
This layer depends on: This layer depends on:
URI: git://git.openembedded.org/bitbake * URI: *git://git.openembedded.org/bitbake*
* URI: *git://git.openembedded.org/openembedded-core*, layers: meta
URI: git://git.openembedded.org/openembedded-core * URI: *git://github.com/MentorEmbedded/meta-sourcery.git*, layers: meta-sourcery (for external toolchains only)
layers: meta * URI: *git://github.com/Xilinx/u-boot-xlnx.git*, branch=master-next
* URI: *git://git.code.sf.net/p/elphel/ezynq*
(for external toolchains only) ***
URI: git://github.com/MentorEmbedded/meta-sourcery.git ## Sub-layers
layers: meta-sourcery
URI: git://github.com/Xilinx/u-boot-xlnx.git;branch=master-next
URI: git://git.code.sf.net/p/elphel/ezynq This repository contains the meta-ezynq layer as well as additional board
Sub-Layers
==========
This repository contains the meta-elphel layer as well as additional board
specific layers. Each of these board specific layers provide additional specific layers. Each of these board specific layers provide additional
configuration for the associated board. Please refer to the associated README configuration for the associated board. Please refer to the associated README
in each sub-layer for more details. in each sub-layer for more details.
Note: sub-layers have no dependency between each other, all sub-layers can be Note: sub-layers have no dependency between each other, all sub-layers can be
used at the same time without conflicts. used at the same time without conflicts.
***
Build Instructions ## Build instructions
==================
The following instructions require a Poky installation (or equivalent). The following instructions require a Poky installation (or equivalent).
Initialize a build using the 'oe-init-build-env' script in Poky. Once Initialize a build using the *oe-init-build-env* script in Poky. Once
initialized configure bblayers.conf by adding the 'meta-elphel' layer as initialized configure *bblayers.conf* by adding the *meta-ezynq* layer as
well as any or all of the sub-layers of this repository, e.g.: well as any or all of the sub-layers of this repository, e.g.:
meta-ezynq \ meta-ezynq \
meta-ezynq/meta-microzed \ meta-ezynq/meta-microzed \
To build a specific target BSP configure the associated machine in local.conf: To build a specific target BSP configure the associated machine in *local.conf*:
(See associated sub-layers for available machines and additional details) (See associated sub-layers for available machines and additional details)
MACHINE ?= "microzed" MACHINE ?= "microzed"
...@@ -66,58 +52,20 @@ Build U-Boot: ...@@ -66,58 +52,20 @@ Build U-Boot:
$ bitbake ezynq-u-boot $ bitbake ezynq-u-boot
Once complete the images for the target machine will be available in the output Once complete the images for the target machine will be available in the output
directory 'tmp/deploy/images'. directory *tmp/deploy/images*.
Images generated: Images generated:
* boot.bin (fsbl is not required to boot)
Extra Output at 'build/tmp/work/.../ezynq-u-boot/${PV}_${PR}/git/u-boot-xlnx/': * **boot.bin** (fsbl is not required to boot)
* u-boot.html - configuration settings overview
* u-boot.map - the bootloader's memory map Extra output at *build/tmp/work/.../ezynq-u-boot/${PV}_${PR}/git/u-boot-xlnx/*:
* u-boot - ELF file
Booting * **u-boot.html** - configuration settings overview
======= * **u-boot.map** - the bootloader's memory map
* **u-boot** - ELF file
***
## Booting
Please see the associated README for the target machine, located in the Please see the associated README for the target machine, located in the
associated sub-layer. associated sub-layer.
***
Configuring External Toolchain \ No newline at end of file
==============================
In order to build with an external toolchain some additional configuration must
be set in the build environments local.conf. The 'meta-sourcery' layer must also
be setup in your bblayers.conf
First configure the use of an external toolchain, including the location to the
toolchain (this example is for a microblazeel toolchain, ensure that you insert
the relevant information for your target machine and target toolchain):
TCMODE = "external-csl"
CSL_TARGET_SYS_<machine name> = "microblazeel-xilinx-linux-gnu"
EXTERNAL_TOOLCHAIN = "<path to toolchain>/microblazeel-xilinx-linux-gnu"
EXTERNAL_TOOLCHAIN_SYSROOT = "<path to toolchain>/microblazeel-xilinx-linux-gnu/microblazeel-xilinx-linux-gnu/libc"
INSANE_SKIP_external-sourcery-toolchain-dev += "ldflags"
Additionally the preferred provider for various packages must be configured to
use the external toolchain:
PREFERRED_PROVIDER_linux-libc-headers = "external-sourcery-toolchain"
PREFERRED_PROVIDER_linux-libc-headers-dev = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs = "external-sourcery-toolchain"
PREFERRED_PROVIDER_libgcc = "external-sourcery-toolchain"
PREFERRED_PROVIDER_eglibc = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/libc = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/libintl = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/libiconv = "external-sourcery-toolchain"
PREFERRED_PROVIDER_glibc-thread-db = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/linux-libc-headers = "external-sourcery-toolchain"
PREFERRED_PROVIDER_virtual/linux-libc-headers-dev = "external-sourcery-toolchain"
PREFERRED_PROVIDER_gdbserver = "external-sourcery-toolchain"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment