blob: 5b0672c50359d95e0cd18a7630bdb8456d097cb6 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001# SPDX-License-Identifier: GPL-2.0+
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +05302#
3# Xilinx ZYNQ U-Boot
4#
5# (C) Copyright 2013 Xilinx, Inc.
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +05306
71. About this
8
9This document describes the information about Xilinx Zynq U-Boot -
10like supported boards, ML status and TODO list.
11
122. Zynq boards
13
14Xilinx Zynq-7000 All Programmable SoCs enable extensive system level
15differentiation, integration, and flexibility through hardware, software,
16and I/O programmability.
17
Masahiro Yamada17b3d372015-05-18 15:31:51 +090018* zc702 (single qspi, gem0, mmc) [1]
19* zc706 (dual parallel qspi, gem0, mmc) [2]
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +053020* zed (single qspi, gem0, mmc) [3]
21* microzed (single qspi, gem0, mmc) [4]
22* zc770
23 - zc770-xm010 (single qspi, gem0, mmc)
24 - zc770-xm011 (8 or 16 bit nand)
25 - zc770-xm012 (nor)
26 - zc770-xm013 (dual parallel qspi, gem1)
27
Jagannadha Sutradharudu Tekidce23cd2014-01-09 01:48:31 +0530283. Building
29
Masahiro Yamada17b3d372015-05-18 15:31:51 +090030 ex. configure and build for zc702 board
31 $ make zynq_zc702_config
Jagannadha Sutradharudu Tekidce23cd2014-01-09 01:48:31 +053032 $ make
33
Jagannadha Sutradharudu Tekidce23cd2014-01-09 01:48:31 +0530344. Bootmode
Jagannadha Sutradharudu Teki11704c22014-01-09 01:48:21 +053035
36Zynq has a facility to read the bootmode from the slcr bootmode register
37once user is setting through jumpers on the board - see page no:1546 on [5]
38
39All possible bootmode values are defined in Table 6-2:Boot_Mode MIO Pins
40on [5].
41
42board_late_init() will read the bootmode values using slcr bootmode register
43at runtime and assign the modeboot variable to specific bootmode string which
44is intern used in autoboot.
45
46SLCR bootmode register Bit[3:0] values
47#define ZYNQ_BM_NOR 0x02
48#define ZYNQ_BM_SD 0x05
49#define ZYNQ_BM_JTAG 0x0
50
51"modeboot" variable can assign any of "norboot", "sdboot" or "jtagboot"
52bootmode strings at runtime.
53
Jagannadha Sutradharudu Tekidce23cd2014-01-09 01:48:31 +0530545. Mainline status
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +053055
56- Added basic board configurations support.
57- Added zynq u-boot bsp code - arch/arm/cpu/armv7/zynq
Michal Simek4ff54de2018-01-15 07:38:21 +010058- Added zynq boards named - zc70x, zed, microzed, zc770_xm010/xm011/xm012/xm013
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +053059- Added zynq drivers:
60 serial - drivers/serial/serial_zynq.c
61 net - drivers/net/zynq_gem.c
62 mmc - drivers/mmc/zynq_sdhci.c
Ezequiel Garcia196f1802018-01-13 17:48:27 -030063 spi - drivers/spi/zynq_spi.c
64 qspi - drivers/spi/zynq_qspi.c
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +053065 i2c - drivers/i2c/zynq_i2c.c
Ezequiel Garcia196f1802018-01-13 17:48:27 -030066 nand - drivers/mtd/nand/zynq_nand.c
Jagannadha Sutradharudu Tekidce23cd2014-01-09 01:48:31 +053067- Done proper cleanups on board configurations
68- Added basic FDT support for zynq boards
69- d-cache support for zynq_gem.c
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +053070
Jagannadha Sutradharudu Tekidce23cd2014-01-09 01:48:31 +0530716. TODO
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +053072
Jagannadha Sutradharudu Tekidce23cd2014-01-09 01:48:31 +053073- Add FDT support on individual drivers
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +053074
75[1] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC702-G.htm
76[2] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC706-G.htm
77[3] http://zedboard.org/product/zedboard
78[4] http://zedboard.org/product/microzed
Jagannadha Sutradharudu Teki11704c22014-01-09 01:48:21 +053079[5] http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
Jagannadha Sutradharudu Tekiec15a6c2014-01-09 01:48:11 +053080
81--
82Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
83Sun Dec 15 14:52:41 IST 2013