+#include <avr/pgmspace.h>
#include <string.h>
#include <stdio.h>
return -csum;
}
-void ipmb_send(struct ipmb_resp *resp, unsigned char *data, uint8_t datalen)
+void ipmb_send(struct ipmb_resp *resp, const unsigned char *data, uint8_t datalen)
{
unsigned char buf[24];
int len;
void ipmb_invalid(struct ipmb_resp *resp)
{
#if 1
- static unsigned char cmd_invalid[] = {IPMB_CC_INVALID};
+ const unsigned char cmd_invalid[] = {IPMB_CC_INVALID};
ipmb_send(resp, cmd_invalid, sizeof(cmd_invalid));
#endif
void ipmb_cmd(struct ipmb_req *req)
{
struct ipmb_resp resp;
- static unsigned char get_devid[] =
+ const unsigned char get_devid[] =
{IPMB_CC_NORMALLY, 0x42, 0x42, 0x01, 0x01, 0x51, 0xff /* Add. Dev. Supp */, 0x00, 0x00, 0x00, 0x00, 0x00 };
- static unsigned char get_wd_timer[] =
+ const unsigned char get_wd_timer[] =
{IPMB_CC_NORMALLY, 0x42, 0x00, 0x00, 0x04, 0xff, 0xff, 0xfe, 0xfe};
- static unsigned char cc_normal[] =
+ const unsigned char cc_normal[] =
{IPMB_CC_NORMALLY};
- static unsigned char sel_info[] =
+ const unsigned char sel_info[] =
{IPMB_CC_NORMALLY, 0x51, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00};
- static unsigned char sel_alloc_info[] =
+ const unsigned char sel_alloc_info[] =
{IPMB_CC_NORMALLY, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
- static unsigned char sel_entry[] =
+ const unsigned char sel_entry[] =
{IPMB_CC_ERROR};
- static unsigned char sel_timestamp[] =
+ const unsigned char sel_timestamp[] =
{IPMB_CC_NORMALLY, 0x00, 0x00, 0x00, 0x00};
- static unsigned char chassis_status[] =
+ const unsigned char chassis_status[] =
{IPMB_CC_NORMALLY, 0x60, 0x10, 0x00, 0x00};
- static unsigned char reserve_sdr[] =
+ const unsigned char reserve_sdr[] =
{IPMB_CC_NORMALLY, 0x00, 0x00};
- static unsigned char get_sdr[] =
+ const unsigned char get_sdr[] =
{IPMB_CC_NORMALLY, 0xff, 0xff};
resp.rqSA = req->rqSA;