blob: 5b0672c50359d95e0cd18a7630bdb8456d097cb6 [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001# SPDX-License-Identifier: GPL-2.0+
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +05302#
3# Xilinx ZYNQ U-Boot
4#
5# (C) Copyright 2013 Xilinx, Inc.
Jagannadha Sutradharudu Tekiba45a072014-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 Yamada9bd53b62015-05-18 15:31:51 +090018* zc702 (single qspi, gem0, mmc) [1]
19* zc706 (dual parallel qspi, gem0, mmc) [2]
Jagannadha Sutradharudu Tekiba45a072014-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 Teki10a147b2014-01-09 01:48:31 +0530283. Building
29
Masahiro Yamada9bd53b62015-05-18 15:31:51 +090030 ex. configure and build for zc702 board
31 $ make zynq_zc702_config
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +053032 $ make
33
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +0530344. Bootmode
Jagannadha Sutradharudu Tekib3de9242014-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 Teki10a147b2014-01-09 01:48:31 +0530545. Mainline status
Jagannadha Sutradharudu Tekiba45a072014-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 Simek546a4962018-01-15 07:38:21 +010058- Added zynq boards named - zc70x, zed, microzed, zc770_xm010/xm011/xm012/xm013
Jagannadha Sutradharudu Tekiba45a072014-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 Garciafe3dfb22018-01-13 17:48:27 -030063 spi - drivers/spi/zynq_spi.c
64 qspi - drivers/spi/zynq_qspi.c
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053065 i2c - drivers/i2c/zynq_i2c.c
Ezequiel Garciafe3dfb22018-01-13 17:48:27 -030066 nand - drivers/mtd/nand/zynq_nand.c
Jagannadha Sutradharudu Teki10a147b2014-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 Tekiba45a072014-01-09 01:48:11 +053070
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +0530716. TODO
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053072
Jagannadha Sutradharudu Teki10a147b2014-01-09 01:48:31 +053073- Add FDT support on individual drivers
Jagannadha Sutradharudu Tekiba45a072014-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 Tekib3de9242014-01-09 01:48:21 +053079[5] http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
Jagannadha Sutradharudu Tekiba45a072014-01-09 01:48:11 +053080
81--
82Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
83Sun Dec 15 14:52:41 IST 2013