zynq.rst 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. .. SPDX-License-Identifier: GPL-2.0+
  2. .. (C) Copyright 2013 Xilinx, Inc.
  3. ZYNQ
  4. ====
  5. About this
  6. ----------
  7. This document describes the information about Xilinx Zynq U-Boot -
  8. like supported boards, ML status and TODO list.
  9. Zynq boards
  10. -----------
  11. Xilinx Zynq-7000 All Programmable SoCs enable extensive system level
  12. differentiation, integration, and flexibility through hardware, software,
  13. and I/O programmability.
  14. * zc702 (single qspi, gem0, mmc) [1]
  15. * zc706 (dual parallel qspi, gem0, mmc) [2]
  16. * zed (single qspi, gem0, mmc) [3]
  17. * microzed (single qspi, gem0, mmc) [4]
  18. * zc770
  19. - zc770-xm010 (single qspi, gem0, mmc)
  20. - zc770-xm011 (8 or 16 bit nand)
  21. - zc770-xm012 (nor)
  22. - zc770-xm013 (dual parallel qspi, gem1)
  23. Building
  24. --------
  25. configure and build for zc702 board::
  26. $ export DEVICE_TREE=zynq-zc702
  27. $ make xilinx_zynq_virt_defconfig
  28. $ make
  29. Bootmode
  30. --------
  31. Zynq has a facility to read the bootmode from the slcr bootmode register
  32. once user is setting through jumpers on the board - see page no:1546 on [5]
  33. All possible bootmode values are defined in Table 6-2:Boot_Mode MIO Pins
  34. on [5].
  35. board_late_init() will read the bootmode values using slcr bootmode register
  36. at runtime and assign the modeboot variable to specific bootmode string which
  37. is intern used in autoboot.
  38. SLCR bootmode register Bit[3:0] values
  39. .. code-block:: c
  40. #define ZYNQ_BM_NOR 0x02
  41. #define ZYNQ_BM_SD 0x05
  42. #define ZYNQ_BM_JTAG 0x0
  43. "modeboot" variable can assign any of "norboot", "sdboot" or "jtagboot"
  44. bootmode strings at runtime.
  45. Flashing
  46. --------
  47. SD Card
  48. ^^^^^^^
  49. To write an image that boots from a SD card first create a FAT32 partition
  50. and a FAT32 filesystem on the SD card::
  51. sudo fdisk /dev/sdx
  52. sudo mkfs.vfat -F 32 /dev/sdx1
  53. Mount the SD card and copy the SPL and U-Boot to the root directory of the
  54. SD card::
  55. sudo mount -t vfat /dev/sdx1 /mnt
  56. sudo cp spl/boot.bin /mnt
  57. sudo cp u-boot.img /mnt
  58. Mainline status
  59. ---------------
  60. - Added basic board configurations support.
  61. - Added zynq u-boot bsp code - arch/arm/mach-zynq
  62. - Added zynq boards named - zc70x, zed, microzed, zc770_xm010/xm011/xm012/xm013
  63. - Added zynq drivers:
  64. :serial: drivers/serial/serial_zynq.c
  65. :net: drivers/net/zynq_gem.c
  66. :mmc: drivers/mmc/zynq_sdhci.c
  67. :spi: drivers/spi/zynq_spi.c
  68. :qspi: drivers/spi/zynq_qspi.c
  69. :i2c: drivers/i2c/zynq_i2c.c
  70. :nand: drivers/mtd/nand/raw/zynq_nand.c
  71. - Done proper cleanups on board configurations
  72. - Added basic FDT support for zynq boards
  73. - d-cache support for zynq_gem.c
  74. * [1] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC702-G.htm
  75. * [2] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC706-G.htm
  76. * [3] http://zedboard.org/product/zedboard
  77. * [4] http://zedboard.org/product/microzed
  78. * [5] http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
  79. .. Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
  80. .. Sun Dec 15 14:52:41 IST 2013