openMMC
Open Source Modular MMC for AMCs
Loading...
Searching...
No Matches
hpm.c File Reference
#include "ipmi.h"
#include "hpm.h"
#include "utils.h"
#include "string.h"
#include "led.h"
#include "payload.h"
#include "port.h"
Include dependency graph for hpm.c:

Functions

void hpm_init (void)
 
 IPMI_HANDLER (ipmi_picmg_get_upgrade_capabilities, NETFN_GRPEXT, IPMI_PICMG_CMD_HPM_GET_UPGRADE_CAPABILITIES, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_picmg_get_component_properties, NETFN_GRPEXT, IPMI_PICMG_CMD_HPM_GET_COMPONENT_PROPERTIES, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_picmg_initiate_upgrade_action, NETFN_GRPEXT, IPMI_PICMG_CMD_HPM_INITIATE_UPGRADE_ACTION, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_picmg_get_upgrade_status, NETFN_GRPEXT, IPMI_PICMG_CMD_HPM_GET_UPGRADE_STATUS, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_picmg_abort_firmware_upgrade, NETFN_GRPEXT, IPMI_PICMG_CMD_HPM_ABORT_FIRMWARE_UPGRADE, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_picmg_upload_firmware_block, NETFN_GRPEXT, IPMI_PICMG_CMD_HPM_UPLOAD_FIRMWARE_BLOCK, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_picmg_finish_firmware_upload, NETFN_GRPEXT, IPMI_PICMG_CMD_HPM_FINISH_FIRMWARE_UPLOAD, ipmi_msg *req, ipmi_msg *rsp)
 
 IPMI_HANDLER (ipmi_picmg_activate_firmware, NETFN_GRPEXT, IPMI_PICMG_CMD_HPM_ACTIVATE_FIRMWARE, ipmi_msg *req, ipmi_msg *rsp)
 

Variables

t_ipmc_capabilities ipmc_cap
 
t_component hpm_components [HPM_MAX_COMPONENTS]
 

Function Documentation

◆ hpm_init()

void hpm_init ( void )

◆ IPMI_HANDLER() [1/8]

IPMI_HANDLER ( ipmi_picmg_abort_firmware_upgrade ,
NETFN_GRPEXT ,
IPMI_PICMG_CMD_HPM_ABORT_FIRMWARE_UPGRADE ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [2/8]

IPMI_HANDLER ( ipmi_picmg_activate_firmware ,
NETFN_GRPEXT ,
IPMI_PICMG_CMD_HPM_ACTIVATE_FIRMWARE ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [3/8]

IPMI_HANDLER ( ipmi_picmg_finish_firmware_upload ,
NETFN_GRPEXT ,
IPMI_PICMG_CMD_HPM_FINISH_FIRMWARE_UPLOAD ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [4/8]

IPMI_HANDLER ( ipmi_picmg_get_component_properties ,
NETFN_GRPEXT ,
IPMI_PICMG_CMD_HPM_GET_COMPONENT_PROPERTIES ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [5/8]

IPMI_HANDLER ( ipmi_picmg_get_upgrade_capabilities ,
NETFN_GRPEXT ,
IPMI_PICMG_CMD_HPM_GET_UPGRADE_CAPABILITIES ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [6/8]

IPMI_HANDLER ( ipmi_picmg_get_upgrade_status ,
NETFN_GRPEXT ,
IPMI_PICMG_CMD_HPM_GET_UPGRADE_STATUS ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [7/8]

IPMI_HANDLER ( ipmi_picmg_initiate_upgrade_action ,
NETFN_GRPEXT ,
IPMI_PICMG_CMD_HPM_INITIATE_UPGRADE_ACTION ,
ipmi_msg * req,
ipmi_msg * rsp )

◆ IPMI_HANDLER() [8/8]

IPMI_HANDLER ( ipmi_picmg_upload_firmware_block ,
NETFN_GRPEXT ,
IPMI_PICMG_CMD_HPM_UPLOAD_FIRMWARE_BLOCK ,
ipmi_msg * req,
ipmi_msg * rsp )

Variable Documentation

◆ hpm_components

◆ ipmc_cap

Initial value:
= {
.flags = { .upgrade_undesirable = 0,
.automatic_rollback_overridden = 0,
.ipmc_degraded_in_update = 0,
.deferred_activation = 1,
.services_affected = 1,
.manual_rollback = 1,
.automatic_rollback = 1,
.self_test = 1
}
}