11 #define IPMI_NETFN_OEM 0x30
12 #define IPMI_LUN0_AC_SET_BIOS_VER 0x100
13 #define IPMI_LUN0_AC_SET_BIOS_DATE 0x101
14 #define IPMI_LUN0_SET_BIOS_STRING 0xac
23 const char *coreboot_ver = COREBOOT_VERSION;
30 for (i = 0; i < 15; i++) {
31 if (coreboot_ver[i] ==
'-')
33 bios_ver.
str[i] = coreboot_ver[i];
39 (
const unsigned char *) &bios_ver,
sizeof(bios_ver),
40 (
unsigned char *) &rsp,
sizeof(rsp));
42 printk(
BIOS_ERR,
"BMC_IPMI: %s command failed (ret=%d resp=0x%x)\n",
58 (
const unsigned char *) &bios_ver,
sizeof(bios_ver),
59 (
unsigned char *) &rsp,
sizeof(rsp));
61 printk(
BIOS_ERR,
"BMC_IPMI: %s command failed (ret=%d resp=0x%x)\n",
#define printk(level,...)
int ipmi_kcs_message(int port, int netfn, int lun, int cmd, const unsigned char *inmsg, int inlen, unsigned char *outmsg, int outlen)
#define BIOS_ERR
BIOS_ERR - System in incomplete state.
char * strncpy(char *to, const char *from, int count)
#define IPMI_LUN0_AC_SET_BIOS_VER
static void set_coreboot_date(const uint16_t kcs_port)
void supermicro_ipmi_oem(const uint16_t kcs_port)
struct ipmi_oem_set_bios_str __packed
#define IPMI_LUN0_AC_SET_BIOS_DATE
static void set_coreboot_ver(const uint16_t kcs_port)
#define IPMI_LUN0_SET_BIOS_STRING