mirror of
https://github.com/ipmitool/ipmitool.git
synced 2025-07-06 12:43:36 +00:00
- addded fru control
- added amcportstate set - added clock commands - improved led command support
This commit is contained in:
@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
(C) Kontron
|
(C) Kontron
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _IPMI_PICMG_H_
|
#ifndef _IPMI_PICMG_H_
|
||||||
#define _IPMI_PICMG_H_
|
#define _IPMI_PICMG_H_
|
||||||
@ -9,71 +9,73 @@
|
|||||||
#include <ipmitool/ipmi.h>
|
#include <ipmitool/ipmi.h>
|
||||||
|
|
||||||
/* PICMG commands */
|
/* PICMG commands */
|
||||||
#define PICMG_GET_PICMG_PROPERTIES_CMD 0x00
|
#define PICMG_GET_PICMG_PROPERTIES_CMD 0x00
|
||||||
#define PICMG_GET_ADDRESS_INFO_CMD 0x01
|
#define PICMG_GET_ADDRESS_INFO_CMD 0x01
|
||||||
#define PICMG_GET_SHELF_ADDRESS_INFO_CMD 0x02
|
#define PICMG_GET_SHELF_ADDRESS_INFO_CMD 0x02
|
||||||
#define PICMG_SET_SHELF_ADDRESS_INFO_CMD 0x03
|
#define PICMG_SET_SHELF_ADDRESS_INFO_CMD 0x03
|
||||||
#define PICMG_FRU_CONTROL_CMD 0x04
|
#define PICMG_FRU_CONTROL_CMD 0x04
|
||||||
#define PICMG_GET_FRU_LED_PROPERTIES_CMD 0x05
|
#define PICMG_GET_FRU_LED_PROPERTIES_CMD 0x05
|
||||||
#define PICMG_GET_LED_COLOR_CAPABILITIES_CMD 0x06
|
#define PICMG_GET_LED_COLOR_CAPABILITIES_CMD 0x06
|
||||||
#define PICMG_SET_FRU_LED_STATE_CMD 0x07
|
#define PICMG_SET_FRU_LED_STATE_CMD 0x07
|
||||||
#define PICMG_GET_FRU_LED_STATE_CMD 0x08
|
#define PICMG_GET_FRU_LED_STATE_CMD 0x08
|
||||||
#define PICMG_SET_IPMB_CMD 0x09
|
#define PICMG_SET_IPMB_CMD 0x09
|
||||||
#define PICMG_SET_FRU_POLICY_CMD 0x0A
|
#define PICMG_SET_FRU_POLICY_CMD 0x0A
|
||||||
#define PICMG_GET_FRU_POLICY_CMD 0x0B
|
#define PICMG_GET_FRU_POLICY_CMD 0x0B
|
||||||
#define PICMG_FRU_ACTIVATION_CMD 0x0C
|
#define PICMG_FRU_ACTIVATION_CMD 0x0C
|
||||||
#define PICMG_GET_DEVICE_LOCATOR_RECORD_CMD 0x0D
|
#define PICMG_GET_DEVICE_LOCATOR_RECORD_CMD 0x0D
|
||||||
#define PICMG_SET_PORT_STATE_CMD 0x0E
|
#define PICMG_SET_PORT_STATE_CMD 0x0E
|
||||||
#define PICMG_GET_PORT_STATE_CMD 0x0F
|
#define PICMG_GET_PORT_STATE_CMD 0x0F
|
||||||
#define PICMG_COMPUTE_POWER_PROPERTIES_CMD 0x10
|
#define PICMG_COMPUTE_POWER_PROPERTIES_CMD 0x10
|
||||||
#define PICMG_SET_POWER_LEVEL_CMD 0x11
|
#define PICMG_SET_POWER_LEVEL_CMD 0x11
|
||||||
#define PICMG_GET_POWER_LEVEL_CMD 0x12
|
#define PICMG_GET_POWER_LEVEL_CMD 0x12
|
||||||
#define PICMG_RENEGOTIATE_POWER_CMD 0x13
|
#define PICMG_RENEGOTIATE_POWER_CMD 0x13
|
||||||
#define PICMG_GET_FAN_SPEED_PROPERTIES_CMD 0x14
|
#define PICMG_GET_FAN_SPEED_PROPERTIES_CMD 0x14
|
||||||
#define PICMG_SET_FAN_LEVEL_CMD 0x15
|
#define PICMG_SET_FAN_LEVEL_CMD 0x15
|
||||||
#define PICMG_GET_FAN_LEVEL_CMD 0x16
|
#define PICMG_GET_FAN_LEVEL_CMD 0x16
|
||||||
#define PICMG_BUSED_RESOURCE_CMD 0x17
|
#define PICMG_BUSED_RESOURCE_CMD 0x17
|
||||||
|
|
||||||
/* AMC.0 commands */
|
/* AMC.0 commands */
|
||||||
#define PICMG_AMC_SET_PORT_STATE_CMD 0x19
|
#define PICMG_AMC_SET_PORT_STATE_CMD 0x19
|
||||||
#define PICMG_AMC_GET_PORT_STATE_CMD 0x1A
|
#define PICMG_AMC_GET_PORT_STATE_CMD 0x1A
|
||||||
|
/* AMC.0 R2.0 commands */
|
||||||
|
#define PICMG_AMC_SET_CLK_STATE_CMD 0x2C
|
||||||
|
#define PICMG_AMC_GET_CLK_STATE_CMD 0x2D
|
||||||
|
|
||||||
/* Site Types */
|
/* Site Types */
|
||||||
#define PICMG_ATCA_BOARD 0x00
|
#define PICMG_ATCA_BOARD 0x00
|
||||||
#define PICMG_POWER_ENTRY 0x01
|
#define PICMG_POWER_ENTRY 0x01
|
||||||
#define PICMG_SHELF_FRU 0x02
|
#define PICMG_SHELF_FRU 0x02
|
||||||
#define PICMG_DEDICATED_SHMC 0x03
|
#define PICMG_DEDICATED_SHMC 0x03
|
||||||
#define PICMG_FAN_TRAY 0x04
|
#define PICMG_FAN_TRAY 0x04
|
||||||
#define PICMG_FAN_FILTER_TRAY 0x05
|
#define PICMG_FAN_FILTER_TRAY 0x05
|
||||||
#define PICMG_ALARM 0x06
|
#define PICMG_ALARM 0x06
|
||||||
#define PICMG_AMC 0x07
|
#define PICMG_AMC 0x07
|
||||||
#define PICMG_PMC 0x08
|
#define PICMG_PMC 0x08
|
||||||
#define PICMG_RTM 0x09
|
#define PICMG_RTM 0x09
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct picmg_set_fru_activation_cmd {
|
struct picmg_set_fru_activation_cmd {
|
||||||
unsigned char picmg_id; /* always 0*/
|
unsigned char picmg_id; /* always 0*/
|
||||||
unsigned char fru_id; /* threshold setting mask */
|
unsigned char fru_id; /* threshold setting mask */
|
||||||
unsigned char fru_state; /* fru activation/deactivation */
|
unsigned char fru_state; /* fru activation/deactivation */
|
||||||
} __attribute__ ((packed));
|
} __attribute__ ((packed));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* the LED color capabilities */
|
/* the LED color capabilities */
|
||||||
static const char* led_color_str[] __attribute__((unused)) = {
|
static const char* led_color_str[] __attribute__((unused)) = {
|
||||||
"reserved",
|
"reserved",
|
||||||
"BLUE",
|
"BLUE",
|
||||||
"RED",
|
"RED",
|
||||||
"GREEN",
|
"GREEN",
|
||||||
"AMBER",
|
"AMBER",
|
||||||
"ORANGE",
|
"ORANGE",
|
||||||
"WHITE",
|
"WHITE",
|
||||||
"reserved"
|
"reserved"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static const char* amc_link_type_str[] __attribute__((unused)) = {
|
static const char* amc_link_type_str[] __attribute__((unused)) = {
|
||||||
" FRU_PICMGEXT_AMC_LINK_TYPE_RESERVED",
|
" FRU_PICMGEXT_AMC_LINK_TYPE_RESERVED",
|
||||||
" FRU_PICMGEXT_AMC_LINK_TYPE_RESERVED1",
|
" FRU_PICMGEXT_AMC_LINK_TYPE_RESERVED1",
|
||||||
@ -85,6 +87,30 @@ static const char* amc_link_type_str[] __attribute__((unused)) = {
|
|||||||
" FRU_PICMGEXT_AMC_LINK_TYPE_STORAGE",
|
" FRU_PICMGEXT_AMC_LINK_TYPE_STORAGE",
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
struct sAmcPortState {
|
||||||
|
#ifndef WORDS_BIGENDIAN
|
||||||
|
unsigned short lane0 : 1;
|
||||||
|
unsigned short lane1 : 1;
|
||||||
|
unsigned short lane2 : 1;
|
||||||
|
unsigned short lane3 : 1;
|
||||||
|
unsigned short type : 8;
|
||||||
|
unsigned short type_ext : 4;
|
||||||
|
unsigned char group_id : 8;
|
||||||
|
#else
|
||||||
|
unsigned char group_id : 8;
|
||||||
|
unsigned short type_ext : 4;
|
||||||
|
unsigned short type : 8;
|
||||||
|
unsigned short lane3 : 1;
|
||||||
|
unsigned short lane2 : 1;
|
||||||
|
unsigned short lane1 : 1;
|
||||||
|
unsigned short lane0 : 1;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
unsigned char state;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
int ipmi_picmg_main (struct ipmi_intf * intf, int argc, char ** argv);
|
int ipmi_picmg_main (struct ipmi_intf * intf, int argc, char ** argv);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user