u-boot/doc
Vignesh R 5746b0df9c gpio: Add driver for TI PCF8575 I2C GPIO expander
TI's PCF8575 is a 16-bit I2C GPIO expander.The device features a
16-bit quasi-bidirectional I/O ports. Each quasi-bidirectional I/O can
be used as an input or output without the use of a data-direction
control signal. The I/Os should be high before being used as inputs.
Read the device documentation for more details[1].

This driver is based on pcf857x driver available in Linux v4.7 kernel.
It supports basic reading and writing of gpio pins.

[1] http://www.ti.com/lit/ds/symlink/pcf8575.pdf

Signed-off-by: Vignesh R <vigneshr@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Mugunthan V N <mugunthanvnm@ti.com>
2016-08-08 13:32:53 -04:00
..
device-tree-bindings gpio: Add driver for TI PCF8575 I2C GPIO expander 2016-08-08 13:32:53 -04:00
DocBook Various Makefiles: Add SPDX-License-Identifier tags 2015-11-10 09:19:52 -05:00
driver-model dm: Update the of-platdata README for the new features 2016-07-14 20:40:24 -06:00
SPI Fix various typos, scattered over the code. 2016-05-05 21:39:26 -04:00
SPL doc: SPL: Add README for secure boot support 2016-07-21 11:11:29 -07:00
uImage.FIT mkimage: fit: spl: Add an optional static offset for external data 2016-06-24 17:23:06 -04:00
feature-removal-schedule.txt Various, unrelated tree-wide typo fixes. 2016-07-16 09:43:12 -04:00
git-mailrc MAINTAINERS, git-mailrc: Update the mmc maintainer 2016-08-02 07:30:56 -04:00
I2C_Edge_Conditions rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
kwboot.1 Fix spelling of "transferred". 2016-03-22 12:16:16 -04:00
mkimage.1 mkimage: fit: spl: Add an optional static offset for external data 2016-06-24 17:23:06 -04:00
README.440-DDR-performance Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.ag101p NDS32: Generic Board Support and Unsupport 2015-08-28 11:46:35 -04:00
README.AMCC-eval-boards-cleanup Major cleanup for AMCC PPC4xx eval boards. 2005-08-01 16:49:12 +02:00
README.android-fastboot usb: CONFIG_USB_FASTBOOT prefix replacement for consistency 2015-07-22 08:57:54 +02:00
README.android-fastboot-protocol usb/gadget: add the fastboot gadget 2014-05-08 10:38:30 +02:00
README.ARC arc: add README for architecture 2014-02-07 08:14:34 -05:00
README.arm-caches doc: ARM: Use the right function name 2015-01-14 11:37:39 -05:00
README.ARM-memory-map Rename TEXT_BASE into CONFIG_SYS_TEXT_BASE 2010-10-18 22:07:10 +02:00
README.arm-relocation nand: mxc: Switch NAND SPL to generic SPL 2013-04-12 07:55:07 +02:00
README.arm64 arm64: Remove non-full-va map code 2016-03-15 15:13:10 -04:00
README.at91 ARM: at91: add NAND partition table and index 2013-05-21 11:54:21 +02:00
README.at91-soc Change my mailaddress 2016-05-02 18:37:09 -04:00
README.atmel_mci ATMEL: remove old atmel_mci driver 2012-03-13 12:06:42 +01:00
README.atmel_pmecc Change my mailaddress 2016-05-02 18:37:09 -04:00
README.autoboot autoboot: remove CONFIG_ZERO_BOOTDELAY_CHECK 2016-07-01 17:42:55 -04:00
README.AVR32 avr32: Update README 2008-09-01 13:41:58 +02:00
README.AVR32-port-muxing doc: Fix some typos in different files 2012-03-27 13:31:37 +02:00
README.b4860qds Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.bedbug Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
README.bitbangMII Coding Style cleanup; update CHANGELOG, prepare -rc1 2009-10-28 00:49:47 +01:00
README.blackfin add some more Blackfin docs 2008-02-04 19:26:54 -05:00
README.bootmenu Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
README.bus_vcxk Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
README.cfi board/ti/am335x: add support for beaglebone NOR Cape 2014-08-25 10:47:56 -04:00
README.clang arm: clang: Update support slightly 2016-04-01 17:17:39 -04:00
README.commands kbuild: rename TOPDIR to stctree 2014-03-12 17:04:55 -04:00
README.commands.itest * Patch by Laurent Mohin, 10 Feb 2004: 2004-02-23 20:48:38 +00:00
README.commands.spl Fix various typos, scattered over the code. 2016-05-05 21:39:26 -04:00
README.console powerpc: remove genietv board support 2014-04-18 10:42:29 -04:00
README.davinci arm, da850evm: Add an SPL for SPI boot 2011-12-24 10:23:30 +01:00
README.davinci.nand_spl arm, davinci: add cam_enc_4xx support 2011-11-03 22:56:25 +01:00
README.dfutftp doc: dfu: tftp: README entry for TFTP extension of DFU 2015-09-07 13:41:04 +02:00
README.displaying-bmps lcd: implement a callback for splashimage 2013-03-11 11:06:09 -04:00
README.distro Kconfig: Add a new DISTRO_DEFAULTS Kconfig option 2016-06-20 21:30:13 -04:00
README.dns Coding Style cleanup; update CHANGELOG. 2009-07-23 22:23:23 +02:00
README.drivers.eth net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
README.efi efi_loader: Add README section in README.efi 2016-03-15 21:30:12 -04: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 doc: Updated README.ext4 2016-04-18 17:11:47 -04:00
README.falcon doc/README.falcon: Clarify steps slightly. 2014-07-07 19:42:34 -04:00
README.fdt-control Remove/update old generic-board documentation and warning 2016-05-27 15:39:50 -04:00
README.fec_mxc driver/net/fec: support fixed speed connection 2016-07-12 17:58:48 +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 driver/ddr/fsl: Add address parity support for DDR4 UDIMM/discrete 2016-03-21 12:42:13 -07:00
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 powerpc/85xx: Specify hwconfig usage for USB controller 2011-07-11 13:24:20 -05:00
README.fsl-trustzone-components armv8: LS2080A: Rename LS2085A to reflect LS2080A 2015-11-30 08:53:04 -08:00
README.fsl_iim Add fsl_iim driver 2013-04-28 11:07:41 +02:00
README.fuse Add fuse API and commands 2013-04-28 11:07:40 +02:00
README.generic-board Remove/update old generic-board documentation and warning 2016-05-27 15:39:50 -04:00
README.generic_usb_ohci rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
README.gpt Various, unrelated tree-wide typo fixes. 2016-07-16 09:43:12 -04:00
README.Heterogeneous-SoCs powerpc/mpc85xx: Add DSP side awareness for Freescale Heterogeneous SoCs 2015-03-04 10:15:29 -08:00
README.hwconfig Cosmetic: Fix a number of typos, no functional changes. 2013-09-20 10:30:54 -04:00
README.i2c i2c: Add a mux for GPIO-based I2C bus arbitration 2015-08-05 21:06:10 -06:00
README.idma2intr * Patch by Arun Dharankar, 4 Apr 2003: 2003-04-05 00:53:31 +00:00
README.imx5 imx: fec: add MAC reading from eFuses to README 2015-09-02 15:34:11 +02:00
README.imx6 Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.imx25 imx: Document fuse assignments for MAC addresses 2013-04-28 11:07:44 +02:00
README.imx27 imx: Document fuse assignments for MAC addresses 2013-04-28 11:07:44 +02:00
README.imx31 move README.imx31 to doc/ and merge with README.mx31 2008-10-08 18:59:04 +02:00
README.imximage README.imximage: Fix the maximum DCD size 2014-09-11 10:14:04 +02:00
README.iomux Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
README.JFFS2 rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
README.JFFS2_NAND doc: Fix a typo in the description in doc/README.JFFS2_NAND 2013-10-07 08:21:13 -04:00
README.kconfig kconfig: switch to single .config configuration 2015-02-24 17:06:23 -05:00
README.kwbimage doc: fix documentation of out-of-tree build 2014-11-07 16:27:07 -05:00
README.LED Move lib_$ARCH directories to arch/$ARCH/lib 2010-04-13 09:13:03 +02:00
README.LED_display led_display: remove unused DISPLAY_MARK define 2010-10-21 22:25:04 +02:00
README.link-local net: cosmetic: Fix checkpatch.pl failures in net.c 2015-04-18 11:11:35 -06:00
README.lynxkdi rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
README.m68k Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.m54418twr ColdFire: Add Freescale MCF54418TWR ColdFire development board support 2012-10-24 22:27:46 +08:00
README.malta Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.marubun-pcmcia Fix various typos, scattered over the code. 2016-05-05 21:39:26 -04:00
README.memory-test Feature Removal: disable "mtest" command by default 2013-03-11 15:26:59 -04:00
README.menu Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.mips MIPS: remove obsolete TODO items 2013-07-24 09:51:05 -04:00
README.mpc5xx Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
README.mpc74xx Initial revision 2002-11-02 23:30:20 +00:00
README.mpc83xx.ddrecc mpc83xx: Correct the README for DDR ECC 2007-08-10 01:13:11 -05:00
README.mpc83xxads Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.mpc85xx spl/85xx: new SPL support 2012-11-26 15:41:25 -06:00
README.mpc85xx-sd-spi-boot powerpc: mpc85xx: Support booting from SD Card with SPL 2013-08-20 09:47:26 -07:00
README.mpc85xx-spin-table Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.mpc85xxads Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.mpc85xxcds Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.MPC866 rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
README.mxc_hab Fix mxc_hab documenation 2015-05-15 19:20:46 +02:00
README.mxc_ocotp arm: vf610: Add Vybrid VF610 to mxc_ocotp document 2013-06-03 10:56:54 +02:00
README.mxs Fix various typos, scattered over the code. 2016-05-05 21:39:26 -04:00
README.mxsimage ARM: mxs: tools: Add support for boot progress display flag 2014-11-20 10:13:45 +01:00
README.N1213 doc/README: documents and readme for NDS32 arch 2011-10-22 00:54:45 +02:00
README.nand mtd: nand: Patch remaining places where nand_to_mtd() should be used 2016-06-19 19:28:38 -05:00
README.nand-boot-ppc440 Fix some typos 2008-05-09 20:53:52 +02:00
README.NDS32 doc/README: documents and readme for NDS32 arch 2011-10-22 00:54:45 +02:00
README.ne2000 * Patches by Richard Woodruff, 01 Oct 2004: 2005-01-09 23:16:25 +00:00
README.NetConsole net: Make the netconsole buffer size configurable 2012-09-24 13:55:43 -05:00
README.nios2 nios2: change README.nios2 to use 10m50 as template 2015-11-12 08:26:59 +08:00
README.nokia_rx51 Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
README.odroid odroid: Update README with correct firmware link and XU4 support 2016-04-14 19:38:40 +09:00
README.OFT Code cleanup, especially MIPS for GCC 4.x 2005-12-04 00:40:34 +01:00
README.omap-reset-time ARM: OMAP5: Fix warm reset with USB cable connected 2013-05-10 08:25:55 -04:00
README.omap-ulpi-viewport usb: ulpi: Add omap-ulpi-view port support 2012-02-12 10:11:30 +01:00
README.omap3 arm: Remove omap3_mvblx board 2015-09-11 14:56:51 -04:00
README.pblimage powerpc/tool/pbl: fix pbl image compiling process 2013-10-16 16:13:13 -07:00
README.plan9 cmd_bootm: Add command line arguments to Plan 9 2013-06-26 10:25:22 -04:00
README.POST Fix spelling of "transferred". 2016-03-22 12:16:16 -04:00
README.power-framework doc:power:pmic: Add doc entry for PMIC(v2) framework 2014-04-18 10:42:30 -04:00
README.ppc440 Remove unused CONFIG_SERIAL_SOFTWARE_FIFO feature 2010-09-23 09:02:05 +02:00
README.pxe Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.qemu-mips Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.ramboot-ppc85xx Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
README.rmobile arm: rmobile: Update README.rmobile 2013-12-18 16:35:45 +09:00
README.rockchip rockchip: add support for rk3288 miniarm board 2016-08-05 17:56:08 -06:00
README.s5pc1xx s5pc1xx: update the README file 2010-04-03 15:24:26 -05:00
README.sata Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.sched * Patch by Arun Dharankar, 4 Apr 2003: 2003-04-05 00:53:31 +00:00
README.scrapyard Various, unrelated tree-wide typo fixes. 2016-07-16 09:43:12 -04:00
README.semihosting armv8: semihosting: add a command to load semihosted images 2015-03-28 12:07:45 -04:00
README.serial_multi rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
README.sh sh: Add support Renesas Solutions R7780MP 2008-03-28 14:16:12 +09:00
README.sh7752evb sh: add support for sh7752evb board 2012-12-20 13:20:17 +09:00
README.sh7753evb sh: add support for sh7753evb board 2013-12-18 16:49:08 +09:00
README.sha1 Drop references to MAKEALL in the documentation 2016-07-31 19:37:08 -06:00
README.silent Allow u-boot to be silent without forcing Linux to be 2013-03-11 17:01:02 -04:00
README.SNTP doc: Fix some typos in different files 2012-03-27 13:31:37 +02:00
README.socfpga socfpga/dwmmc: Adding DesignWare MMC driver support for SOCFPGA 2014-01-09 11:53:55 +02:00
README.spear SPEAr: Add configuration options for spear3xx and spear6xx boards 2012-07-07 14:07:40 +02:00
README.SPL doc: Update documentation according to the EXT SPL support patch set 2014-10-27 17:54:08 -04:00
README.splashprepare splash_source: add support for filesystem formatted mmc 2015-11-16 12:01:35 +01:00
README.srio-pcie-boot-corenet powerpc/doc: Update the README.srio-pcie-boot-corenet 2013-06-20 17:08:47 -05:00
README.standalone Export redesign 2015-01-29 17:09:57 -07:00
README.t1040-l2switch drivers: net: vsc9953: Add LAG support 2016-01-28 12:22:19 -06:00
README.ti-secure doc: Update info on using secure devices from TI 2016-07-14 18:22:23 -04:00
README.TPL kbuild: rename TOPDIR to stctree 2014-03-12 17:04:55 -04:00
README.trace Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
README.ubi Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
README.ubispl spl: Lightweight UBI and UBI fastmap support 2016-07-22 09:53:00 -04:00
README.ublimage Minor coding style cleanup. 2011-09-11 21:24:09 +02:00
README.unaligned-memory-access.txt doc: Fix comparison operator 2014-10-27 11:04:00 -04:00
README.uniphier ARM: uniphier: switch to raw U-Boot image 2016-03-24 01:45:41 +09:00
README.update Fix typo: commmand -> command. 2015-12-05 18:22:21 -05:00
README.usb usb: net: update README.usb to list all USB ethernet options 2014-03-12 17:04:35 -04:00
README.vf610 arm: vf610: Add Vybrid VF610 CPU support 2013-06-03 10:56:53 +02:00
README.video Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
README.VLAN Patches by Pantelis Antoniou, 30 Mar 2004: 2004-04-15 21:48:45 +00:00
README.VSC3316-3308 board/freescale/common: VSC3316/VSC3308 initialization code 2012-10-22 14:31:21 -05:00
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: acpi: Pack global NVS into ACPI table 2016-07-12 13:46:01 +08:00
README.zfs Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
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