mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-10-04 18:40:42 +09:00
89983478bd
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> |
||
---|---|---|
.. | ||
adi_gpio2.c | ||
altera_pio.c | ||
at91_gpio.c | ||
axp_gpio.c | ||
bcm2835_gpio.c | ||
da8xx_gpio.c | ||
db8500_gpio.c | ||
dwapb_gpio.c | ||
gpio-uclass.c | ||
hi6220_gpio.c | ||
intel_ich6_gpio.c | ||
Kconfig | ||
kona_gpio.c | ||
kw_gpio.c | ||
lpc32xx_gpio.c | ||
Makefile | ||
mpc83xx_gpio.c | ||
mvgpio.c | ||
mvgpio.h | ||
mvmfp.c | ||
mxc_gpio.c | ||
mxs_gpio.c | ||
omap_gpio.c | ||
pca953x.c | ||
pca9698.c | ||
rk_gpio.c | ||
s3c2440_gpio.c | ||
s5p_gpio.c | ||
sandbox.c | ||
sh_pfc.c | ||
spear_gpio.c | ||
stm32_gpio.c | ||
sunxi_gpio.c | ||
sx151x.c | ||
tca642x.c | ||
tegra_gpio.c | ||
vybrid_gpio.c | ||
xilinx_gpio.c | ||
zynq_gpio.c |