summaryrefslogtreecommitdiffstats
path: root/src/soc/amd/picasso/early_fch.c
diff options
context:
space:
mode:
authorFelix Held <felix-coreboot@felixheld.de>2021-03-25 01:20:41 +0100
committerFelix Held <felix-coreboot@felixheld.de>2021-03-29 19:07:48 +0000
commit27b295b98b65e05635ee5a40967adb0f9ca79afa (patch)
treef58f81148a507288b56c2a366f18753d58dbc0fc /src/soc/amd/picasso/early_fch.c
parent2c62df229f49b7dde6a9ad5d963153582efb6822 (diff)
downloadcoreboot-27b295b98b65e05635ee5a40967adb0f9ca79afa.tar.gz
coreboot-27b295b98b65e05635ee5a40967adb0f9ca79afa.tar.bz2
coreboot-27b295b98b65e05635ee5a40967adb0f9ca79afa.zip
soc/amd: add DISABLE_KEYBOARD_RESET_PIN option
The KBRST_L pin will cause a reset when driven or pulled low even when the GPIO mux is set to GPIO and not native function. So when you want to use that pin as general purpose output the keyboard reset input functionality needs to be disabled by selecting this option in the board's Kconfig file to avoid causing a reset by writing a 0 to the output level bit when it's configured as an output. Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Suggested-by: Furquan Shaikh <furquan@google.com> Change-Id: I517ad551db9321f26afdba15d97ddb61be1f7d51 Reviewed-on: https://review.coreboot.org/c/coreboot/+/51757 Reviewed-by: Furquan Shaikh <furquan@google.com> Reviewed-by: Kangheui Won <khwon@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/amd/picasso/early_fch.c')
-rw-r--r--src/soc/amd/picasso/early_fch.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/soc/amd/picasso/early_fch.c b/src/soc/amd/picasso/early_fch.c
index 1aff83b5c826..63e192fa7f46 100644
--- a/src/soc/amd/picasso/early_fch.c
+++ b/src/soc/amd/picasso/early_fch.c
@@ -62,6 +62,10 @@ void fch_pre_init(void)
if (CONFIG(AMD_SOC_CONSOLE_UART))
set_uart_config(CONFIG_UART_FOR_CONSOLE);
+
+ /* disable the keyboard reset function before mainboard GPIO setup */
+ if (CONFIG(DISABLE_KEYBOARD_RESET_PIN))
+ fch_disable_kb_rst();
}
/* After console init */