common/util/fru.h (27 lines of code) (raw):

#ifndef FRU_H #define FRU_H #include "hal_eeprom.h" #define FRU_CFG_NUM 5 enum { NV_ATMEL_24C02, NV_ATMEL_24C64, NV_ATMEL_24C128, }; enum { FRU_WRITE_SUCCESS, FRU_READ_SUCCESS, FRU_INVALID_ID, FRU_OUT_OF_RANGE, FRU_FAIL_TO_ACCESS, }; enum { FRU_DEV_ACCESS_BYTE, FRU_DEV_ACCESS_WORD, }; extern EEPROM_CFG fru_config[]; uint8_t get_FRU_access(uint8_t FRUID); uint16_t find_FRU_size(uint8_t FRUID); uint8_t FRU_read(EEPROM_ENTRY *entry); uint8_t FRU_write(EEPROM_ENTRY *entry); void FRU_init(void); #endif