diff options
Diffstat (limited to 'src/mainboard/prodrive/hermes/eeprom.c')
-rw-r--r-- | src/mainboard/prodrive/hermes/eeprom.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/mainboard/prodrive/hermes/eeprom.c b/src/mainboard/prodrive/hermes/eeprom.c index cece32cf55..d7ecdeca48 100644 --- a/src/mainboard/prodrive/hermes/eeprom.c +++ b/src/mainboard/prodrive/hermes/eeprom.c @@ -6,15 +6,17 @@ #include <soc/intel/common/block/smbus/smbuslib.h> #include "variants/baseboard/include/eeprom.h" +#define I2C_ADDR_EEPROM 0x57 + /* * Check Signature in EEPROM (M24C32-FMN6TP) * If signature is there we assume that that the content is valid */ -int check_signature(u8 addr, const size_t offset, const uint64_t signature) +int check_signature(const size_t offset, const uint64_t signature) { u8 blob[8] = {0}; - if (!read_write_config(addr, blob, offset, 0, ARRAY_SIZE(blob))) { + if (!read_write_config(blob, offset, 0, ARRAY_SIZE(blob))) { /* Check signature */ if (*(uint64_t *)blob == signature) { printk(BIOS_DEBUG, "CFG EEPROM: Signature valid.\n"); @@ -27,8 +29,7 @@ int check_signature(u8 addr, const size_t offset, const uint64_t signature) } /* Read data from offset and write it to offset in UPD */ -bool read_write_config(u8 addr, void *blob, size_t read_offset, size_t write_offset, - size_t size) +bool read_write_config(void *blob, size_t read_offset, size_t write_offset, size_t size) { int ret = 0; @@ -42,7 +43,7 @@ bool read_write_config(u8 addr, void *blob, size_t read_offset, size_t write_off for (size_t i = 0; i < size; i = i + 2) { u8 tmp[2] = {0}; - ret = do_smbus_process_call(SMBUS_IO_BASE, addr, 0, + ret = do_smbus_process_call(SMBUS_IO_BASE, I2C_ADDR_EEPROM, 0, swab16(read_offset + i), (uint16_t *)&tmp[0]); if (ret < 0) break; |