|
@@ -6,13 +6,6 @@ Currently, three boards are natively supported by Buildroot:
|
|
|
- Avnet ZedBoard (zynq_zed_defconfig)
|
|
|
- Avnet MicroZed (zynq_microzed_defconfig)
|
|
|
|
|
|
-The following build procedure focuses on them, but you can adjust it to your
|
|
|
-board even if it is not listed above. Major Zynq-based boards are supported by
|
|
|
-U-Boot, and their Device Trees are merged in Linux Kernel. If your board is the
|
|
|
-case, booting the kernel is a piece of cake. All you need to do is to change:
|
|
|
- - Kernel Device Tree file name (BR2_LINUX_KERNEL_INTREE_DTS_NAME)
|
|
|
- - U-Boot board defconfig (BR2_TARGET_UBOOT_BOARD_KCONFIG)
|
|
|
-
|
|
|
Steps to create a working system for a Zynq board:
|
|
|
|
|
|
1) Configuration (do one of the following)
|
|
@@ -50,3 +43,44 @@ References:
|
|
|
|
|
|
- Zedboard/Microzed information including schematics, reference designs, and
|
|
|
manuals are available from http://www.zedboard.org .
|
|
|
+
|
|
|
+Support for other boards:
|
|
|
+
|
|
|
+If you want to build a system for other boards based on the same SoC
|
|
|
+(for ex. Digilent Zybo board), and the board is already supported by
|
|
|
+the upstream kernel and U-Boot, you simply need to change the
|
|
|
+following Buildroot options:
|
|
|
+
|
|
|
+ - Kernel Device Tree file name (BR2_LINUX_KERNEL_INTREE_DTS_NAME)
|
|
|
+ - U-Boot board defconfig (BR2_TARGET_UBOOT_BOARD_DEFCONFIG)
|
|
|
+
|
|
|
+Custom ps7_init_gpl.c/h support:
|
|
|
+
|
|
|
+To generate a working boot.bin image, ps7_init_gpl.c/h are required in
|
|
|
+the U-Boot source tree. Without those files, boot.bin will be built
|
|
|
+successfully but it will not be functional at all. Those files are
|
|
|
+output from the Xilinx tools, but for convenience, U-Boot includes the
|
|
|
+default ps7_init_gpl.c/h of popular boards. Those files may need to be
|
|
|
+updated for any programmable logic customizations which impact
|
|
|
+ps7_init (clock/pin setup & mapping/AXI bridge setup/etc). See
|
|
|
+board/xilinx/zynq/ directory of U-Boot for natively supported ps7_init
|
|
|
+files. If the ps7_init files for your board are not found in U-Boot,
|
|
|
+you need to add them by yourself.
|
|
|
+
|
|
|
+1) Start with a defconfig supported by Buildroot (e.g. Zedboard)
|
|
|
+ make zynq_zed_defconfig
|
|
|
+
|
|
|
+2) make uboot-menuconfig
|
|
|
+ Visit the following menu and enable CONFIG_ZYNQ_CUSTOM_INIT.
|
|
|
+
|
|
|
+ ARM architecture --->
|
|
|
+ [*] Use custom ps7_init provided by Xilinx tool
|
|
|
+
|
|
|
+3) Copy ps7_init_gpl.c/h generated by the Xilinx tools into
|
|
|
+ output/build/uboot-xilinx-<pkg version>/board/xilinx/zynq/custom_hw_platform/
|
|
|
+
|
|
|
+4) make
|
|
|
+
|
|
|
+Note: The files in step 3 will need to be re-copied after cleaning the
|
|
|
+output directory and at this time, there is no way to save them as
|
|
|
+part of the buildroot configuration, except as a U-Boot patch.
|