u-boot-brain/drivers/gpio
Alexander Graf 601147b06a serial: bcm283x_mu: Detect disabled serial device
On the raspberry pi, you can disable the serial port to gain dynamic frequency
scaling which can get handy at times.

However, in such a configuration the serial controller gets its rx queue filled
up with zero bytes which then happily get transmitted on to whoever calls
getc() today.

This patch adds detection logic for that case by checking whether the RX pin is
mapped to GPIO15 and disables the mini uart if it is not mapped properly.

That way we can leave the driver enabled in the tree and can determine during
runtime whether serial is usable or not, having a single binary that allows for
uart and non-uart operation.

Signed-off-by: Alexander Graf <agraf@suse.de>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
2016-09-06 13:18:19 -04:00
..
74x164_gpio.c dm: gpio: introduce 74x164 driver 2016-05-17 09:54:43 -06:00
adi_gpio2.c blackfin: Move machine specific gpio_port_t structure back to blackfin arch folder. 2013-11-04 16:50:46 +08:00
altera_pio.c altera_pio: change ioremap to map_physmem 2015-11-18 21:18:30 +08:00
at91_gpio.c gpio: at91: Fix pullup/pulldown configuration on PIO3 2016-06-12 23:49:38 +02:00
atmel_pio4.c gpio: atmel_pio4: Rework to support DM & DT 2016-08-15 22:58:03 +02:00
axp_gpio.c sunxi: axp: Generalize register macros for VBUS drive GPIO 2016-03-31 17:03:52 +02:00
bcm2835_gpio.c serial: bcm283x_mu: Detect disabled serial device 2016-09-06 13:18:19 -04:00
da8xx_gpio.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
db8500_gpio.c Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
dwapb_gpio.c gpio: Add DW APB GPIO driver 2015-08-23 11:56:20 +02:00
gpio-uclass.c dm: gpio: Add methods for open drain setting 2016-06-03 22:13:52 -07:00
gpio-uniphier.c ARM: uniphier: use (devm_)ioremap() instead of map_sysmem() 2016-07-24 00:13:10 +09:00
hi6220_gpio.c dm: gpio: hi6220: Add a hi6220 GPIO driver model driver. 2015-08-12 20:47:58 -04:00
intel_broadwell_gpio.c x86: broadwell: gpio: Remove the codes to set up pin control 2016-06-12 12:19:35 +08:00
intel_ich6_gpio.c x86: Probe pinctrl driver in cpu_init_r() 2016-06-12 12:19:35 +08:00
Kconfig gpio: atmel_pio4: Rework to support DM & DT 2016-08-15 22:58:03 +02:00
kona_gpio.c gpio: kona: Add Kona gpio driver 2014-02-22 19:30:27 +01:00
kw_gpio.c gpio: make local functions static 2014-10-25 07:02:01 -04:00
lpc32xx_gpio.c gpio: lpc32xx: fix issues with port3 gpio 2015-09-11 17:15:34 -04:00
Makefile gpio: Add driver for TI PCF8575 I2C GPIO expander 2016-08-08 13:32:53 -04:00
mpc83xx_gpio.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mpc85xx_gpio.c fdt: allow fdtdec_get_addr_size_*() to translate addresses 2016-08-12 09:20:27 -06:00
msm_gpio.c gpio: Add support for Qualcomm gpio controller 2016-04-01 17:18:07 -04:00
mvebu_gpio.c gpio: mvebu_gpio: Add missing out value set to gpio_direction_output() 2016-04-12 11:13:33 +02:00
mvgpio.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mvgpio.h mvgpio: remove CONFIG_SHEEVA_88SV331xV5 dependency 2015-04-23 13:59:18 -04:00
mvmfp.c gpio: mvmfp: support newer MFP bit definitions 2015-04-23 13:59:18 -04:00
mxc_gpio.c imx: mxc_gpio: add support for imx7d SoC 2015-09-02 15:31:33 +02:00
mxs_gpio.c gpio: mxs: Remove netdev.h 2016-06-02 21:21:41 -04:00
omap_gpio.c gpio: omap: remove gpio_xlate routine 2016-05-17 09:54:43 -06:00
pca953x_gpio.c gpio: pca953x: Fix register reading past 8th GPIO 2016-06-19 17:05:55 -06:00
pca953x.c GPIO: pca953x: Remove compilation warnings on arm64 2016-04-13 18:29:06 +02:00
pca9698.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
pcf8575_gpio.c gpio: Add driver for TI PCF8575 I2C GPIO expander 2016-08-08 13:32:53 -04:00
pic32_gpio.c gpio: pic32: remove gpio_xlate routine 2016-05-17 09:54:43 -06:00
pm8916_gpio.c drivers/gpio/pm8916_gpio.c: Make pid be uint32_t 2016-04-18 17:11:42 -04:00
rk_gpio.c gpio: add Tegra186 GPIO driver 2016-05-31 09:54:24 -07:00
s3c2440_gpio.c gpio: s3c: Fix the GPIO driver 2015-05-06 17:00:58 +09:00
s5p_gpio.c gpio: exynos(s5p): remove gpio_xlate routine 2016-05-17 09:54:43 -06:00
sandbox.c dm: test: Add GPIO open drain tests 2016-06-03 22:14:20 -07:00
sh_pfc.c gpio: sh-pfc: fix gpio input read 2015-08-31 17:26:03 +09:00
spear_gpio.c gpio: spear_gpio: Fix gpio_set_value() implementation 2014-07-04 21:37:29 +02:00
stm32_gpio.c stm32: add support for stm32f7 & stm32f746 discovery board 2016-02-24 18:43:57 -05:00
sunxi_gpio.c sunxi: gpio: Add .xlate function for gpio phandle resolution 2016-07-31 21:45:12 +02:00
sx151x.c Add support for SX151x SPI GPIO Expanders 2013-11-08 09:39:13 -05:00
tca642x.c gpio: tca642x: Add the tca642x gpio expander driver 2013-07-30 09:21:42 -04:00
tegra_gpio.c tegra: gpio: Show the GPIO value for outputs 2016-02-16 09:17:50 -07:00
tegra186_gpio_priv.h gpio: add Tegra186 GPIO driver 2016-05-31 09:54:24 -07:00
tegra186_gpio.c gpio: add Tegra186 GPIO driver 2016-05-31 09:54:24 -07:00
vybrid_gpio.c dm: vybrid_gpio: Drop legacy code 2016-02-02 21:36:10 +01:00
xilinx_gpio.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
zynq_gpio.c gpio: zynq: Add support for reading gpio pin state 2016-05-24 11:15:00 +02:00