OPAL_IPMI_SEND¶
#define OPAL_IPMI_SEND 107
enum {
OPAL_IPMI_MSG_FORMAT_VERSION_1 = 1,
};
struct opal_ipmi_msg {
uint8_t version;
uint8_t netfn;
uint8_t cmd;
uint8_t data[];
};
int64_t opal_ipmi_send(uint64_t interface,
struct opal_ipmi_msg *opal_ipmi_msg, uint64_t msg_len);
OPAL_IPMI_SEND call will send an IPMI message to the service processor.
Parameters¶
interfaceinterfaceparameter is the value from the ipmi interface nodeibm,ipmi-interface-idopal_ipmi_msgopal_ipmi_msgis the pointer to astruct opal_ipmi_msg(see above)msg_lenipmi message request size
Return Values¶
- OPAL_SUCCESS
msgqueued successfully- OPAL_PARAMETER
invalid ipmi message request length
msg_len- OPAL_HARDWARE
backend support is not present as block transfer/service processor ipmi routines are not initialized which are used for communication
- OPAL_UNSUPPORTED
in-correct opal ipmi message format version
opal_ipmi_msg->version- OPAL_RESOURCE
insufficient resources to create
ipmi_msgstructure
OPAL_IPMI_RECV¶
#define OPAL_IPMI_RECV 108
enum {
OPAL_IPMI_MSG_FORMAT_VERSION_1 = 1,
};
struct opal_ipmi_msg {
uint8_t version;
uint8_t netfn;
uint8_t cmd;
uint8_t data[];
};
int64_t opal_ipmi_recv(uint64_t interface,
struct opal_ipmi_msg *opal_ipmi_msg, uint64_t *msg_len)
OPAL_IPMI_RECV call reads an ipmi message of type ipmi_msg from ipmi message
queue msgq into host OS structure opal_ipmi_msg.
Parameters¶
interfaceinterfaceparameter is the value from the ipmi interface nodeibm,ipmi-interface-idopal_ipmi_msgopal_ipmi_msgis the pointer to astruct opal_ipmi_msg(see above)msg_lenmsg_lenis the pointer to ipmi message response size
Return Values¶
- OPAL_SUCCESS
ipmi message dequeued from
msgqqueue and memory taken by it got released successfully- OPAL_EMPTY
msgqlist is empty- ref:OPAL_PARAMETER
invalid ipmi
interfacevalue- OPAL_UNSUPPORTED
incorrect opal ipmi message format version
opal_ipmi_msg->version