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 | |
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>
-rw-r--r-- | README | 142 | ||||
-rw-r--r-- | meta-kc705/README | 65 | ||||
-rw-r--r-- | meta-zc702/README | 79 | ||||
-rw-r--r-- | meta-zedboard/README | 79 |
4 files changed, 253 insertions, 112 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" | ||
diff --git a/meta-kc705/README b/meta-kc705/README new file mode 100644 index 00000000..538d2a2c --- /dev/null +++ b/meta-kc705/README | |||
@@ -0,0 +1,65 @@ | |||
1 | meta-kc705 | ||
2 | ========== | ||
3 | |||
4 | This README file contains information on using the meta-kc705 BSP layer. | ||
5 | |||
6 | The KC705 is an evaluation board by Xilinx for the MicroBlaze architecture: | ||
7 | http://www.xilinx.com/products/boards-and-kits/DK-K7-EMBD-G.htm | ||
8 | |||
9 | Please refer to the meta-xilinx/README for details regarding patch submission, | ||
10 | layer dependencies, build process, etc. | ||
11 | |||
12 | Supported Boards/Machines | ||
13 | ========================= | ||
14 | |||
15 | Xilinx KC705 Embedded TRD (MicroBlaze) - 'kc705-trd' | ||
16 | The 'KC705_System' or 'BIST system' as described in the documentation. | ||
17 | |||
18 | Note: this design contains the 'Xylon logiSDHC' additional IP cores, this is | ||
19 | not supported by this BSP. | ||
20 | |||
21 | Reference files and documents | ||
22 | ============================= | ||
23 | |||
24 | For details on the TRD and Evaluation board: | ||
25 | http://www.xilinx.com/products/boards-and-kits/DK-K7-EMBD-G.htm | ||
26 | |||
27 | For documentation and design files for the TRD: | ||
28 | http://www.xilinx.com/support/index.html/content/xilinx/en/supportNav/boards_and_kits/kintex-7_boards_and_kits/kintex-7_fpga_embedded_kit.html | ||
29 | |||
30 | Additional information on MicroBlaze architecture can be found at: | ||
31 | http://www.xilinx.com/support/index.htm | ||
32 | |||
33 | RAMFS/INITRD Boot (via JTAG/TFTP) | ||
34 | ================================= | ||
35 | |||
36 | Note: This boot flow requires a TFTP server as well as access to Xilinx tools | ||
37 | (for JTAG programming). | ||
38 | |||
39 | Place the following images into the root of the TFTP server directory: | ||
40 | * core-image-minimal-<machine name>.ext2.gz.u-boot (RootFS) | ||
41 | * linux.bin.ub (Linux Kernel) | ||
42 | * linux.bin.ub-<machine name>.dtb (DTB) | ||
43 | |||
44 | Download the bitstream for the target machine using JTAG (The pre-built | ||
45 | bitstream provided in the reference design files should be used). | ||
46 | |||
47 | Download the 'u-boot.elf' to the target CPU via the use of XMD. | ||
48 | $ xmd | ||
49 | XMD% connect mb mdm | ||
50 | XMD% rst | ||
51 | XMD% dow u-boot.elf | ||
52 | XMD% con | ||
53 | |||
54 | The serial console of the KC705 board (the USB-UART interface) will display the | ||
55 | U-Boot console. Configure the 'ipaddr' and 'serverip' of the U-Boot environment. | ||
56 | U-Boot> set serverip <server ip> | ||
57 | U-Boot> set ipaddr <board ip> | ||
58 | |||
59 | Using the U-Boot console; load the Kernel (at 0x86000000), RootFS | ||
60 | (at 0x85000000) and the DTB (at 0x84000000) into memory. And then boot Linux | ||
61 | using the 'bootm' command. | ||
62 | U-Boot> tftp 0x86000000 linux.bin.ub | ||
63 | U-Boot> tftp 0x85000000 core-image-minimal-<machine name>.ext2.gz.u-boot | ||
64 | U-Boot> tftp 0x84000000 linux.bin.ub-<machine name>.dtb | ||
65 | U-Boot> bootm 0x86000000 0x85000000 0x84000000 | ||
diff --git a/meta-zc702/README b/meta-zc702/README index 868c2b74..cf3b57d8 100644 --- a/meta-zc702/README +++ b/meta-zc702/README | |||
@@ -1,65 +1,46 @@ | |||
1 | This README file contains information on building the meta-zc702 | 1 | meta-zc702 |
2 | BSP layer. | 2 | ========== |
3 | 3 | ||
4 | The zc702 is an evaluation board by Xilinx for Zynq architecture: | 4 | This README file contains information on using the meta-zc702 BSP layer. |
5 | http://www.xilinx.com/ | ||
6 | 5 | ||
7 | Dependencies | 6 | The zc702 is an evaluation board by Xilinx for Zynq architecture: |
8 | ============ | 7 | http://www.xilinx.com/ |
9 | 8 | ||
10 | This layer depends on: | 9 | Please refer to the meta-xilinx/README for details regarding patch submission, |
10 | layer dependencies, build process, etc. | ||
11 | 11 | ||
12 | URI: git://git.yoctoproject.org/poky | 12 | Supported Boards/Machines |
13 | branch: master | 13 | ========================= |
14 | 14 | ||
15 | URI: git://github.com/Xilinx/meta-xilinx | 15 | Xilinx ZC702 (Zynq) - 'zc702' |
16 | branch: master | ||
17 | 16 | ||
17 | Reference files and documents | ||
18 | ============================= | ||
18 | 19 | ||
19 | Patches | 20 | For details on the Evaluation board: |
20 | ======= | 21 | http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC702-G.htm |
21 | 22 | ||
22 | Refer meta-xilinx/README for patch submission details | 23 | For documentation and design files for the ZC702: |
24 | http://www.xilinx.com/support/index.html/content/xilinx/en/supportNav/boards_and_kits/zynq-7000_soc_boards_and_kits/zynq-7000_soc_zc702_evaluation_kit.html | ||
23 | 25 | ||
24 | Build Instructions | 26 | For the FSBL 'zynq_fsbl_0.elf' refer to UG873 and the associated design files. |
25 | ================== | ||
26 | 27 | ||
27 | Setup a Yocto Poky installation | 28 | Additional information on Zynq architecture can be found at: |
28 | - http://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html | 29 | http://www.xilinx.com/support/index.htm |
29 | Clone the meta-xilinx layer into your installation | ||
30 | Add meta-xilinx and meta-xilinx/meta-zc702 to your bblayers.conf file | ||
31 | Add MACHINE="zc702" to your local.conf file | ||
32 | Build | ||
33 | > bitbake core-image-minimal | ||
34 | > bitbake u-boot-xlnx | ||
35 | Images can be found in 'tmp/deploy/images' of your build directory | ||
36 | kernel - uImage*.bin | ||
37 | rootfs - core-image-minimal-zc702-*.rootfs.ext2.gz.u-boot | ||
38 | uboot - u-boot-zc702-v*.elf | ||
39 | device tree - uImage-*-zynq-zc702-*.dtb | ||
40 | 30 | ||
41 | SD Card boot | 31 | SD Card Boot |
42 | ============ | 32 | ============ |
43 | 33 | ||
44 | Copy and rename files as follows. Multiple builds will result in multiple | 34 | Note: This boot flow requires access to Xilinx tools (for BOOT.BIN generation). |
45 | images, so choose the correct files (see above for image file name formats) | ||
46 | kernel - uImage | ||
47 | rootfs - uramdisk.image.gz | ||
48 | uboot - u-boot.elf | ||
49 | device tree - devicetree.dtb | ||
50 | 35 | ||
51 | Use Xilinx tools to pack zynq_fsbl_0.elf and u-boot.elf into BOOT.BIN. | 36 | Copy the following to the SD card (ensure to rename the files where appropriate): |
52 | - You can use Webpack or licensed Xilinx tools | 37 | Kernel: uImage |
53 | Copy BOOT.BIN, devicetree.dtb, uImage and uramdisk.image.gz to the SD Card. | 38 | RootFS: uramdisk.image.gz (core-image-minimal-<machine name>.ext2.gz.u-boot) |
54 | Insert SD Card, connect UART to Terminal program and boot board. | 39 | DTB: devicetree.dtb (uImage-<machine name>.dtb) |
55 | 40 | ||
41 | Using the Xilinx tools, package 'zynq_fsbl_0.elf' and 'u-boot.elf' into a | ||
42 | 'BOOT.BIN' (See http://www.wiki.xilinx.com/Prepare+Boot+Image for details). Once | ||
43 | created copy 'BOOT.BIN' onto the SD Card. | ||
56 | 44 | ||
57 | Reference files and documents | 45 | Insert SD Card, connect UART to Terminal program and boot board (Ensure the |
58 | ============================= | 46 | board is configured for SD Boot). |
59 | http://www.xilinx.com/support/download/index.htm | ||
60 | - Search for ug873 | ||
61 | - "Zynq-7000 All Programmable SoC: Concepts, Tools, and Techniques (CTT)" | ||
62 | - Design files ug873-design-files.zip for zynq_fsbl_0.elf | ||
63 | |||
64 | Additional information on Zynq architecture can be found at: | ||
65 | http://www.xilinx.com/support/index.htm | ||
diff --git a/meta-zedboard/README b/meta-zedboard/README index 3651cccb..20771eb9 100644 --- a/meta-zedboard/README +++ b/meta-zedboard/README | |||
@@ -1,65 +1,44 @@ | |||
1 | This README file contains information on building the meta-zedboard | 1 | meta-zedboard |
2 | BSP layer. | 2 | ========== |
3 | 3 | ||
4 | The zedboard is an evaluation board by Avnet-Digilent for Xilinx Zynq | 4 | This README file contains information on using the meta-zedboard BSP layer. |
5 | architecture: | ||
6 | http://www.zedboard.org/ | ||
7 | 5 | ||
8 | Dependencies | 6 | The ZedBoard is an evaluation board by Avnet/Digilent for the Zynq architecture: |
9 | ============ | 7 | http://www.zedboard.org/ |
10 | |||
11 | This layer depends on: | ||
12 | 8 | ||
13 | URI: git://git.yoctoproject.org/poky | 9 | Please refer to the meta-xilinx/README for details regarding patch submission, |
14 | branch: master | 10 | layer dependencies, build process, etc. |
15 | 11 | ||
16 | URI: git://github.com/Xilinx/meta-xilinx | 12 | Supported Boards/Machines |
17 | branch: master | 13 | ========================= |
18 | 14 | ||
15 | Avnet/Digilent ZedBoard (Zynq) - 'zedboard' | ||
19 | 16 | ||
20 | Patches | 17 | Reference files and documents |
21 | ======= | 18 | ============================= |
22 | 19 | ||
23 | Refer meta-xilinx/README for patch submission details | 20 | For details on the Evaluation board: |
21 | http://www.zedboard.org/content/overview | ||
24 | 22 | ||
25 | Build Instructions | 23 | For design files (including 'zynq_fsbl_0.elf') for the ZedBoard: |
26 | ================== | 24 | http://www.zedboard.org/reference-designs-categories/zynq-concepts-tools-and-techniques-zedboard |
27 | 25 | ||
28 | Setup a Yocto Poky installation | 26 | Additional information on Zynq architecture can be found at: |
29 | - http://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html | 27 | http://www.xilinx.com/support/index.htm |
30 | Clone the meta-xilinx layer into your installation | ||
31 | Add meta-xilinx and meta-xilinx/meta-zedboard to your bblayers.conf file | ||
32 | Add MACHINE="zedboard" to your local.conf file | ||
33 | Build | ||
34 | > bitbake core-image-minimal | ||
35 | > bitbake u-boot-xlnx | ||
36 | Images can be found in 'tmp/deploy/images' of your build directory | ||
37 | kernel - uImage*.bin | ||
38 | rootfs - core-image-minimal-zedboard-*.rootfs.ext2.gz.u-boot | ||
39 | uboot - u-boot-zedboard-v*.elf | ||
40 | device tree - uImage-*-zynq-zed-*.dtb | ||
41 | 28 | ||
42 | SD Card boot | 29 | SD Card Boot |
43 | ============ | 30 | ============ |
44 | 31 | ||
45 | Copy and rename files as follows. Multiple builds will result in multiple | 32 | Note: This boot flow requires access to Xilinx tools (for BOOT.BIN generation). |
46 | images, so choose the correct files (see above for image file name formats) | ||
47 | kernel - uImage | ||
48 | rootfs - uramdisk.image.gz | ||
49 | uboot - u-boot.elf | ||
50 | device tree - devicetree.dtb | ||
51 | 33 | ||
52 | Use Xilinx tools to pack zynq_fsbl_0.elf and u-boot.elf into BOOT.BIN. | 34 | Copy the following to the SD card (ensure to rename the files where appropriate): |
53 | - You can use Webpack or licensed Xilinx tools | 35 | Kernel: uImage |
54 | Copy BOOT.BIN, devicetree.dtb, uImage and uramdisk.image.gz to the SD Card. | 36 | RootFS: uramdisk.image.gz (core-image-minimal-<machine name>.ext2.gz.u-boot) |
55 | Insert SD Card, connect UART to Terminal program and boot board | 37 | DTB: devicetree.dtb (uImage-<machine name>.dtb) |
56 | 38 | ||
39 | Using the Xilinx tools, package 'zynq_fsbl_0.elf' and 'u-boot.elf' into a | ||
40 | 'BOOT.BIN' (See http://www.wiki.xilinx.com/Prepare+Boot+Image for details). Once | ||
41 | created copy 'BOOT.BIN' onto the SD Card. | ||
57 | 42 | ||
58 | Reference files and documents | 43 | Insert SD Card, connect UART to Terminal program and boot board (Ensure the |
59 | ============================= | 44 | board is configured for SD Boot). |
60 | http://www.zedboard.org/reference-designs-categories/zynq-concepts-tools-and-techniques-zedboard | ||
61 | - "Zynq Concepts, Tools, and Techniques on ZedBoard" | ||
62 | - contains both PDF file and design files including zynq_fsbl_0.elf | ||
63 | |||
64 | Additional information on Zynq architecture can be found at: | ||
65 | http://www.xilinx.com/support/index.htm | ||