summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathan Rossi <nathan.rossi@xilinx.com>2013-05-31 10:33:44 +1000
committerNathan Rossi <nathan.rossi@xilinx.com>2013-05-31 10:33:44 +1000
commit83c6d83a877b29142b43fe2a402becd905251e5f (patch)
treea8a0df7df622d88d232e03ee55673ef2effe1b4c
parent29ef008114c1a2049338f69d80b7ab6727849d94 (diff)
downloadmeta-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--README142
-rw-r--r--meta-kc705/README65
-rw-r--r--meta-zc702/README79
-rw-r--r--meta-zedboard/README79
4 files changed, 253 insertions, 112 deletions
diff --git a/README b/README
index 792bbebe..ca641fbd 100644
--- a/README
+++ b/README
@@ -1,21 +1,137 @@
1This layer provides support for Xilinx microblaze and zynq platforms. 1meta-xilinx
2===========
2 3
3Specific boards supported in this layer: 4This layer provides Official support for Xilinx MicroBlaze and Zynq architectures
5as well as evaluation boards.
4 6
5 * kc705 microblaze TRD 7Supported Boards/Machines
6 * zc702 Zynq evaluation board 8=========================
7 * zedboard Avnet Digilent evaluation board
8 9
9End users should create a layer and use bbappends to extend 10Boards Supported by this layer and sub-layers:
10the 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
12Patches for this layer should be sent to meta-xilinx@lists.yoctoproject.org. 15Patches
16=======
13 17
14You can submit single patches with this command: 18Please 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' 20Please see the MAINTAINERS file for more details.
17 21
18For longer sets fork the meta-xilinx repo on github and push to a branch. 22Dependencies
23============
19 24
20Refer to the README in each meta-<bsp> layer for building and booting 25This layer depends on:
21information. \ 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
36This repository also contains sub-layers which depend on this layer.
37
38Sub-Layers
39==========
40
41This repository contains the meta-xilinx layer as well as additional board
42specific layers. Each of these board specific layers provide additional
43configuration for the associated board. Please refer to the associated README
44in each sub-layer for more details.
45
46Note: sub-layers have no dependency between each other, all sub-layers can be
47used at the same time without conflicts.
48
49Build Instructions
50==================
51
52The following instructions require a Poky installation (or equivalent).
53
54Initialize a build using the 'oe-init-build-env' script in Poky. Once
55initialized configure bblayers.conf by adding the 'meta-xilinx' layer as
56well 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
63To 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
68Note: Currently MicroBlaze targets only support being built with an External
69toolchain, please see the section below 'Configuring External Toolchain'.
70
71Build the target file system image using bitbake:
72
73 $ bitbake core-image-minimal
74
75Build additional targets include Linux and U-Boot:
76
77 $ bitbake linux-xlnx u-boot-xlnx
78
79Once complete the images for the target machine will be available in the output
80directory 'tmp/deploy/images'.
81
82Images 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
93Booting
94=======
95
96Please see the associated README for the target machine, located in the
97associated sub-layer.
98
99Configuring External Toolchain
100==============================
101
102In order to build with an external toolchain some additional configuration must
103be set in the build environments local.conf. The 'meta-sourcery' layer must also
104be setup in your bblayers.conf
105
106First configure the use of an external toolchain, including the location to the
107toolchain (this example is for a microblazeel toolchain, ensure that you insert
108the 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
116Additionally the preferred provider for various packages must be configured to
117use 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 @@
1meta-kc705
2==========
3
4This README file contains information on using the meta-kc705 BSP layer.
5
6The 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
9Please refer to the meta-xilinx/README for details regarding patch submission,
10layer dependencies, build process, etc.
11
12Supported Boards/Machines
13=========================
14
15Xilinx 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
21Reference files and documents
22=============================
23
24For details on the TRD and Evaluation board:
25 http://www.xilinx.com/products/boards-and-kits/DK-K7-EMBD-G.htm
26
27For 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
30Additional information on MicroBlaze architecture can be found at:
31 http://www.xilinx.com/support/index.htm
32
33RAMFS/INITRD Boot (via JTAG/TFTP)
34=================================
35
36Note: This boot flow requires a TFTP server as well as access to Xilinx tools
37(for JTAG programming).
38
39Place 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
44Download the bitstream for the target machine using JTAG (The pre-built
45bitstream provided in the reference design files should be used).
46
47Download 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
54The serial console of the KC705 board (the USB-UART interface) will display the
55U-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
59Using the U-Boot console; load the Kernel (at 0x86000000), RootFS
60(at 0x85000000) and the DTB (at 0x84000000) into memory. And then boot Linux
61using 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 @@
1This README file contains information on building the meta-zc702 1meta-zc702
2BSP layer. 2==========
3 3
4The zc702 is an evaluation board by Xilinx for Zynq architecture: 4This README file contains information on using the meta-zc702 BSP layer.
5 http://www.xilinx.com/
6 5
7Dependencies 6The zc702 is an evaluation board by Xilinx for Zynq architecture:
8============ 7 http://www.xilinx.com/
9 8
10This layer depends on: 9Please refer to the meta-xilinx/README for details regarding patch submission,
10layer dependencies, build process, etc.
11 11
12 URI: git://git.yoctoproject.org/poky 12Supported Boards/Machines
13 branch: master 13=========================
14 14
15 URI: git://github.com/Xilinx/meta-xilinx 15Xilinx ZC702 (Zynq) - 'zc702'
16 branch: master
17 16
17Reference files and documents
18=============================
18 19
19Patches 20For details on the Evaluation board:
20======= 21 http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC702-G.htm
21 22
22Refer meta-xilinx/README for patch submission details 23For 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
24Build Instructions 26For the FSBL 'zynq_fsbl_0.elf' refer to UG873 and the associated design files.
25==================
26 27
27Setup a Yocto Poky installation 28Additional 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
29Clone the meta-xilinx layer into your installation
30Add meta-xilinx and meta-xilinx/meta-zc702 to your bblayers.conf file
31Add MACHINE="zc702" to your local.conf file
32Build
33 > bitbake core-image-minimal
34 > bitbake u-boot-xlnx
35Images 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
41SD Card boot 31SD Card Boot
42============ 32============
43 33
44Copy and rename files as follows. Multiple builds will result in multiple 34Note: This boot flow requires access to Xilinx tools (for BOOT.BIN generation).
45images, 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
51Use Xilinx tools to pack zynq_fsbl_0.elf and u-boot.elf into BOOT.BIN. 36Copy 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
53Copy 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)
54Insert SD Card, connect UART to Terminal program and boot board. 39 DTB: devicetree.dtb (uImage-<machine name>.dtb)
55 40
41Using 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
43created copy 'BOOT.BIN' onto the SD Card.
56 44
57Reference files and documents 45Insert SD Card, connect UART to Terminal program and boot board (Ensure the
58============================= 46board is configured for SD Boot).
59http://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
64Additional 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 @@
1This README file contains information on building the meta-zedboard 1meta-zedboard
2BSP layer. 2==========
3 3
4The zedboard is an evaluation board by Avnet-Digilent for Xilinx Zynq 4This README file contains information on using the meta-zedboard BSP layer.
5architecture:
6 http://www.zedboard.org/
7 5
8Dependencies 6The ZedBoard is an evaluation board by Avnet/Digilent for the Zynq architecture:
9============ 7 http://www.zedboard.org/
10
11This layer depends on:
12 8
13 URI: git://git.yoctoproject.org/poky 9Please refer to the meta-xilinx/README for details regarding patch submission,
14 branch: master 10layer dependencies, build process, etc.
15 11
16 URI: git://github.com/Xilinx/meta-xilinx 12Supported Boards/Machines
17 branch: master 13=========================
18 14
15Avnet/Digilent ZedBoard (Zynq) - 'zedboard'
19 16
20Patches 17Reference files and documents
21======= 18=============================
22 19
23Refer meta-xilinx/README for patch submission details 20For details on the Evaluation board:
21 http://www.zedboard.org/content/overview
24 22
25Build Instructions 23For 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
28Setup a Yocto Poky installation 26Additional 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
30Clone the meta-xilinx layer into your installation
31Add meta-xilinx and meta-xilinx/meta-zedboard to your bblayers.conf file
32Add MACHINE="zedboard" to your local.conf file
33Build
34 > bitbake core-image-minimal
35 > bitbake u-boot-xlnx
36Images 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
42SD Card boot 29SD Card Boot
43============ 30============
44 31
45Copy and rename files as follows. Multiple builds will result in multiple 32Note: This boot flow requires access to Xilinx tools (for BOOT.BIN generation).
46images, 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
52Use Xilinx tools to pack zynq_fsbl_0.elf and u-boot.elf into BOOT.BIN. 34Copy 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
54Copy 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)
55Insert SD Card, connect UART to Terminal program and boot board 37 DTB: devicetree.dtb (uImage-<machine name>.dtb)
56 38
39Using 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
41created copy 'BOOT.BIN' onto the SD Card.
57 42
58Reference files and documents 43Insert SD Card, connect UART to Terminal program and boot board (Ensure the
59============================= 44board is configured for SD Boot).
60http://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
64Additional information on Zynq architecture can be found at:
65 http://www.xilinx.com/support/index.htm