diff options
author | Patrick Rudolph <patrick.rudolph@9elements.com> | 2021-02-15 16:41:07 +0100 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2021-02-19 08:37:59 +0000 |
commit | e75f1807e1150eaf777a12a0503a9b5b7d302bc7 (patch) | |
tree | 4e2e1ebb6f302aef6f0b880c35a8d49571d61bdb | |
parent | b67f385b69f394cf235693db50c98db760411320 (diff) |
mb/prodrive/hermes/eeprom: Add function to read HSI from EEPROM
Will be used to determine the board revision.
Change-Id: I41e4c6ad83e23c9d79e6abab3f38ad46bd3bec06
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/50788
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r-- | src/mainboard/prodrive/hermes/eeprom.c | 10 | ||||
-rw-r--r-- | src/mainboard/prodrive/hermes/variants/baseboard/include/eeprom.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/mainboard/prodrive/hermes/eeprom.c b/src/mainboard/prodrive/hermes/eeprom.c index 9bdec4a79b..6f61b30424 100644 --- a/src/mainboard/prodrive/hermes/eeprom.c +++ b/src/mainboard/prodrive/hermes/eeprom.c @@ -88,6 +88,16 @@ struct eeprom_bmc_settings *get_bmc_settings(void) return &bmc_cfg; } +uint8_t get_bmc_hsi(void) +{ + uint8_t hsi = 0; + struct eeprom_bmc_settings *s = get_bmc_settings(); + if (s) + hsi = s->hsi; + printk(BIOS_DEBUG, "CFG EEPROM: HSI 0x%x\n", hsi); + + return hsi; +} /* Read data from offset and write it to offset in UPD */ bool read_write_config(void *blob, size_t read_offset, size_t write_offset, size_t size) diff --git a/src/mainboard/prodrive/hermes/variants/baseboard/include/eeprom.h b/src/mainboard/prodrive/hermes/variants/baseboard/include/eeprom.h index 9b14d9c39f..e6e5f39d0e 100644 --- a/src/mainboard/prodrive/hermes/variants/baseboard/include/eeprom.h +++ b/src/mainboard/prodrive/hermes/variants/baseboard/include/eeprom.h @@ -86,6 +86,7 @@ bool read_write_config(void *blob, size_t read_offset, size_t write_offset, size int check_signature(const size_t offset, const uint64_t signature); struct eeprom_board_settings *get_board_settings(void); struct eeprom_bmc_settings *get_bmc_settings(void); +uint8_t get_bmc_hsi(void); void report_eeprom_error(const size_t off); bool write_board_settings(const struct eeprom_board_layout *new_layout); |