linux/drivers/pinctrl/aspeed
Rick Altherr c825676b08 pinctrl: aspeed: Allow disabling Port D and Port E loopback mode
Port D and port E GPIO loopback modes are commonly enabled via hardware
straps for use with front-panel buttons.  When the BMC is powered
off or fails to boot, the front-panel buttons are directly connected to
the host chipset via the loopback to allow direct power-on and reset
control. Once the BMC has booted, the loopback mode must be disabled for
the BMC to take over control of host power-on and reset.

Disabling these loopback modes requires writing to the hardware strap
register which violates the current design of assuming the system
designer chose the strap settings for a specific reason and they should
be treated as read-only. Only the two bits of the strap register related
to these loopback modes are allowed to be written and comments have been
added to explain why.

Signed-off-by: Rick Altherr <raltherr@google.com>
Acked-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-03-14 14:42:22 +01:00
..
Kconfig pinctrl: Add pinctrl-aspeed-g5 driver 2016-09-07 16:53:37 +02:00
Makefile pinctrl: Add pinctrl-aspeed-g5 driver 2016-09-07 16:53:37 +02:00
pinctrl-aspeed-g4.c pinctrl: aspeed: g4: Fix mux configuration for GPIOs AA[4-7], AB[0-7] 2017-01-26 14:42:39 +01:00
pinctrl-aspeed-g5.c pinctrl: aspeed-g5: Add mux configuration for all pins 2016-12-28 01:21:23 +01:00
pinctrl-aspeed.c pinctrl: aspeed: Allow disabling Port D and Port E loopback mode 2017-03-14 14:42:22 +01:00
pinctrl-aspeed.h pinctrl: aspeed-g5: Add mux configuration for all pins 2016-12-28 01:21:23 +01:00