183d290c5STom Rini# SPDX-License-Identifier: GPL-2.0+ 2ba45a072SJagannadha Sutradharudu Teki# 3ba45a072SJagannadha Sutradharudu Teki# Xilinx ZYNQ U-Boot 4ba45a072SJagannadha Sutradharudu Teki# 5ba45a072SJagannadha Sutradharudu Teki# (C) Copyright 2013 Xilinx, Inc. 6ba45a072SJagannadha Sutradharudu Teki 7ba45a072SJagannadha Sutradharudu Teki1. About this 8ba45a072SJagannadha Sutradharudu Teki 9ba45a072SJagannadha Sutradharudu TekiThis document describes the information about Xilinx Zynq U-Boot - 10ba45a072SJagannadha Sutradharudu Tekilike supported boards, ML status and TODO list. 11ba45a072SJagannadha Sutradharudu Teki 12ba45a072SJagannadha Sutradharudu Teki2. Zynq boards 13ba45a072SJagannadha Sutradharudu Teki 14ba45a072SJagannadha Sutradharudu TekiXilinx Zynq-7000 All Programmable SoCs enable extensive system level 15ba45a072SJagannadha Sutradharudu Tekidifferentiation, integration, and flexibility through hardware, software, 16ba45a072SJagannadha Sutradharudu Tekiand I/O programmability. 17ba45a072SJagannadha Sutradharudu Teki 189bd53b62SMasahiro Yamada* zc702 (single qspi, gem0, mmc) [1] 199bd53b62SMasahiro Yamada* zc706 (dual parallel qspi, gem0, mmc) [2] 20ba45a072SJagannadha Sutradharudu Teki* zed (single qspi, gem0, mmc) [3] 21ba45a072SJagannadha Sutradharudu Teki* microzed (single qspi, gem0, mmc) [4] 22ba45a072SJagannadha Sutradharudu Teki* zc770 23ba45a072SJagannadha Sutradharudu Teki - zc770-xm010 (single qspi, gem0, mmc) 24ba45a072SJagannadha Sutradharudu Teki - zc770-xm011 (8 or 16 bit nand) 25ba45a072SJagannadha Sutradharudu Teki - zc770-xm012 (nor) 26ba45a072SJagannadha Sutradharudu Teki - zc770-xm013 (dual parallel qspi, gem1) 27ba45a072SJagannadha Sutradharudu Teki 2810a147bcSJagannadha Sutradharudu Teki3. Building 2910a147bcSJagannadha Sutradharudu Teki 309bd53b62SMasahiro Yamada ex. configure and build for zc702 board 319bd53b62SMasahiro Yamada $ make zynq_zc702_config 3210a147bcSJagannadha Sutradharudu Teki $ make 3310a147bcSJagannadha Sutradharudu Teki 3410a147bcSJagannadha Sutradharudu Teki4. Bootmode 35b3de9249SJagannadha Sutradharudu Teki 36b3de9249SJagannadha Sutradharudu TekiZynq has a facility to read the bootmode from the slcr bootmode register 37b3de9249SJagannadha Sutradharudu Tekionce user is setting through jumpers on the board - see page no:1546 on [5] 38b3de9249SJagannadha Sutradharudu Teki 39b3de9249SJagannadha Sutradharudu TekiAll possible bootmode values are defined in Table 6-2:Boot_Mode MIO Pins 40b3de9249SJagannadha Sutradharudu Tekion [5]. 41b3de9249SJagannadha Sutradharudu Teki 42b3de9249SJagannadha Sutradharudu Tekiboard_late_init() will read the bootmode values using slcr bootmode register 43b3de9249SJagannadha Sutradharudu Tekiat runtime and assign the modeboot variable to specific bootmode string which 44b3de9249SJagannadha Sutradharudu Tekiis intern used in autoboot. 45b3de9249SJagannadha Sutradharudu Teki 46b3de9249SJagannadha Sutradharudu TekiSLCR bootmode register Bit[3:0] values 47b3de9249SJagannadha Sutradharudu Teki#define ZYNQ_BM_NOR 0x02 48b3de9249SJagannadha Sutradharudu Teki#define ZYNQ_BM_SD 0x05 49b3de9249SJagannadha Sutradharudu Teki#define ZYNQ_BM_JTAG 0x0 50b3de9249SJagannadha Sutradharudu Teki 51b3de9249SJagannadha Sutradharudu Teki"modeboot" variable can assign any of "norboot", "sdboot" or "jtagboot" 52b3de9249SJagannadha Sutradharudu Tekibootmode strings at runtime. 53b3de9249SJagannadha Sutradharudu Teki 5410a147bcSJagannadha Sutradharudu Teki5. Mainline status 55ba45a072SJagannadha Sutradharudu Teki 56ba45a072SJagannadha Sutradharudu Teki- Added basic board configurations support. 57ba45a072SJagannadha Sutradharudu Teki- Added zynq u-boot bsp code - arch/arm/cpu/armv7/zynq 58546a496fSMichal Simek- Added zynq boards named - zc70x, zed, microzed, zc770_xm010/xm011/xm012/xm013 59ba45a072SJagannadha Sutradharudu Teki- Added zynq drivers: 60ba45a072SJagannadha Sutradharudu Teki serial - drivers/serial/serial_zynq.c 61ba45a072SJagannadha Sutradharudu Teki net - drivers/net/zynq_gem.c 62ba45a072SJagannadha Sutradharudu Teki mmc - drivers/mmc/zynq_sdhci.c 63ba45a072SJagannadha Sutradharudu Teki spi - drivers/spi/zynq_spi.c 64fe3dfb23SEzequiel Garcia qspi - drivers/spi/zynq_qspi.c 65ba45a072SJagannadha Sutradharudu Teki i2c - drivers/i2c/zynq_i2c.c 66*a430fa06SMiquel Raynal nand - drivers/mtd/nand/raw/zynq_nand.c 6710a147bcSJagannadha Sutradharudu Teki- Done proper cleanups on board configurations 6810a147bcSJagannadha Sutradharudu Teki- Added basic FDT support for zynq boards 6910a147bcSJagannadha Sutradharudu Teki- d-cache support for zynq_gem.c 70ba45a072SJagannadha Sutradharudu Teki 7110a147bcSJagannadha Sutradharudu Teki6. TODO 72ba45a072SJagannadha Sutradharudu Teki 7310a147bcSJagannadha Sutradharudu Teki- Add FDT support on individual drivers 74ba45a072SJagannadha Sutradharudu Teki 75ba45a072SJagannadha Sutradharudu Teki[1] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC702-G.htm 76ba45a072SJagannadha Sutradharudu Teki[2] http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC706-G.htm 77ba45a072SJagannadha Sutradharudu Teki[3] http://zedboard.org/product/zedboard 78ba45a072SJagannadha Sutradharudu Teki[4] http://zedboard.org/product/microzed 79b3de9249SJagannadha Sutradharudu Teki[5] http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf 80ba45a072SJagannadha Sutradharudu Teki 81ba45a072SJagannadha Sutradharudu Teki-- 82ba45a072SJagannadha Sutradharudu TekiJagannadha Sutradharudu Teki <jaganna@xilinx.com> 83ba45a072SJagannadha Sutradharudu TekiSun Dec 15 14:52:41 IST 2013 84