readme.txt 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. This is the Buildroot support for Zynq boards. Zynq boards are available from
  2. Xilinx and some third party vendors, but the build procedure is very similar.
  3. Currently, four boards are natively supported by Buildroot:
  4. - Xilinx ZC702 board (zynq_zc702_defconfig)
  5. - Xilinx ZC706 board (zynq_zc706_defconfig)
  6. - Avnet ZedBoard (zynq_zed_defconfig)
  7. - Avnet MicroZed (zynq_microzed_defconfig)
  8. Steps to create a working system for a Zynq board:
  9. 1) Configuration (do one of the following)
  10. make zynq_zc702_defconfig (ZC702)
  11. make zynq_zc706_defconfig (ZC706)
  12. make zynq_zed_defconfig (Zedboard)
  13. make zynq_microzed_defconfig (MicroZed)
  14. 2) make
  15. 3) All needed files will be available in the output/images directory.
  16. The sdcard.img file is a complete bootable image ready to be written
  17. on the boot medium. To install it, simply copy the image to an SD
  18. card:
  19. # dd if=output/images/sdcard.img of=/dev/sdX
  20. Where 'sdX' is the device node of the uSD.
  21. 4) boot your board
  22. You can alter the booting procedure by creating a file uEnv.txt
  23. in the root of the SD card. It is a plain text file in format
  24. <key>=<value> one per line:
  25. kernel_image=myimage
  26. modeboot=myboot
  27. myboot=...
  28. References:
  29. - ZC702 information including schematics, reference designs, and manuals are
  30. available from
  31. https://www.xilinx.com/products/boards-and-kits/ek-z7-zc702-g.html
  32. - ZC706 information including schematics, reference designs, and manuals are
  33. available from
  34. http://www.xilinx.com/products/boards-and-kits/ek-z7-zc706-g.html.
  35. - Zedboard/Microzed information including schematics, reference designs, and
  36. manuals are available from http://www.zedboard.org .
  37. Support for other boards:
  38. If you want to build a system for other boards based on the same SoC
  39. (for ex. Digilent Zybo board), and the board is already supported by
  40. the upstream kernel and U-Boot, you simply need to change the
  41. following Buildroot options:
  42. - Kernel Device Tree file name (BR2_LINUX_KERNEL_INTREE_DTS_NAME)
  43. - U-Boot (BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=<dts file name>")
  44. Custom ps7_init_gpl.c/h support:
  45. To generate a working boot.bin image, ps7_init_gpl.c/h are required in
  46. the U-Boot source tree. Without those files, boot.bin will be built
  47. successfully but it will not be functional at all. Those files are
  48. output from the Xilinx tools, but for convenience, U-Boot includes the
  49. default ps7_init_gpl.c/h of popular boards. Those files may need to be
  50. updated for any programmable logic or DDR customizations which impact
  51. ps7_init (clock/pin setup & mapping/AXI bridge setup/etc). See
  52. board/xilinx/zynq/ directory of U-Boot for natively supported ps7_init
  53. files. If the ps7_init files for your board are not found in U-Boot,
  54. you need to add them by yourself.
  55. 1) Start with a defconfig supported by Buildroot (e.g. Zedboard)
  56. make zynq_zed_defconfig
  57. 2) make uboot-menuconfig
  58. Visit the following menu and enable CONFIG_XILINX_PS_INIT_FILE
  59. ARM architecture --->
  60. [*] Zynq/ZynqMP PS init file(s) location
  61. 3) Copy ps7_init_gpl.c/h generated by the Xilinx Vivado tools into
  62. output/build/uboot-custom/board/xilinx/zynq/custom_hw_platform/
  63. 4) make
  64. Note: The files in step 3 will need to be re-copied after cleaning the
  65. output directory and at this time, there is no way to save them as
  66. part of the buildroot configuration, except as a U-Boot patch.