23namespace DRIVER_IPMB {
66 virtual string_t
read(int32_t index, uint32_t len, uint32_t timeout) = 0;
76 virtual int32_t
write(int32_t index,
const string_view_t &val, uint32_t timeout) = 0;
83 virtual void reset(int32_t index) = 0;
107 virtual void set_addr(int32_t index, uint32_t slave_addr) = 0;
124 virtual string_t
check_readable(uint32_t timeout,
const string_view_t &mask_read) = 0;
IPMB 驱动接口类
Definition ipmb.h:56
virtual uint32_t get_enable(int32_t index)=0
获取 IPMB 使能状态
virtual void set_addr(int32_t index, uint32_t slave_addr)=0
设置 IPMB 地址
virtual uint32_t get_addr(int32_t index)=0
设置 IPMB 地址
virtual uint8_t get_status(int32_t index)=0
获取 IPMB 状态
virtual string_t read(int32_t index, uint32_t len, uint32_t timeout)=0
读取 IPMB 数据
virtual void reset(int32_t index)=0
复位 IPMB
virtual void set_enable(int32_t index, uint32_t enable)=0
设置 IPMB 使能状态
virtual string_t check_readable(uint32_t timeout, const string_view_t &mask_read)=0
检查 IPMB 通道是否可读
virtual int32_t write(int32_t index, const string_view_t &val, uint32_t timeout)=0
写 IPMB
BCAL层驱动公共接口
Definition driver.h:41
IPMB 设备配置结构体
Definition ipmb.h:30
uint32_t speed
Definition ipmb.h:31
uint32_t slave_addr
Definition ipmb.h:32
IPMB 消息结构体 参见IPMI规范
Definition ipmb.h:40
uint8_t dst_lun
Definition ipmb.h:42
uint8_t cmd
Definition ipmb.h:48
uint8_t dst_netfn
Definition ipmb.h:43
uint8_t dst_addr
Definition ipmb.h:41