blob: b89c39edac18c169d66f234e07414a04fc58bde6 [file] [log] [blame]
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +05301#
2# Xilinx ZYNQ U-Boot
3#
4# (C) Copyright 2013 Xilinx, Inc.
5#
6# SPDX-License-Identifier: GPL-2.0+
7#
8
91. About this
10
11This document describes the information about Xilinx Zynq U-Boot -
12like supported boards, ML status and TODO list.
13
142. Zynq boards
15
16Xilinx Zynq-7000 All Programmable SoCs enable extensive system level
17differentiation, integration, and flexibility through hardware, software,
18and I/O programmability.
19
Masahiro Yamada9bd53b62015-05-18 15:31:51 +090020* zc702 (single qspi, gem0, mmc) [1]
21* zc706 (dual parallel qspi, gem0, mmc) [2]
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053022* zed (single qspi, gem0, mmc) [3]
23* microzed (single qspi, gem0, mmc) [4]
24* zc770
25 - zc770-xm010 (single qspi, gem0, mmc)
26 - zc770-xm011 (8 or 16 bit nand)
27 - zc770-xm012 (nor)
28 - zc770-xm013 (dual parallel qspi, gem1)
29
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +0530303. Building
31
Masahiro Yamada9bd53b62015-05-18 15:31:51 +090032 ex. configure and build for zc702 board
33 $ make zynq_zc702_config
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +053034 $ make
35
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +0530364. Bootmode
Jagannadha Sutradharudu Tekib3de9242014-01-09 01:48:21 +053037
38Zynq has a facility to read the bootmode from the slcr bootmode register
39once user is setting through jumpers on the board - see page no:1546 on [5]
40
41All possible bootmode values are defined in Table 6-2:Boot_Mode MIO Pins
42on [5].
43
44board_late_init() will read the bootmode values using slcr bootmode register
45at runtime and assign the modeboot variable to specific bootmode string which
46is intern used in autoboot.
47
48SLCR bootmode register Bit[3:0] values
49#define ZYNQ_BM_NOR 0x02
50#define ZYNQ_BM_SD 0x05
51#define ZYNQ_BM_JTAG 0x0
52
53"modeboot" variable can assign any of "norboot", "sdboot" or "jtagboot"
54bootmode strings at runtime.
55
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +0530565. Mainline status
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053057
58- Added basic board configurations support.
59- Added zynq u-boot bsp code - arch/arm/cpu/armv7/zynq
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +053060- Added zynq boards named - zc70x, zed, microzed, zc770_xm010, zc770_xm012, zc770_xm013
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053061- Added zynq drivers:
62 serial - drivers/serial/serial_zynq.c
63 net - drivers/net/zynq_gem.c
64 mmc - drivers/mmc/zynq_sdhci.c
65 mmc - drivers/mmc/zynq_sdhci.c
66 spi- drivers/spi/zynq_spi.c
67 i2c - drivers/i2c/zynq_i2c.c
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +053068- Done proper cleanups on board configurations
69- Added basic FDT support for zynq boards
70- d-cache support for zynq_gem.c
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053071
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +0530726. TODO
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053073
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +053074- Add zynq boards support - zc770_xm011
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053075- Add zynq qspi controller driver
76- Add zynq nand controller driver
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +053077- Add FDT support on individual drivers
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053078
79[1] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC702-G.htm
80[2] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC706-G.htm
81[3] http://zedboard.org/product/zedboard
82[4] http://zedboard.org/product/microzed
Jagannadha Sutradharudu Tekib3de9242014-01-09 01:48:21 +053083[5] http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053084
85--
86Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
87Sun Dec 15 14:52:41 IST 2013