mb/google/dedede: Program VCCIO selection for EN_SPKR GPIO

Realtek speaker amplifiers under auto mode operation have Absolute Max
Rating (AMR) at 1.98 V. Hence probe the firmware config for speaker
amplifier and program the VCCIOSEL accordingly.

BUG=b:194120188
TEST=Build and boot to OS in Gallop. Ensure that the VCCIO selection is
configured as expected and probing the GPIO reads the configured
voltage.

Change-Id: Ifa0b272c23bc70d9b0b23f9cc9222d875cd24921
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/56508
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Evan Green <evgreen@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
Karthikeyan Ramasubramanian 2021-07-22 00:54:03 -06:00 committed by Werner Zeh
parent 16f2c5082c
commit ce79ceec86
2 changed files with 18 additions and 0 deletions

View File

@ -9,6 +9,7 @@ ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-y += mainboard.c
ramstage-y += ec.c
ramstage-y += board_info.c
ramstage-$(CONFIG_FW_CONFIG) += fw_config.c
VARIANT_DIR:=$(call strip_quotes,$(CONFIG_VARIANT_DIR))

View File

@ -0,0 +1,17 @@
/* SPDX-License-Identifier: GPL-2.0-only */
#include <bootstate.h>
#include <fw_config.h>
#include <gpio.h>
static const struct pad_config spkr_pads[] = {
PAD_CFG_GPO_VCCIOSEL(GPP_D17, 0, PLTRST, 1V8),
};
static void fw_config_handle(void *unused)
{
if (fw_config_probe(FW_CONFIG(AUDIO_AMP, RT1015P_AUTO))) {
gpio_configure_pads(spkr_pads, ARRAY_SIZE(spkr_pads));
}
}
BOOT_STATE_INIT_ENTRY(BS_DEV_ENABLE, BS_ON_ENTRY, fw_config_handle, NULL);