]> git.zerfleddert.de Git - rsbs2/blame - bmc/ipmb.h
Completely working IPMB communication (power up/down, reset)
[rsbs2] / bmc / ipmb.h
CommitLineData
da7751cb
MG
1#define IPMB_APP_GET_DEVICE_ID 0x01
2#define IPMB_APP_GET_WATCHDOG_TIMER 0x25
3
4#define IPMB_CHASSIS_GET_STATUS 0x01
5#define IPMB_CHASSIS_CONTROL 0x02
6
7#define IPMB_SE_PLATFORM_EVENT 0x02
8
9#define IPMB_STORAGE_GET_SEL_INFO 0x40
10#define IPMB_STORAGE_GET_SEL_TIME 0x48
11
12#define IPMB_NETFN_CHASSIS 0x00
13#define IPMB_NETFN_BRIDGE 0x02
14#define IPMB_NETFN_SENSOR_EVENT 0x04
15#define IPMB_NETFN_APP 0x06
16#define IPMB_NETFN_FIRMWARE 0x08
17#define IPMB_NETFN_STORAGE 0x0a
18
19#define IPMB_CC_NORMALLY 0x00
20#define IPMB_CC_BUSY 0xc0
21#define IPMB_CC_INVALID 0xc1
22#define IPMB_CC_ERROR 0xff
23
24/* ipmb1010ltd.pdf page 27 (33) */
d5193055
MG
25struct ipmb_req {
26 uint8_t rsSA;
27 uint8_t netFn;
28 uint8_t rsLUN;
29 uint8_t rqSA;
30 uint8_t rqSEQ;
31 uint8_t rqLUN;
32 uint8_t cmd;
33 unsigned char *data;
34 uint8_t datalen;
35};
36
da7751cb
MG
37struct ipmb_resp {
38 uint8_t rqSA;
39 uint8_t netFn;
40 uint8_t rqLUN;
41 uint8_t rsSA;
42 uint8_t rqSEQ;
43 uint8_t rsLUN;
44 uint8_t cmd;
45 unsigned char *data;
46 uint8_t datalen;
47};
48
d5193055 49void decode_ipmb_pkt(unsigned char *buf, int len);
Impressum, Datenschutz