aboutsummaryrefslogtreecommitdiff
path: root/src/mainboard/google/zork/variants/baseboard/gpio_baseboard_trembyle.c
diff options
context:
space:
mode:
authorFurquan Shaikh <furquan@google.com>2020-07-07 12:50:55 -0700
committerFurquan Shaikh <furquan@google.com>2020-07-08 23:07:34 +0000
commit30ee0d881b5c5568fb8e1cf0ad2144b9e84d6a06 (patch)
tree807618e9cde48f1ec6a080dab85590ff9281e6cd /src/mainboard/google/zork/variants/baseboard/gpio_baseboard_trembyle.c
parentca36acf773b1941c6df25329846765d0225fbd37 (diff)
mb/google/zork: Add helpers for v3 schematics and wifi power enable
This change adds following two helper functions: 1. variant_uses_v3_schematics() - Check whether the variant is using v3 version of schematics. 2. variant_has_active_low_wifi_power() - Check whether the variant is using active low power enable for WiFi. In addition to this, Kconfig options are reorganized to add two new configs - VARIANT_SUPPORTS_PRE_V3_SCHEMATICS and VARIANT_SUPPORTS_WIFI_POWER_ACTIVE_HIGH. This allows the helper functions to return `true` early without checking for board version. Eventually, when a variant decides to drop support for pre-v3 schematics, it can be dropped from selecting VARIANT_SUPPORTS_PRE_V3_SCHEMATICS. Similarly, when the variant decides to drop support for active high power enable for WiFi, it can be dropped from selecting VARIANT_SUPPORTS_WIFI_POWER_ACTIVE_HIGH. Change-Id: I62851299e8dd7929a8e1e9a287389abd71c7706c Signed-off-by: Furquan Shaikh <furquan@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/43224 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/mainboard/google/zork/variants/baseboard/gpio_baseboard_trembyle.c')
-rw-r--r--src/mainboard/google/zork/variants/baseboard/gpio_baseboard_trembyle.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/mainboard/google/zork/variants/baseboard/gpio_baseboard_trembyle.c b/src/mainboard/google/zork/variants/baseboard/gpio_baseboard_trembyle.c
index 77a3212de5..a0d385435a 100644
--- a/src/mainboard/google/zork/variants/baseboard/gpio_baseboard_trembyle.c
+++ b/src/mainboard/google/zork/variants/baseboard/gpio_baseboard_trembyle.c
@@ -171,10 +171,7 @@ static const struct soc_amd_gpio gpio_set_stage_ram[] = {
const __weak
struct soc_amd_gpio *variant_romstage_gpio_table(size_t *size)
{
- uint32_t board_version;
-
- if (!google_chromeec_cbi_get_board_version(&board_version) &&
- (board_version >= CONFIG_VARIANT_MIN_BOARD_ID_V3_SCHEMATICS)) {
+ if (variant_uses_v3_schematics()) {
*size = ARRAY_SIZE(gpio_set_stage_rom_v3);
return gpio_set_stage_rom_v3;
}
@@ -250,9 +247,9 @@ static void wifi_power_reset_configure_active_high_power(void)
gpio_set(GPIO_86, 1);
}
-static void wifi_power_reset_configure_v3(uint32_t board_version)
+static void wifi_power_reset_configure_v3(void)
{
- if (board_version >= CONFIG_VARIANT_MIN_BOARD_ID_WIFI_POWER_ACTIVE_LOW)
+ if (variant_has_active_low_wifi_power())
wifi_power_reset_configure_active_low_power();
else
wifi_power_reset_configure_active_high_power();
@@ -286,11 +283,8 @@ static void wifi_power_reset_configure_pre_v3(void)
__weak void variant_pcie_power_reset_configure(void)
{
- uint32_t board_version;
-
- if (!google_chromeec_cbi_get_board_version(&board_version) &&
- (board_version >= CONFIG_VARIANT_MIN_BOARD_ID_V3_SCHEMATICS))
- wifi_power_reset_configure_v3(board_version);
+ if (variant_uses_v3_schematics())
+ wifi_power_reset_configure_v3();
else
wifi_power_reset_configure_pre_v3();
}