u-boot-brain/drivers
Peng Fan 037734393e dm: gpio: pca953x: introduce driver model support for pca953x
Introduce a new driver that supports driver model for pca953x.
The pca953x chips are used as I2C I/O expanders.
This driver is designed to support the following chips:
"
4 bits: pca9536, pca9537
8 bits: max7310, max7315, pca6107, pca9534, pca9538, pca9554,
        pca9556, pca9557, pca9574, tca6408, xra1202
16 bits: max7312, max7313, pca9535, pca9539, pca9555, pca9575,
         tca6416
24 bits: tca6424
40 bits: pca9505, pca9698
"
But for now this driver only supports max 24 bits and pca953x compatible
chips. pca957x compatible chips are not supported now.
These can be addressed when we need to add such support for the different
chips.
This driver has been tested on i.MX6 SoloX Sabreauto board with max7310
i2c expander using gpio command as following:

=>gpio status -a
Bank gpio@30_:
gpio@30_0: input: 1 [ ]

=> dm tree:
 i2c         [   ]    |   |   `-- i2c@021a8000
 gpio        [   ]    |   |       |-- gpio@30
 gpio        [   ]    |   |       `-- gpio@32

Signed-off-by: Peng Fan <van.freenix@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Wenyou Yang <wenyou.yang@atmel.com>
Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Cc: Purna Chandra Mandal <purna.mandal@microchip.com>
Cc: Thomas Chou <thomas@wytron.com.tw>
Cc: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com>
Cc: Andrea Scian <andrea.scian@dave.eu>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Michal Simek <michal.simek@xilinx.com> #on ZynqMP zcu102
2016-05-17 09:54:43 -06:00
..
adc sandbox: add ADC driver 2015-11-02 10:38:00 +09:00
bios_emulator Fix various typos, scattered over the code. 2016-05-05 21:39:26 -04:00
block ahci: flush dcache before issuing command 2016-04-18 17:11:48 -04:00
bootcount bootcounter_ram: Flush dcache after data is written into SDRAM 2016-04-11 20:48:25 -04:00
clk clk: uniphier: add Media I/O clock driver support for PH1-LD20 2016-04-24 09:54:10 +09:00
core dm: core: Add dev_get_addr_ptr() to return a pointer to the reg address 2016-04-25 07:30:16 +02:00
cpu x86: Move MP initialization codes into a common place 2015-07-14 18:03:16 -06:00
crypto armv8: LS2080A: Consolidate LS2080A and LS2085A 2016-04-06 10:26:46 -07:00
ddr Fix spelling of "occurred". 2016-05-02 18:37:09 -04:00
demo drivers: hierarchize drivers Kconfig menu 2015-08-12 20:47:44 -04:00
dfu Merge branch 'master' of git://git.denx.de/u-boot-usb 2016-05-06 22:12:15 -04:00
dma drivers: dma: ti-edma3: convert driver to adopt driver model 2016-02-23 16:14:46 +05:30
fpga fpga: altera: Add StratixV support 2016-03-24 09:47:43 +01:00
gpio dm: gpio: pca953x: introduce driver model support for pca953x 2016-05-17 09:54:43 -06:00
hwmon mailaddr: Update mail address 2016-01-27 15:32:05 +01:00
i2c Fix spelling of "occurred". 2016-05-02 18:37:09 -04:00
input input: i8042: Make sure the keyboard is enabled 2016-03-17 10:27:24 +08:00
led dm: led: Tidy up SPL options for the led and led-gpio 2015-09-02 21:28:22 -06:00
memory memory: Move TI_AEMIF config to KCONFIG 2016-04-18 17:11:43 -04:00
misc Merge git://git.denx.de/u-boot-dm 2016-03-14 19:21:44 -04:00
mmc mmc: sdhci: add const qualifier to the name of struct sdhci_host 2016-04-25 15:10:42 -04:00
mtd Fix spelling of "occurred". 2016-05-02 18:37:09 -04:00
net Fix various typos, scattered over the code. 2016-05-05 21:39:26 -04:00
pch x86: pch9: Implement get_io_base op 2016-02-05 12:47:21 +08:00
pci pci: tegra: fix DM conversion issues on Tegra20 2016-05-04 13:31:04 -07:00
pcmcia powerpc: mpc824x: remove MPC824X cpu support 2015-01-05 12:08:55 -05:00
pinctrl pinctrl: uniphier: fix NAND and SD pin-mux settings for PH1-LD11/LD20 2016-04-24 09:53:54 +09:00
power drivers/power/pmic/pm8916.c: Make usid be uint32_t 2016-04-18 17:11:42 -04:00
pwm tegra: video: Move LCD driver to use the DM PWM driver 2016-02-16 09:17:53 -07:00
qe board: ls1043ardb: Add micro QE support for ls1043ardb 2016-02-24 08:51:14 -08:00
ram ram: rename CONFIG_SPL_RAM_SUPPORT to CONFIG_SPL_RAM 2015-08-18 13:46:02 -04:00
remoteproc remoteproc: Add support for TI power processor 2016-03-14 19:18:37 -04:00
rtc rtc: Add MCP79411 support to DS1307 rtc driver 2015-11-04 15:19:12 -08:00
serial serial: bcm283x_mu: make pending values more explicit 2016-04-18 17:11:47 -04:00
soc Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
sound of: clean up OF_CONTROL ifdef conditionals 2015-08-18 13:46:05 -04:00
spi mtd: cqspi: Simplify indirect read code 2016-05-06 18:41:49 +02:00
spmi spmi: Fix sandbox spmi driver memory corruption 2016-04-11 20:48:22 -04:00
thermal Fix various typos, scattered over the code. 2016-05-05 21:39:26 -04:00
timer Merge git://git.denx.de/u-boot-dm 2016-03-14 19:21:44 -04:00
tpm drivers/tpm/tpm_tis_sandbox.c: Fix uninitialized variable use 2016-04-15 08:14:37 -06:00
twserial drivers: convert makefiles to Kbuild style 2013-10-31 13:26:01 -04:00
usb usb: gadget: dfu: discard dead code 2016-05-06 20:06:56 +02:00
video drivers/video/am335x-fb: Properly point framebuffer behind palette 2016-04-28 16:51:17 +02:00
watchdog imx_watchdog: always set minimal timeout in reset_cpu 2016-01-07 17:54:53 +01:00
Kconfig memory: Move TI_AEMIF config to KCONFIG 2016-04-18 17:11:43 -04:00
Makefile drivers: Add SPMI bus uclass 2016-04-01 17:18:12 -04:00