111 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
			
		
		
	
	
			111 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
| .. SPDX-License-Identifier: GPL-2.0+
 | |
| ..  (C) Copyright 2013 Xilinx, Inc.
 | |
| 
 | |
| ZYNQ
 | |
| ====
 | |
| 
 | |
| About this
 | |
| ----------
 | |
| 
 | |
| This document describes the information about Xilinx Zynq U-Boot -
 | |
| like supported boards, ML status and TODO list.
 | |
| 
 | |
| Zynq boards
 | |
| -----------
 | |
| 
 | |
| Xilinx Zynq-7000 All Programmable SoCs enable extensive system level
 | |
| differentiation, integration, and flexibility through hardware, software,
 | |
| and I/O programmability.
 | |
| 
 | |
| * zc702 (single qspi, gem0, mmc) [1]
 | |
| * zc706 (dual parallel qspi, gem0, mmc) [2]
 | |
| * zed (single qspi, gem0, mmc) [3]
 | |
| * microzed (single qspi, gem0, mmc) [4]
 | |
| * zc770
 | |
|      - zc770-xm010 (single qspi, gem0, mmc)
 | |
|      - zc770-xm011 (8 or 16 bit nand)
 | |
|      - zc770-xm012 (nor)
 | |
|      - zc770-xm013 (dual parallel qspi, gem1)
 | |
| 
 | |
| Building
 | |
| --------
 | |
| 
 | |
| configure and build for zc702 board::
 | |
| 
 | |
|    $ export DEVICE_TREE=zynq-zc702
 | |
|    $ make xilinx_zynq_virt_defconfig
 | |
|    $ make
 | |
| 
 | |
| Bootmode
 | |
| --------
 | |
| 
 | |
| Zynq has a facility to read the bootmode from the slcr bootmode register
 | |
| once user is setting through jumpers on the board - see page no:1546 on [5]
 | |
| 
 | |
| All possible bootmode values are defined in Table 6-2:Boot_Mode MIO Pins
 | |
| on [5].
 | |
| 
 | |
| board_late_init() will read the bootmode values using slcr bootmode register
 | |
| at runtime and assign the modeboot variable to specific bootmode string which
 | |
| is intern used in autoboot.
 | |
| 
 | |
| SLCR bootmode register Bit[3:0] values
 | |
| 
 | |
| .. code-block:: c
 | |
| 
 | |
|    #define ZYNQ_BM_NOR		0x02
 | |
|    #define ZYNQ_BM_SD		0x05
 | |
|    #define ZYNQ_BM_JTAG		0x0
 | |
| 
 | |
| "modeboot" variable can assign any of "norboot", "sdboot" or "jtagboot"
 | |
| bootmode strings at runtime.
 | |
| 
 | |
| Flashing
 | |
| --------
 | |
| 
 | |
| SD Card
 | |
| ^^^^^^^
 | |
| 
 | |
| To write an image that boots from a SD card first create a FAT32 partition
 | |
| and a FAT32 filesystem on the SD card::
 | |
| 
 | |
|         sudo fdisk /dev/sdx
 | |
|         sudo mkfs.vfat -F 32 /dev/sdx1
 | |
| 
 | |
| Mount the SD card and copy the SPL and U-Boot to the root directory of the
 | |
| SD card::
 | |
| 
 | |
|         sudo mount -t vfat /dev/sdx1 /mnt
 | |
|         sudo cp spl/boot.bin /mnt
 | |
|         sudo cp u-boot.img /mnt
 | |
| 
 | |
| Mainline status
 | |
| ---------------
 | |
| 
 | |
| - Added basic board configurations support.
 | |
| - Added zynq u-boot bsp code - arch/arm/mach-zynq
 | |
| - Added zynq boards named - zc70x, zed, microzed, zc770_xm010/xm011/xm012/xm013
 | |
| - Added zynq drivers:
 | |
| 
 | |
|   :serial: drivers/serial/serial_zynq.c
 | |
|   :net: drivers/net/zynq_gem.c
 | |
|   :mmc: drivers/mmc/zynq_sdhci.c
 | |
|   :spi: drivers/spi/zynq_spi.c
 | |
|   :qspi: drivers/spi/zynq_qspi.c
 | |
|   :i2c: drivers/i2c/zynq_i2c.c
 | |
|   :nand: drivers/mtd/nand/raw/zynq_nand.c
 | |
| 
 | |
| - Done proper cleanups on board configurations
 | |
| - Added basic FDT support for zynq boards
 | |
| - d-cache support for zynq_gem.c
 | |
| 
 | |
| * [1] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC702-G.htm
 | |
| * [2] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC706-G.htm
 | |
| * [3] http://zedboard.org/product/zedboard
 | |
| * [4] http://zedboard.org/product/microzed
 | |
| * [5] http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
 | |
| 
 | |
| 
 | |
| .. Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
 | |
| .. Sun Dec 15 14:52:41 IST 2013
 |