diff options
Diffstat (limited to 'board/cm_t35/eeprom.c')
-rw-r--r-- | board/cm_t35/eeprom.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/board/cm_t35/eeprom.c b/board/cm_t35/eeprom.c index b3d332f3ac..dfa171d233 100644 --- a/board/cm_t35/eeprom.c +++ b/board/cm_t35/eeprom.c @@ -29,6 +29,8 @@ #define BOARD_REV_OFFSET_LEGACY 6 #define BOARD_REV_SIZE 4 #define BOARD_REV_SIZE_LEGACY 2 +#define MAC_ADDR_OFFSET 4 +#define MAC_ADDR_OFFSET_LEGACY 0 #define LAYOUT_INVALID 0 #define LAYOUT_LEGACY 0xff @@ -82,6 +84,22 @@ void get_board_serial(struct tag_serialnr *serialnr) } /* + * Routine: cm_t3x_eeprom_read_mac_addr + * Description: read mac address and store it in buf. + */ +int cm_t3x_eeprom_read_mac_addr(uchar *buf) +{ + uint offset; + + if (eeprom_setup_layout()) + return 0; + + offset = (eeprom_layout != LAYOUT_LEGACY) ? + MAC_ADDR_OFFSET : MAC_ADDR_OFFSET_LEGACY; + return cm_t3x_eeprom_read(offset, buf, 6); +} + +/* * Routine: get_board_rev * Description: read system revision */ |