summaryrefslogtreecommitdiff
path: root/src/mainboard
diff options
context:
space:
mode:
authorTim Wawrzynczak <twawrzynczak@chromium.org>2020-11-24 10:33:00 -0700
committerTim Wawrzynczak <twawrzynczak@chromium.org>2020-12-11 16:59:42 +0000
commit17689367d5ed24f20145f8a68414d34da039bb79 (patch)
tree6e15ddfa0733dd6ff7f01f1602c658b9c484ab97 /src/mainboard
parent473bc8c892c3acf6b1a222a09a53d5a190611bba (diff)
downloadcoreboot-17689367d5ed24f20145f8a68414d34da039bb79.tar.xz
mb/google/volteer: Make use of fw_config_is_provisioned()
In cases when a volteer device is unprovisioned, the safest thing to do for GPIOs that will normally be used for audio codec buses is to leave them disabled (configured as PAD_CFG_NC). This patch adds support for that. BUG=none TEST=add debug print to new if branch; remove fw_config from CBI and see print on console Change-Id: I8efd101174f6e3d7233d2bf803b680673cada81a Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-on: https://review.coreboot.org/c/coreboot/+/47972 Reviewed-by: Furquan Shaikh <furquan@google.com> Reviewed-by: Nick Vaccaro <nvaccaro@google.com> Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/mainboard')
-rw-r--r--src/mainboard/google/volteer/fw_config.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mainboard/google/volteer/fw_config.c b/src/mainboard/google/volteer/fw_config.c
index c444b4c15a..1025119658 100644
--- a/src/mainboard/google/volteer/fw_config.c
+++ b/src/mainboard/google/volteer/fw_config.c
@@ -72,6 +72,13 @@ static const struct pad_config sd_power_enable_pads[] = {
static void fw_config_handle(void *unused)
{
+ if (!fw_config_is_provisioned()) {
+ gpio_configure_pads(i2s_disable_pads, ARRAY_SIZE(i2s_disable_pads));
+ gpio_configure_pads(dmic_disable_pads, ARRAY_SIZE(dmic_disable_pads));
+ gpio_configure_pads(sndw_disable_pads, ARRAY_SIZE(sndw_disable_pads));
+ return;
+ }
+
if (fw_config_probe(FW_CONFIG(AUDIO, NONE))) {
printk(BIOS_INFO, "Configure GPIOs for no audio.\n");
gpio_configure_pads(i2s_disable_pads, ARRAY_SIZE(i2s_disable_pads));