diff options
| author | Nathan Rossi <nathan.rossi@xilinx.com> | 2013-05-31 10:33:44 +1000 |
|---|---|---|
| committer | Nathan Rossi <nathan.rossi@xilinx.com> | 2013-05-31 10:33:44 +1000 |
| commit | 83c6d83a877b29142b43fe2a402becd905251e5f (patch) | |
| tree | a8a0df7df622d88d232e03ee55673ef2effe1b4c /README | |
| parent | 29ef008114c1a2049338f69d80b7ab6727849d94 (diff) | |
| download | meta-xilinx-83c6d83a877b29142b43fe2a402becd905251e5f.tar.gz | |
README: Updated README files for meta-xilinx and BSPs
* Cleaned up some duplication
* Added README for meta-kc705
* Added additional information
Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Diffstat (limited to 'README')
| -rw-r--r-- | README | 142 |
1 files changed, 129 insertions, 13 deletions
| @@ -1,21 +1,137 @@ | |||
| 1 | This layer provides support for Xilinx microblaze and zynq platforms. | 1 | meta-xilinx |
| 2 | =========== | ||
| 2 | 3 | ||
| 3 | Specific boards supported in this layer: | 4 | This layer provides Official support for Xilinx MicroBlaze and Zynq architectures |
| 5 | as well as evaluation boards. | ||
| 4 | 6 | ||
| 5 | * kc705 microblaze TRD | 7 | Supported Boards/Machines |
| 6 | * zc702 Zynq evaluation board | 8 | ========================= |
| 7 | * zedboard Avnet Digilent evaluation board | ||
| 8 | 9 | ||
| 9 | End users should create a layer and use bbappends to extend | 10 | Boards Supported by this layer and sub-layers: |
| 10 | the recipes in this layer to support their boards. | 11 | * Xilinx KC705 Embedded TRD (MicroBlaze) |
| 12 | * Xilinx ZC702 (Zynq) | ||
| 13 | * Avnet/Digilent ZedBoard (Zynq) | ||
| 11 | 14 | ||
| 12 | Patches for this layer should be sent to meta-xilinx@lists.yoctoproject.org. | 15 | Patches |
| 16 | ======= | ||
| 13 | 17 | ||
| 14 | You can submit single patches with this command: | 18 | Please submit any patches for this layer to: meta-xilinx@lists.yoctoproject.org. |
| 15 | 19 | ||
| 16 | 'git send-email -M -1 --to meta-xilinx@lists.yoctoproject.org --subject-prefix=PATCH' | 20 | Please see the MAINTAINERS file for more details. |
| 17 | 21 | ||
| 18 | For longer sets fork the meta-xilinx repo on github and push to a branch. | 22 | Dependencies |
| 23 | ============ | ||
| 19 | 24 | ||
| 20 | Refer to the README in each meta-<bsp> layer for building and booting | 25 | This layer depends on: |
| 21 | information. \ No newline at end of file | 26 | |
| 27 | URI: git://git.openembedded.org/bitbake | ||
| 28 | |||
| 29 | URI: git://git.openembedded.org/openembedded-core | ||
| 30 | layers: meta | ||
| 31 | |||
| 32 | (for external toolchains only) | ||
| 33 | URI: git://github.com/MentorEmbedded/meta-sourcery.git | ||
| 34 | layers: meta-sourcery | ||
| 35 | |||
| 36 | This repository also contains sub-layers which depend on this layer. | ||
| 37 | |||
| 38 | Sub-Layers | ||
| 39 | ========== | ||
| 40 | |||
| 41 | This repository contains the meta-xilinx layer as well as additional board | ||
| 42 | specific layers. Each of these board specific layers provide additional | ||
| 43 | configuration for the associated board. Please refer to the associated README | ||
| 44 | in each sub-layer for more details. | ||
| 45 | |||
| 46 | Note: sub-layers have no dependency between each other, all sub-layers can be | ||
| 47 | used at the same time without conflicts. | ||
| 48 | |||
| 49 | Build Instructions | ||
| 50 | ================== | ||
| 51 | |||
| 52 | The following instructions require a Poky installation (or equivalent). | ||
| 53 | |||
| 54 | Initialize a build using the 'oe-init-build-env' script in Poky. Once | ||
| 55 | initialized configure bblayers.conf by adding the 'meta-xilinx' layer as | ||
| 56 | well as any or all of the sub-layers of this repository, e.g.: | ||
| 57 | |||
| 58 | meta-xilinx \ | ||
| 59 | meta-xilinx/meta-kc705 \ | ||
| 60 | meta-xilinx/meta-zc702 \ | ||
| 61 | meta-xilinx/meta-zedboard \ | ||
| 62 | |||
| 63 | To build a specific target BSP configure the associated machine in local.conf: | ||
| 64 | (See associated sub-layers for available machines and additional details) | ||
| 65 | |||
| 66 | MACHINE ?= "zc702" | ||
| 67 | |||
| 68 | Note: Currently MicroBlaze targets only support being built with an External | ||
| 69 | toolchain, please see the section below 'Configuring External Toolchain'. | ||
| 70 | |||
| 71 | Build the target file system image using bitbake: | ||
| 72 | |||
| 73 | $ bitbake core-image-minimal | ||
| 74 | |||
| 75 | Build additional targets include Linux and U-Boot: | ||
| 76 | |||
| 77 | $ bitbake linux-xlnx u-boot-xlnx | ||
| 78 | |||
| 79 | Once complete the images for the target machine will be available in the output | ||
| 80 | directory 'tmp/deploy/images'. | ||
| 81 | |||
| 82 | Images generated: | ||
| 83 | * core-image-minimal-<machine name>.cpio (rootfs in CPIO format) | ||
| 84 | * core-image-minimal-<machine name>.ext2.gz.u-boot (rootfs in EXT2+GZIP, u-boot wrapped format) | ||
| 85 | * u-boot.elf (U-Boot ELF) | ||
| 86 | * For Zynq: | ||
| 87 | * uImage (Linux Kernel binary, in u-boot wrapped format) | ||
| 88 | * uImage-<machine name>.dtb (DTB for target machine) | ||
| 89 | * For MicroBlaze: | ||
| 90 | * linux.bin.ub (Linux Kernel binary, in u-boot wrapped format) | ||
| 91 | * linux.bin.ub-<machine name>.dtb (DTB for target machine) | ||
| 92 | |||
| 93 | Booting | ||
| 94 | ======= | ||
| 95 | |||
| 96 | Please see the associated README for the target machine, located in the | ||
| 97 | associated sub-layer. | ||
| 98 | |||
| 99 | Configuring External Toolchain | ||
| 100 | ============================== | ||
| 101 | |||
| 102 | In order to build with an external toolchain some additional configuration must | ||
| 103 | be set in the build environments local.conf. The 'meta-sourcery' layer must also | ||
| 104 | be setup in your bblayers.conf | ||
| 105 | |||
| 106 | First configure the use of an external toolchain, including the location to the | ||
| 107 | toolchain (this example is for a microblazeel toolchain, ensure that you insert | ||
| 108 | the relevant information for your target machine and target toolchain): | ||
| 109 | |||
| 110 | TCMODE = "external-csl" | ||
| 111 | CSL_TARGET_SYS_<machine name> = "microblazeel-xilinx-linux-gnu" | ||
| 112 | EXTERNAL_TOOLCHAIN = "<path to toolchain>/microblazeel-xilinx-linux-gnu" | ||
| 113 | EXTERNAL_TOOLCHAIN_SYSROOT = "<path to toolchain>/microblazeel-xilinx-linux-gnu/microblazeel-xilinx-linux-gnu/libc" | ||
| 114 | INSANE_SKIP_external-sourcery-toolchain-dev += "ldflags" | ||
| 115 | |||
| 116 | Additionally the preferred provider for various packages must be configured to | ||
| 117 | use the external toolchain: | ||
| 118 | |||
| 119 | PREFERRED_PROVIDER_linux-libc-headers = "external-sourcery-toolchain" | ||
| 120 | PREFERRED_PROVIDER_linux-libc-headers-dev = "external-sourcery-toolchain" | ||
| 121 | PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "external-sourcery-toolchain" | ||
| 122 | PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "external-sourcery-toolchain" | ||
| 123 | PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "external-sourcery-toolchain" | ||
| 124 | PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "external-sourcery-toolchain" | ||
| 125 | PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "external-sourcery-toolchain" | ||
| 126 | PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "external-sourcery-toolchain" | ||
| 127 | PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "external-sourcery-toolchain" | ||
| 128 | PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs = "external-sourcery-toolchain" | ||
| 129 | PREFERRED_PROVIDER_libgcc = "external-sourcery-toolchain" | ||
| 130 | PREFERRED_PROVIDER_eglibc = "external-sourcery-toolchain" | ||
| 131 | PREFERRED_PROVIDER_virtual/libc = "external-sourcery-toolchain" | ||
| 132 | PREFERRED_PROVIDER_virtual/libintl = "external-sourcery-toolchain" | ||
| 133 | PREFERRED_PROVIDER_virtual/libiconv = "external-sourcery-toolchain" | ||
| 134 | PREFERRED_PROVIDER_glibc-thread-db = "external-sourcery-toolchain" | ||
| 135 | PREFERRED_PROVIDER_virtual/linux-libc-headers = "external-sourcery-toolchain" | ||
| 136 | PREFERRED_PROVIDER_virtual/linux-libc-headers-dev = "external-sourcery-toolchain" | ||
| 137 | PREFERRED_PROVIDER_gdbserver = "external-sourcery-toolchain" | ||
