u-boot-2016/doc
Sergey Temerkhanov 94f7ff36e5 armv8: New MMU setup code allowing to use 48+ bits PA/VA
This patch adds code which sets up 2-level page tables on ARM64 thus
extending available VA space. CPUs implementing 64k translation
granule are able to use direct PA-VA mapping of the whole 48 bit
address space.
It also adds the ability to reset the SCTRL register at the very beginning
of execution to avoid interference from stale mappings set up by early
firmware/loaders/etc.

Signed-off-by: Sergey Temerkhanov <s.temerkhanov@gmail.com>
Signed-off-by: Radha Mohan Chintakuntla <rchintakuntla@cavium.com>
2016-01-19 22:25:36 +00:00
..
device-tree-bindings x86: Add an i8042 device for boards that have it 2015-11-19 20:13:41 -07:00
DocBook Various Makefiles: Add SPDX-License-Identifier tags 2015-11-10 09:19:52 -05:00
driver-model serial-howto: remove altera_jtag_uart and altera_uart from the list 2015-12-19 09:51:19 +08:00
SPI
SPL
uImage.FIT mkimage will now report information about loadable 2015-05-28 08:18:20 -04:00
feature-removal-schedule.txt
git-mailrc x86: Remove Graeme Russ from the git alias file 2015-12-21 09:37:46 -05:00
I2C_Edge_Conditions
kwboot.1
mkimage.1
README.440-DDR-performance
README.ag101p NDS32: Generic Board Support and Unsupport 2015-08-28 11:46:35 -04:00
README.AMCC-eval-boards-cleanup
README.android-fastboot usb: CONFIG_USB_FASTBOOT prefix replacement for consistency 2015-07-22 08:57:54 +02:00
README.android-fastboot-protocol
README.ARC
README.arm-caches
README.ARM-memory-map
README.arm-relocation
README.arm64 armv8: New MMU setup code allowing to use 48+ bits PA/VA 2016-01-19 22:25:36 +00:00
README.at91
README.at91-soc
README.atmel_mci
README.atmel_pmecc
README.autoboot autoboot.c: Remove CONFIG_AUTOBOOT_STOP_STR2 and CONFIG_AUTOBOOT_DELAY_STR2 2015-06-08 10:45:11 -04:00
README.AVR32
README.AVR32-port-muxing
README.b4860qds powerpc/b4860qds: Update README for DIP switch information 2015-07-28 14:41:15 -07:00
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.dfutftp doc: dfu: tftp: README entry for TFTP extension of DFU 2015-09-07 13:41:04 +02:00
README.displaying-bmps
README.distro README.distro: fix typos 2015-07-08 18:26:41 -04:00
README.dns
README.drivers.eth net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
README.efi efi: Update README.efi to clarify build and test instructions 2015-08-26 07:54:09 -07:00
README.enetaddr net: Remove all references to CONFIG_ETHADDR and friends 2015-05-19 13:33:21 -05:00
README.esbc_validate SECURE BOOT: Add command for validation of images 2015-03-05 12:04:59 -08:00
README.ext4
README.falcon
README.fdt-control env: export fdt_blob to the environment variable 2015-10-23 09:42:28 -06:00
README.fec_mxc imx: fec: add MAC reading from eFuses to README 2015-09-02 15:34:11 +02:00
README.fsl-clk common/board_f.c: change the macro name and remove it for PPC platforms 2015-10-29 10:33:58 -07: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: Add adapter card type identification support 2015-05-04 09:25:19 -07:00
README.fsl-hwconfig
README.fsl-trustzone-components armv8: LS2080A: Rename LS2085A to reflect LS2080A 2015-11-30 08:53:04 -08:00
README.fsl_iim
README.fuse
README.generic-board doc/README.generic-board: Trivial spell check 2015-05-27 13:35:55 -04:00
README.generic_usb_ohci
README.gpt part:efi: add bootable parameter in gpt command 2015-11-23 11:01:52 -05:00
README.Heterogeneous-SoCs
README.hwconfig
README.i2c i2c: Add a mux for GPIO-based I2C bus arbitration 2015-08-05 21:06:10 -06:00
README.idma2intr
README.imx5 imx: fec: add MAC reading from eFuses to README 2015-09-02 15:34:11 +02:00
README.imx6 imx_common: check for Serial Downloader in spl_boot_device 2016-01-03 15:57:56 +01:00
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 net: cosmetic: Fix checkpatch.pl failures in net.c 2015-04-18 11:11:35 -06:00
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 Fix mxc_hab documenation 2015-05-15 19:20:46 +02:00
README.mxc_ocotp
README.mxs
README.mxsimage
README.N1213
README.nand Fix typo: commmand -> command. 2015-12-05 18:22:21 -05:00
README.nand-boot-ppc440
README.NDS32
README.ne2000
README.NetConsole
README.nios2 nios2: change README.nios2 to use 10m50 as template 2015-11-12 08:26:59 +08:00
README.nokia_rx51
README.odroid
README.OFT
README.omap-reset-time
README.omap-ulpi-viewport
README.omap3 arm: Remove omap3_mvblx board 2015-09-11 14:56:51 -04:00
README.pblimage
README.plan9
README.POST
README.power-framework
README.ppc440
README.pxe doc: document the fdtdir PXE command 2015-09-03 16:59:07 -04:00
README.qemu-mips
README.ramboot-ppc85xx
README.rmobile
README.rockchip rockchip: Fix the configuration for chromebook_jerry 2016-01-08 07:59:07 -07:00
README.s5pc1xx
README.sata
README.sched
README.scrapyard Revive OpenRD targets 2015-11-10 15:04:21 +01:00
README.semihosting armv8: semihosting: add a command to load semihosted images 2015-03-28 12:07:45 -04:00
README.serial_multi
README.sh
README.sh7752evb
README.sh7753evb
README.sha1
README.silent
README.SNTP
README.socfpga
README.spear
README.SPL
README.splashprepare splash_source: add support for filesystem formatted mmc 2015-11-16 12:01:35 +01:00
README.srio-pcie-boot-corenet
README.standalone
README.t1040-l2switch
README.TPL
README.trace
README.ubi
README.ublimage
README.unaligned-memory-access.txt
README.uniphier ARM: uniphier: fix recommended board setting in document 2016-01-13 01:55:02 +09:00
README.update Fix typo: commmand -> command. 2015-12-05 18:22:21 -05:00
README.usb
README.vf610
README.video sunxi: display: Add overscan correction 2015-08-14 08:37:36 +02:00
README.VLAN
README.VSC3316-3308
README.vxworks doc: Complement document about booting VxWorks 2015-10-21 07:46:26 -06:00
README.watchdog arm: Remove vision2 board 2015-09-11 16:05:03 -04:00
README.x86 x86: qemu: add documentaion for the fw_cfg interface 2016-01-13 12:20:16 +08:00
README.zfs
README.zynq ARM: zynq: add separate configuration for ZC702 and ZC706 2015-05-25 10:52:35 +02: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, 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