diff --git a/src/mainboard/prodrive/hermes/Makefile.inc b/src/mainboard/prodrive/hermes/Makefile.inc index caaddec7be..63be66c655 100644 --- a/src/mainboard/prodrive/hermes/Makefile.inc +++ b/src/mainboard/prodrive/hermes/Makefile.inc @@ -10,3 +10,5 @@ ramstage-y += ramstage.c ramstage-y += mainboard.c ramstage-y += eeprom.c ramstage-y += smbios.c + +$(call add_vbt_to_cbfs, vbt-avalanche.bin, avalanche-data.vbt) diff --git a/src/mainboard/prodrive/hermes/avalanche-data.vbt b/src/mainboard/prodrive/hermes/avalanche-data.vbt new file mode 100644 index 0000000000..c3513310bb Binary files /dev/null and b/src/mainboard/prodrive/hermes/avalanche-data.vbt differ diff --git a/src/mainboard/prodrive/hermes/eeprom.h b/src/mainboard/prodrive/hermes/eeprom.h index a42a3d7520..4b609dfeab 100644 --- a/src/mainboard/prodrive/hermes/eeprom.h +++ b/src/mainboard/prodrive/hermes/eeprom.h @@ -63,6 +63,7 @@ _Static_assert(sizeof(struct eeprom_board_settings) == (10 + sizeof(uint32_t)), struct __packed eeprom_bmc_settings { uint8_t pcie_mux; uint8_t hsi; + uint8_t efp3_displayport; }; #define HERMES_SERIAL_NUMBER_LENGTH 32 diff --git a/src/mainboard/prodrive/hermes/mainboard.c b/src/mainboard/prodrive/hermes/mainboard.c index 81ed641078..6ca9613b09 100644 --- a/src/mainboard/prodrive/hermes/mainboard.c +++ b/src/mainboard/prodrive/hermes/mainboard.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -18,6 +19,16 @@ #include "eeprom.h" #include "gpio.h" +const char *mainboard_vbt_filename(void) +{ + const struct eeprom_bmc_settings *bmc_cfg = get_bmc_settings(); + + if (bmc_cfg && bmc_cfg->efp3_displayport) + return "vbt-avalanche.bin"; + else + return "vbt.bin"; /* Poseidon */ +} + /* FIXME: Example code below */ static void mb_configure_dp1_pwr(bool enable)