openMMC
Open Source Modular MMC for AMCs
Loading...
Searching...
No Matches
fru.c File Reference
#include "FreeRTOS.h"
#include "port.h"
#include "fru.h"
#include "fru_editor.h"
#include "at24mac.h"
#include "eeprom_24xx64.h"
#include "utils.h"
#include "ipmi.h"
#include "i2c_mapping.h"
#include "uart_debug.h"
Include dependency graph for fru.c:

Functions

void fru_init (uint8_t id)
 
uint8_t fru_check_integrity (uint8_t id, size_t *fru_size)
 
size_t fru_read (uint8_t id, uint8_t *rx_buff, uint16_t offset, size_t len)
 
size_t fru_write (uint8_t id, uint8_t *tx_buff, uint16_t offset, size_t len)
 
 IPMI_HANDLER (ipmi_storage_get_fru_info, NETFN_STORAGE, IPMI_GET_FRU_INVENTORY_AREA_INFO_CMD, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_storage_read_fru_data_cmd, NETFN_STORAGE, IPMI_READ_FRU_DATA_CMD, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_storage_write_fru_data_cmd, NETFN_STORAGE, IPMI_WRITE_FRU_DATA_CMD, ipmi_msg *req, ipmi_msg *rsp)
 

Variables

fru_data_t fru [FRU_COUNT]
 

Detailed Description

Creation of FRU information binary Based on Julian Mendez implementation for CERN MMC

Function Documentation

◆ fru_check_integrity()

uint8_t fru_check_integrity ( uint8_t id,
size_t * fru_size )

◆ fru_init()

void fru_init ( uint8_t id)

◆ fru_read()

size_t fru_read ( uint8_t id,
uint8_t * rx_buff,
uint16_t offset,
size_t len )

◆ fru_write()

size_t fru_write ( uint8_t id,
uint8_t * tx_buff,
uint16_t offset,
size_t len )

◆ IPMI_HANDLER() [1/3]

IPMI_HANDLER ( ipmi_storage_get_fru_info ,
NETFN_STORAGE ,
IPMI_GET_FRU_INVENTORY_AREA_INFO_CMD ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [2/3]

IPMI_HANDLER ( ipmi_storage_read_fru_data_cmd ,
NETFN_STORAGE ,
IPMI_READ_FRU_DATA_CMD ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [3/3]

IPMI_HANDLER ( ipmi_storage_write_fru_data_cmd ,
NETFN_STORAGE ,
IPMI_WRITE_FRU_DATA_CMD ,
ipmi_msg * req,
ipmi_msg * rsp )

Variable Documentation

◆ fru

fru_data_t fru[FRU_COUNT]
extern