u-boot-brain/drivers
Sylvain Lemieux 89983478bd gpio: lpc32xx: fix issues with port3 gpio
The current simplify lpc32xx gpio driver implementation assume a
maximum of 32 GPIO per port; there are a total of 22 GPI, 24 GPO
and 6 GPIO to managed on port 3.

Update the driver to fix the following:
1) When requesting GPI_xx and GPO_xx on port 3 (xx is the same number)
   the second call to "gpio_request" will return -EBUSY.

2) The status of GPO_xx pin report the status of the
   corresponding GPI_xx pin when using the "gpio status" command.

3) The gpio driver may setup the direction register for the wrong
   gpio when calling "gpio_direction_input" (GPI_xx) or
   "gpio_direction_output" (GPO_xx) on port 3; the call to the
   direction is require to use the "gpio status" command.

The following change were done in the driver:
1) port3 GPI are cache in a separate 32 bits in the array.
2) port3 direction register written only for GPIO pins.
3) port3 GPO & GPIO (as output) are read using "p3_outp_state".
4) LPC32XX_GPI_P3_GRP updated to match the change.

Signed-off-by: Sylvain Lemieux <slemieux@tycoint.com>
2015-09-11 17:15:34 -04:00
..
bios_emulator biosemu: Do not free vga_info->BIOSImage when it is 0xc0000 2015-04-29 18:51:49 -06:00
block Move ALLOC_CACHE_ALIGN_BUFFER() to the new memalign.h header 2015-09-11 17:15:20 -04:00
bootcount qe: move immap_qe.h from arch directory into common directory 2014-07-22 16:25:54 -07:00
clk rockchip: rk3288: Add clock driver 2015-09-02 21:28:23 -06:00
core dm: Provide better debugging when a device fails to bind 2015-09-02 21:28:23 -06:00
cpu x86: Move MP initialization codes into a common place 2015-07-14 18:03:16 -06:00
crypto Correct License and Copyright information on few files 2015-08-12 20:47:46 -04:00
ddr bitops: introduce BIT() definition 2015-09-11 17:15:32 -04:00
demo drivers: hierarchize drivers Kconfig menu 2015-08-12 20:47:44 -04:00
dfu dfu: mmc: buffer file reads too 2015-09-11 17:15:23 -04:00
dma dma: lpc32xx: add DMA driver 2015-08-18 13:45:55 -04:00
fpga arm: socfpga: Fix FPGA bitstream programming routine 2015-08-08 14:14:04 +02:00
gpio gpio: lpc32xx: fix issues with port3 gpio 2015-09-11 17:15:34 -04:00
hwmon dtt: add ds620 support 2015-04-10 14:23:23 +02:00
i2c rockchip: Add I2C driver 2015-09-02 21:28:24 -06:00
input x86: i8042: Correctly initialize the controller 2015-08-26 07:54:16 -07:00
led dm: led: Tidy up SPL options for the led and led-gpio 2015-09-02 21:28:22 -06:00
memory ARM: keystone: aemif: move aemif driver to drivers/memory/ti-aemif.c 2014-06-19 17:53:58 -04:00
misc driver: misc: correct Kconfig entry 2015-09-11 14:05:34 -04:00
mmc Move ALLOC_CACHE_ALIGN_BUFFER() to the new memalign.h header 2015-09-11 17:15:20 -04:00
mtd bitops: introduce BIT() definition 2015-09-11 17:15:32 -04:00
net Move ALLOC_CACHE_ALIGN_BUFFER() to the new memalign.h header 2015-09-11 17:15:20 -04:00
pci dm: pci: Allow a PCI bus to be found without an alias 2015-09-09 07:48:03 -06:00
pcmcia powerpc: mpc824x: remove MPC824X cpu support 2015-01-05 12:08:55 -05:00
pinctrl rockchip: rk3288: Add pinctrl driver 2015-09-02 21:28:24 -06:00
power Merge git://git.denx.de/u-boot-rockchip 2015-09-03 14:57:09 -04:00
pwm pwm: imx: Remove unreachable code 2015-05-26 14:13:12 +02:00
qe driver/qe: use strncpy instead of strcpy 2015-08-03 12:06:36 -07:00
ram ram: rename CONFIG_SPL_RAM_SUPPORT to CONFIG_SPL_RAM 2015-08-18 13:46:02 -04:00
rtc rtc:ds3232/ds3231: Add support to generate 32KHz output 2015-09-01 21:37:23 -05:00
serial Merge git://git.denx.de/u-boot-rockchip 2015-09-03 14:57:09 -04:00
soc soc: keystone_serdes: generalize configuration mechanism 2014-10-23 11:27:28 -04:00
sound of: clean up OF_CONTROL ifdef conditionals 2015-08-18 13:46:05 -04:00
spi bitops: introduce BIT() definition 2015-09-11 17:15:32 -04:00
thermal thermal: imx_thermal: fix busywait if IMX6 temp <0C 2015-07-10 10:15:19 +02:00
tpm dm: tpm: Convert LPC driver to driver model 2015-08-31 07:57:28 -06:00
twserial drivers: convert makefiles to Kbuild style 2013-10-31 13:26:01 -04:00
usb usb: gadget: don't leak configs when unbinding 2015-09-11 17:15:21 -04:00
video bitops: introduce BIT() definition 2015-09-11 17:15:32 -04:00
watchdog watchdog/imx_watchdog: do not set WCR_WDW 2015-03-25 16:52:16 +01:00
Kconfig pinctrl: add pin control uclass support 2015-08-31 07:57:29 -06:00
Makefile pinctrl: add pin control uclass support 2015-08-31 07:57:29 -06:00