OpenBIC
OpenSource Bridge-IC
plat_mctp.h File Reference
#include <kernel.h>
#include "storage_handler.h"
#include "pldm.h"
Include dependency graph for plat_mctp.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mctp_to_ipmi_header_req
 
struct  mctp_to_ipmi_header_resp
 
struct  mctp_to_ipmi_sel_req
 
struct  mctp_to_ipmi_sel_resp
 

Macros

#define I2C_ADDR_BIC   0x40
 
#define I2C_ADDR_BMC   0x20
 
#define I2C_BUS_BMC   0x02
 
#define I3C_BUS_BMC   0
 
#define I3C_BUS_CONTROLLER   1
 
#define I3C_BUS_HUB   1
 
#define I3C_ADDR_HUB   0x70
 
#define I3C_STATIC_ADDR_BIC   0x40
 
#define I3C_STATIC_ADDR_BMC   0x20
 
#define I3C_STATIC_ADDR_FF_BIC   0x9
 
#define I3C_STATIC_ADDR_WF_BIC   0xA
 
#define MCTP_EID_BMC   0x08
 

Functions

struct mctp_to_ipmi_header_req __attribute__ ((__packed__))
 
void plat_mctp_init (void)
 
void send_cmd_to_dev (struct k_timer *timer)
 
void send_cmd_to_dev_handler (struct k_work *work)
 
bool mctp_add_sel_to_ipmi (common_addsel_msg_t *sel_msg)
 
uint8_t plat_get_mctp_port_count ()
 
mctp_portplat_get_mctp_port (uint8_t index)
 
uint8_t plat_get_eid ()
 
mctpfind_mctp_by_bus (uint8_t bus)
 

Variables

uint8_t iana [IANA_LEN]
 
uint8_t netfn_lun
 
uint8_t ipmi_cmd
 
uint8_t completion_code
 
uint8_t ipmi_comp_code
 
struct mctp_to_ipmi_header_req header
 
struct ipmi_storage_add_sel_req req_data
 
struct ipmi_storage_add_sel_resp resp_data
 

Macro Definition Documentation

◆ I2C_ADDR_BIC

#define I2C_ADDR_BIC   0x40

◆ I2C_ADDR_BMC

#define I2C_ADDR_BMC   0x20

◆ I2C_BUS_BMC

#define I2C_BUS_BMC   0x02

◆ I3C_ADDR_HUB

#define I3C_ADDR_HUB   0x70

◆ I3C_BUS_BMC

#define I3C_BUS_BMC   0

◆ I3C_BUS_CONTROLLER

#define I3C_BUS_CONTROLLER   1

◆ I3C_BUS_HUB

#define I3C_BUS_HUB   1

◆ I3C_STATIC_ADDR_BIC

#define I3C_STATIC_ADDR_BIC   0x40

◆ I3C_STATIC_ADDR_BMC

#define I3C_STATIC_ADDR_BMC   0x20

◆ I3C_STATIC_ADDR_FF_BIC

#define I3C_STATIC_ADDR_FF_BIC   0x9

◆ I3C_STATIC_ADDR_WF_BIC

#define I3C_STATIC_ADDR_WF_BIC   0xA

◆ MCTP_EID_BMC

#define MCTP_EID_BMC   0x08

Function Documentation

◆ __attribute__()

struct mctp_to_ipmi_header_req __attribute__ ( (__packed__)  )

◆ find_mctp_by_bus()

mctp * find_mctp_by_bus ( uint8_t  bus)

◆ mctp_add_sel_to_ipmi()

bool mctp_add_sel_to_ipmi ( common_addsel_msg_t sel_msg)
Here is the call graph for this function:

◆ plat_get_eid()

uint8_t plat_get_eid ( )

◆ plat_get_mctp_port()

mctp_port * plat_get_mctp_port ( uint8_t  index)

◆ plat_get_mctp_port_count()

uint8_t plat_get_mctp_port_count ( )

◆ plat_mctp_init()

void plat_mctp_init ( void  )

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

BIC will not initialize mctp instance if CXL is not present

init mctp for bmc bus

◆ send_cmd_to_dev()

void send_cmd_to_dev ( struct k_timer *  timer)

◆ send_cmd_to_dev_handler()

void send_cmd_to_dev_handler ( struct k_work *  work)

Variable Documentation

◆ completion_code

uint8_t completion_code

◆ header

struct mctp_to_ipmi_header_resp header

◆ iana

uint8_t iana[IANA_LEN]

◆ ipmi_cmd

uint8_t ipmi_cmd

◆ ipmi_comp_code

uint8_t ipmi_comp_code

◆ netfn_lun

uint8_t netfn_lun

◆ req_data

struct ipmi_storage_add_sel_req req_data

◆ resp_data

struct ipmi_storage_add_sel_resp resp_data