u-boot-brain/doc
Heinrich Schuchardt f3b5056c4e efi_loader: split README.efi into two separate documents
README.efi describes two different concepts:
* U-Boot exposing the UEFI API
* U-Boot running on top of UEFI.

This patch splits the document in two.
Religious references are removed.

The separation of the concepts makes sense before detailing the internals
of U-Boot exposing the UEFI API in a future patch.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
2018-02-10 00:24:00 +01:00
..
chromium doc: fix incorrect usage of DT node unit address 2018-01-15 18:29:21 -07:00
device-tree-bindings dts: cadence_spi: Update documentation for DT bindings 2018-01-24 12:07:50 +05:30
DocBook
driver-model dtoc: Rename the phandle struct 2017-09-15 05:27:47 -06:00
mvebu
SPI
SPL
uImage.FIT doc: FIT image: fix incorrect examples of DT node unit address 2018-01-15 18:29:21 -07:00
bounces patman: add support for omitting bouncing addresses 2017-09-11 21:43:58 -06:00
feature-removal-schedule.txt
git-mailrc MAINTAINERS: Update maintainer for USB xHCI 2017-11-26 02:22:36 +01:00
I2C_Edge_Conditions
kwboot.1
mkimage.1
README.440-DDR-performance
README.ae250 riscv: doc: Add relative doc to describe RISC-V 2018-01-12 08:05:12 -05:00
README.ag101p
README.AMCC-eval-boards-cleanup
README.android-fastboot usb: gadget: Make g_dnl USB settings common 2017-10-03 19:12:05 +02:00
README.android-fastboot-protocol
README.ARC
README.arm64
README.arm-caches
README.ARM-memory-map
README.arm-relocation
README.armada-secureboot
README.at91 ARM: at91: add NAND partition table and index 2013-05-21 11:54:21 +02:00
README.atmel_mci avr32: Retire AVR32 for good 2017-07-06 16:17:19 -04:00
README.atmel_pmecc
README.autoboot
README.b4860qds
README.bedbug
README.bitbangMII
README.blackfin
README.bootmenu
README.boston
README.bus_vcxk
README.cfi
README.chromium README: Add instructions for chain-loading U-Boot on jerry 2017-06-09 13:45:34 -06:00
README.clang
README.coccinelle Makefile: add coccicheck target 2017-11-20 20:18:38 -05:00
README.commands
README.commands.itest
README.commands.spl
README.console
README.davinci
README.davinci.nand_spl arm, davinci: add cam_enc_4xx support 2011-11-03 22:56:25 +01:00
README.dfutftp doc: license: Add license header to the README.dfutftp file 2017-08-21 11:31:11 +02:00
README.displaying-bmps
README.distro
README.dns
README.drivers.eth
README.efi efi_loader: split README.efi into two separate documents 2018-02-10 00:24:00 +01:00
README.enetaddr env: Rename eth_getenv_enetaddr() to eth_env_get_enetaddr() 2017-08-16 08:30:44 -04:00
README.esbc_validate
README.ext4 fs: Migrate ext4 to Kconfig 2018-01-22 16:43:30 -05:00
README.falcon cmd: spl: provide address and size of prepared FDT in environment 2017-08-26 14:56:12 -04:00
README.fdt-control
README.fdt-overlays doc: overlays: Tweak documentation regarding overlays 2017-09-15 05:27:49 -06:00
README.fec_mxc
README.fsl_iim
README.fsl-clk doc: restore doc/README.fsl-clk 2017-06-29 21:30:16 -04:00
README.fsl-ddr
README.fsl-dpaa armv8/ls1043a: Add Fman support 2015-10-29 10:34:01 -07:00
README.fsl-esdhc mmc: fsl_esdhc: drop CONFIG_SYS_FSL_ESDHC_FORCE_VSELECT 2017-07-12 09:44:22 +02:00
README.fsl-hwconfig
README.fsl-trustzone-components
README.fuse
README.generic_usb_ohci powerpc, 5xxx, 512x: remove support for mpc5xxx and mpc512x 2017-06-16 10:14:55 -04:00
README.generic-board
README.gpt doc: remove duplicate text in README.gpt 2017-09-07 10:44:34 -04:00
README.Heterogeneous-SoCs
README.hwconfig
README.i2c
README.imx5
README.imx6 README.imx6: Prefer loading SPL via the new SDP mechanism 2017-10-12 17:31:16 +02:00
README.imx25
README.imx27
README.imximage imx: reorganize IMX code as other SOCs 2017-07-12 10:17:44 +02:00
README.iomux
README.iscsi efi_loader: add a README.iscsi describing booting via iSCSI 2018-01-28 21:37:13 +01:00
README.JFFS2 fs: Kconfig: Add a separate option for FS_JFFS2 2017-05-22 12:45:31 -04:00
README.JFFS2_NAND
README.kconfig
README.kwbimage
README.LED powerpc, 8xx: remove support for 8xx 2017-06-12 08:37:55 -04:00
README.LED_display
README.link-local
README.log log: add category LOGC_EFI 2018-02-03 10:09:28 -07:00
README.lynxkdi
README.m68k m68k: doc: update outdated documentation 2017-11-06 09:59:02 -05:00
README.m54418twr m68k: Drop unreferenced CONFIG_* defines 2018-01-19 15:49:32 -05:00
README.malta
README.marubun-pcmcia
README.marvell arm64: mvebu: use single defconfig for Armada8K development boards 2017-07-12 06:57:55 +02:00
README.memory-test
README.menu
README.mips
README.mpc74xx
README.mpc83xx.ddrecc
README.mpc83xxads
README.mpc85xx
README.mpc85xx-sd-spi-boot
README.mpc85xx-spin-table
README.mpc85xxcds
README.multi-dtb-fit spl: dm: Make it possible for the SPL to pick its own DTB from a FIT 2017-10-06 11:26:41 -04:00
README.mxc_hab doc: mxc_hab: Improve the config option list 2018-02-04 12:14:10 +01:00
README.mxc_ocotp
README.mxs
README.mxsimage
README.N1213
README.nand Convert CONFIG_BCH to Kconfig 2017-09-01 20:45:26 -04:00
README.nand-boot-ppc440
README.NDS32
README.ne2000
README.NetConsole
README.nios2
README.nokia_rx51 Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
README.nvme nvme: Adjust the 'nvme' command to use blk_common_cmd() 2017-08-28 07:17:15 -04:00
README.NX25 riscv: doc: Add relative doc to describe RISC-V 2018-01-12 08:05:12 -05:00
README.odroid
README.OFT
README.omap3
README.omap-ulpi-viewport
README.pblimage
README.plan9
README.POST
README.power-framework
README.pxe
README.qemu-arm ARM: Document AArch64 version of qemu-arm 2018-01-19 15:49:31 -05:00
README.qemu-mips
README.ramboot-ppc85xx
README.rmobile doc: rmobile: Update README 2017-10-04 08:50:43 +09:00
README.rockchip rockchip: rk3188: use boot0 hook to load up SPL in 2 steps 2017-11-21 23:57:22 +01:00
README.rockusb rockchip:usb: add a simple readme for rockusb 2018-01-10 11:11:06 +01:00
README.s5pc1xx
README.sata
README.sched
README.scrapyard avr32: Retire AVR32 for good 2017-07-06 16:17:19 -04:00
README.sdp doc: update imx_usb_loader URL 2017-10-12 17:31:16 +02:00
README.semihosting
README.serial_multi powerpc, 5xxx, 512x: remove support for mpc5xxx and mpc512x 2017-06-16 10:14:55 -04:00
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 riscv: doc: Add relative doc to describe RISC-V 2018-01-12 08:05:12 -05:00
README.t1040-l2switch
README.ti-secure
README.TPL
README.trace
README.u-boot_on_efi efi_loader: split README.efi into two separate documents 2018-02-10 00:24:00 +01:00
README.ubi
README.ubispl
README.ublimage
README.unaligned-memory-access.txt
README.uniphier doc: fix incorrect usage of DT node unit address 2018-01-15 18:29:21 -07:00
README.update
README.usb usb: doc: update README.usb for new config options 2017-09-08 10:23:01 -04:00
README.vf610
README.video
README.VLAN
README.VSC3316-3308
README.vxworks
README.watchdog doc: watchdog: Remove Blackfin related documentation entry 2018-02-07 22:06:19 -05:00
README.x86 x86: provide CONFIG_BUILD_ROM 2017-10-19 11:37:51 +08:00
README.xtensa
README.zfs
README.zynq doc: zynq: Describe status of zc770-xm011 2018-01-30 14:28:19 +01:00

#
# 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/xm011/xm012/xm013
- Added zynq drivers:
  serial - drivers/serial/serial_zynq.c
  net - drivers/net/zynq_gem.c
  mmc - drivers/mmc/zynq_sdhci.c
  spi - drivers/spi/zynq_spi.c
  qspi - drivers/spi/zynq_qspi.c
  i2c - drivers/i2c/zynq_i2c.c
  nand - drivers/mtd/nand/zynq_nand.c
- Done proper cleanups on board configurations
- Added basic FDT support for zynq boards
- d-cache support for zynq_gem.c

6. TODO

- 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