u-boot/doc
Simon Glass 97f3ee34b6 dm: Add platform data advice and admonishment
We should guide people more strongly towards device tree to avoid the
proliferation of platform data structures. Add documentation to the driver
model README, and also the platform data header file.

Signed-off-by: Simon Glass <sjg@chromium.org>
2015-07-21 17:39:30 -06:00
..
device-tree-bindings
DocBook
driver-model dm: Add platform data advice and admonishment 2015-07-21 17:39:30 -06:00
SPI
SPL
uImage.FIT
feature-removal-schedule.txt
git-mailrc
I2C_Edge_Conditions
kwboot.1
mkimage.1
README.440-DDR-performance
README.ag102
README.AMCC-eval-boards-cleanup
README.android-fastboot
README.android-fastboot-protocol
README.ARC
README.arm64
README.arm-caches
README.ARM-memory-map
README.arm-relocation
README.at91
README.at91-soc
README.atmel_mci
README.atmel_pmecc
README.autoboot
README.AVR32
README.AVR32-port-muxing
README.b4860qds
README.bedbug
README.bitbangMII
README.blackfin
README.bootmenu
README.bus_vcxk
README.cfi
README.clang
README.commands
README.commands.itest
README.commands.spl
README.console
README.davinci
README.davinci.nand_spl
README.displaying-bmps
README.distro
README.dns
README.drivers.eth
README.enetaddr
README.esbc_validate
README.ext4
README.falcon
README.fdt-control
README.fec_mxc
README.fsl_iim
README.fsl-ddr
README.fsl-dpaa
README.fsl-esdhc
README.fsl-hwconfig
README.fsl-trustzone-components
README.fuse
README.generic_usb_ohci
README.generic-board
README.gpt
README.Heterogeneous-SoCs
README.hwconfig
README.idma2intr
README.imx5
README.imx6
README.imx25
README.imx27
README.imx31
README.imximage
README.iomux
README.JFFS2
README.JFFS2_NAND
README.kconfig
README.kwbimage
README.LED
README.LED_display
README.link-local
README.lynxkdi
README.m68k
README.m54418twr
README.malta
README.marubun-pcmcia
README.memory-test
README.menu
README.mips
README.Modem
README.mpc5xx
README.mpc74xx
README.mpc83xx.ddrecc
README.mpc83xxads
README.mpc85xx
README.mpc85xx-sd-spi-boot
README.mpc85xx-spin-table
README.mpc85xxads
README.mpc85xxcds
README.MPC866
README.mxc_hab
README.mxc_ocotp
README.mxs
README.mxsimage
README.N1213
README.nand
README.nand-boot-ppc440
README.NDS32
README.ne2000
README.NetConsole
README.nokia_rx51
README.odroid
README.OFT
README.omap3
README.omap-reset-time
README.omap-ulpi-viewport
README.pblimage
README.plan9
README.POST
README.power-framework
README.ppc440
README.pxe
README.qemu-mips
README.ramboot-ppc85xx
README.rmobile
README.s5pc1xx
README.sata
README.sched
README.scrapyard
README.semihosting
README.serial_multi
README.sh
README.sh7752evb
README.sh7753evb
README.sha1
README.silent
README.SNTP
README.socfpga
README.spear
README.SPL
README.splashprepare
README.srio-pcie-boot-corenet
README.standalone
README.switch_config
README.t1040-l2switch
README.TPL
README.trace
README.ubi
README.ublimage
README.unaligned-memory-access.txt
README.uniphier
README.update
README.usb
README.vf610
README.video
README.VLAN
README.VSC3316-3308
README.vxworks
README.watchdog
README.x86
README.zfs
README.zynq

#
# Xilinx ZYNQ U-Boot
#
# (C) Copyright 2013 Xilinx, Inc.
#
# SPDX-License-Identifier:	GPL-2.0+
#

1. About this

This document describes the information about Xilinx Zynq U-Boot -
like supported boards, ML status and TODO list.

2. 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)

3. Building

 ex. configure and build for zc702 board
   $ make zynq_zc702_config
   $ make

4. 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
#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.

5. Mainline status

- Added basic board configurations support.
- Added zynq u-boot bsp code - arch/arm/cpu/armv7/zynq
- Added zynq boards named - zc70x, zed, microzed, zc770_xm010, zc770_xm012, zc770_xm013
- Added zynq drivers:
  serial - drivers/serial/serial_zynq.c
  net - drivers/net/zynq_gem.c
  mmc - drivers/mmc/zynq_sdhci.c
  mmc - drivers/mmc/zynq_sdhci.c
  spi-  drivers/spi/zynq_spi.c
  i2c - drivers/i2c/zynq_i2c.c
- Done proper cleanups on board configurations
- Added basic FDT support for zynq boards
- d-cache support for zynq_gem.c

6. TODO

- Add zynq boards support - zc770_xm011
- Add zynq qspi controller driver
- Add zynq nand controller driver
- Add FDT support on individual drivers

[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