/***************************************************************************/ /** **/ /** HPE CONFIDENTIAL. This software is confidential proprietary software **/ /** licensed by Hewlett-Packard Enterprise Development, LP, and is not **/ /** authorized to be used, duplicated OR disclosed to anyone without the **/ /** prior written permission of HPE. **/ /** © 2023 Copyright Hewlett-Packard Enterprise Development, LP **/ /** **/ /** VMS SOFTWARE, INC. CONFIDENTIAL. This software is confidential **/ /** proprietary software licensed by VMS Software, Inc., and is not **/ /** authorized to be used, duplicated or disclosed to anyone without **/ /** the prior written permission of VMS Software, Inc. **/ /** © 2023 Copyright VMS Software, Inc. **/ /** **/ /***************************************************************************/ /********************************************************************************************************************************/ /* Created: 9-Nov-2023 12:06:53 by OpenVMS SDL V3.7 */ /* Source: 22-APR-2010 18:33:16 $1$DGA8345:[LIB_H.SRC]IPMIDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $IPMIDEF ***/ #ifndef __IPMIDEF_LOADED #define __IPMIDEF_LOADED 1 #pragma __nostandard /* This file uses non-ANSI-Standard features */ #pragma __member_alignment __save #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __save /* Save the previously-defined required ptr size */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif #ifdef __cplusplus extern "C" { #define __unknown_params ... #define __optional_params ... #else #define __unknown_params #define __optional_params ... #endif #ifndef __struct #if !defined(__VAXC) #define __struct struct #else #define __struct variant_struct #endif #endif #ifndef __union #if !defined(__VAXC) #define __union union #else #define __union variant_union #endif #endif /* */ /* IPMI Max Buffer size */ #define IPMI$K_MAX_BUFSIZE 512 /* For both request and response */ /* */ /* IMB request flags */ #define IPMI$K_NO_IMB_RESPONSE 1 /* don't wait for IMB response */ /* */ /* + */ /* This structure represents a IMB* request directed to the IPMI driver */ /* The first struct covers the first common part of the request, some IPMI */ /* commands don't even have any request data. */ /* - */ #define IPMI$K_MIN_REQSIZE 13 /* Request without data */ #define IPMI$SACPIPWR_REQ$K_DATLEN 2 /* data length of Set ACPI Power state */ #define IPMI$SACPIPWR_REQ$K_LENGTH 15 /* total length of Set ACPI Power state struct */ #define IPMI$CH_CTRL_REQ$M_CTRL 0xF #define IPMI$CH_CTRL_REQ$K_DATLEN 1 /* data length of Chassis control */ #define IPMI$CH_CTRL_REQ$K_LENGTH 14 /* total length of Chassis control struct */ #define IPMI$CH_ID_REQ$M_FORCE 0x1 #define IPMI$CH_ID_REQ$K_DATLEN 2 /* data length of Chassis Indentify */ #define IPMI$CH_ID_REQ$K_LENGTH 15 /* total length of Chassis Indentify struct */ #define IPMI$S_EV_R_REQ$M_LUN 0x3 #define IPMI$S_EV_R_REQ$K_DATLEN 2 /* data length of Set event receiver */ #define IPMI$S_EV_R_REQ$K_LENGTH 15 /* total length of Set event receiver struct */ #define IPMI$P_EV_REQ$M_EVENT_TYPE 0x7F #define IPMI$P_EV_REQ$M_EVENT_DIR 0x80 #define IPMI$P_EV_REQ$K_DATLEN 8 /* data length of Platform event */ #define IPMI$P_EV_REQ$K_LENGTH 21 /* total length of Platform event struct */ #define IPMI$GD_SDR_I_REQ$M_COUNT 0x1 #define IPMI$GD_SDR_I_REQ$K_DATLEN 1 /* data length of Get Device SDR info */ #define IPMI$GD_SDR_I_REQ$K_LENGTH 14 /* total length of Get Device SDR info struct */ #define IPMI$G_SEN_RF_REQ$K_DATLEN 2 /* data length of Get sensor reading factors */ #define IPMI$G_SEN_RF_REQ$K_LENGTH 15 /* total length of Get sensor reading factors struct */ #define IPMI$S_SEN_H_REQ$K_DATLEN 4 /* data length of Set sensor hysteresis */ #define IPMI$S_SEN_H_REQ$K_LENGTH 17 /* total length of Set sensor hysteresis struct */ #define IPMI$G_SEN_H_REQ$K_DATLEN 2 /* data length of Get sensor hysteresis */ #define IPMI$G_SEN_H_REQ$K_LENGTH 15 /* total length of Get sensor hysteresis struct */ #define IPMI$S_SEN_TH_REQ$M_L_NC_TF 0x1 #define IPMI$S_SEN_TH_REQ$M_L_C_TF 0x2 #define IPMI$S_SEN_TH_REQ$M_L_NR_TF 0x4 #define IPMI$S_SEN_TH_REQ$M_U_NC_TF 0x8 #define IPMI$S_SEN_TH_REQ$M_U_C_TF 0x10 #define IPMI$S_SEN_TH_REQ$M_U_NR_TF 0x20 #define IPMI$S_SEN_TH_REQ$K_DATLEN 8 /* data length of Set sensor threshold */ #define IPMI$S_SEN_TH_REQ$K_LENGTH 21 /* total length of Set sensor threshold struct */ #define IPMI$G_SEN_TH_REQ$K_DATLEN 1 /* data length of Get sensor threshold */ #define IPMI$G_SEN_TH_REQ$K_LENGTH 14 /* total length of Get sensor threshold struct */ #define IPMI$S_SEN_EE_REQ$M_RSVD 0xF #define IPMI$S_SEN_EE_REQ$M_SEL 0x30 #define IPMI$S_SEN_EE_REQ$M_DIS_SCAN 0x40 #define IPMI$S_SEN_EE_REQ$M_DIS_ALL 0x80 #define IPMI$S_SEN_EE_REQ$K_DATLEN 6 /* data length of Set sensor event enable */ #define IPMI$S_SEN_EE_REQ$K_LENGTH 19 /* total length of Set sensor event enable struct */ #define IPMI$G_SEN_EE_REQ$K_DATLEN 1 /* data length of Get sensor event enable */ #define IPMI$G_SEN_EE_REQ$K_LENGTH 14 /* total length of Get sensor event enable struct */ #define IPMI$S_SEN_E_REQ$M_RSVD 0x7F #define IPMI$S_SEN_E_REQ$M_DIS_ALL 0x80 #define IPMI$S_SEN_E_REQ$K_DATLEN 6 /* data length of Re-arm sensor events */ #define IPMI$S_SEN_E_REQ$K_LENGTH 19 /* total length of Re-arm sensor events struct */ #define IPMI$G_SEN_ES_REQ$K_DATLEN 1 /* data length of Get sensor event status */ #define IPMI$G_SEN_ES_REQ$K_LENGTH 14 /* total length of Get sensor event status struct */ #define IPMI$G_SEN_R_REQ$K_DATLEN 1 /* data length of Get sensor reading */ #define IPMI$G_SEN_R_REQ$K_LENGTH 14 /* total length of Get sensor reading struct */ #define IPMI$S_SEN_TY_REQ$M_EVENT_TYPE 0x7F #define IPMI$S_SEN_TY_REQ$K_DATLEN 3 /* data length of Set sensor type */ #define IPMI$S_SEN_TY_REQ$K_LENGTH 16 /* total length of Set sensor type struct */ #define IPMI$G_SEN_TY_REQ$K_DATLEN 1 /* data length of Get sensor type */ #define IPMI$G_SEN_TY_REQ$K_LENGTH 14 /* total length of Get sensor type struct */ #define IPMI$GFRU_I_REQ$K_DATLEN 1 /* data length of Get FRU Inventory area */ #define IPMI$GFRU_I_REQ$K_LENGTH 14 /* total length of Get FRU Inventory area struct */ #define IPMI$RFRU_REQ$K_DATLEN 4 /* data length of Read FRU data */ #define IPMI$RFRU_REQ$K_LENGTH 17 /* total lenght of Read FRU data struct */ #define IPMI$GSDR_REQ$K_DATLEN 6 /* data length of Get SDR entry */ #define IPMI$GSDR_REQ$K_LENGTH 19 /* total length of Get SDR entry struct */ #define IPMI$GSEL_REQ$K_DATLEN 6 /* data length of Get SEL entry */ #define IPMI$GSEL_REQ$K_LENGTH 19 /* total length of Get SEL entry struct */ #define IPMI$ASEL_REQ$K_DATLEN 16 /* data length of Add SEL entry */ #define IPMI$ASEL_REQ$K_LENGTH 29 /* total length of Add SEL entry struct */ #define IPMI$DSEL_REQ$K_DATLEN 4 /* data length of Delete SEL entry request */ #define IPMI$DSEL_REQ$K_LENGTH 17 /* total length of Delete SEL entry struct */ #define IPMI$CSEL_REQ$K_DATLEN 6 /* data length of Clear SEL request */ #define IPMI$CSEL_REQ$K_LENGTH 19 /* total length of Clear SEL struct */ #define IPMI$SSEL_T_REQ$K_DATLEN 4 /* data length of Set SEL Time request */ #define IPMI$SSEL_T_REQ$K_LENGTH 17 /* total length of Set SEL Time struct */ #define IPMI$AFPL_REQ$K_DATLEN 16 /* data length of Add FPL entry request */ #define IPMI$AFPL_REQ$K_LENGTH 29 /* total length of Add FPL entry struct */ #define IPMI$GTOKEN_I_REQ$K_DATLEN 2 /* data length of Get Token Info request */ #define IPMI$GTOKEN_I_REQ$K_LENGTH 15 /* total length of Get Token Info struct */ #define IPMI$RTOKEN_REQ$K_DATLEN 2 /* data length of Read Token request */ #define IPMI$RTOKEN_REQ$K_LENGTH 15 /* total length of Read Token struct */ #define IPMI$P_RTOKEN_REQ$K_DATLEN 5 /* data length of Partial Read Token request */ #define IPMI$P_RTOKEN_REQ$K_LENGTH 18 /* total length of Partial Read Token struct */ #define IPMI$L_PROP_REQ$K_DATLEN 130 /* data length of Lock Property request */ #define IPMI$L_PROP_REQ$K_LENGTH 143 /* total length of Lock Property struct */ #define IPMI$U_PROP_REQ$K_DATLEN 2 /* data length of UnLock Property request */ #define IPMI$U_PROP_REQ$K_LENGTH 15 /* total length of UnLock Property struct */ #define IPMI$G_PROP_REQ$K_DATLEN 11 /* data length of Get Property request */ #define IPMI$G_PROP_REQ$K_LENGTH 24 /* total length of Get Property struct */ typedef struct _imbrequest { __union { __struct { unsigned int ipmi$req$l_flags; /* request flags */ unsigned int ipmi$req$l_timeout; /* in uSec units ignored... */ unsigned char ipmi$req$b_rssa; /* IMB address of responder */ unsigned char ipmi$req$b_cmd; /* IMB command */ unsigned char ipmi$req$b_netfn; /* Network Function code for command */ unsigned char ipmi$req$b_rslun; /* Logical unit on responder */ unsigned char ipmi$req$b_datlen; /* Length of request data */ unsigned char ipmi$req$b_data [499]; /* Request data */ } ipmi$r_req; /* */ /* IPMI Set ACPI Power state command */ /* */ __struct { char ipmi$sacpipwr_req$b_fill_1 [13]; unsigned char ipmi$sacpipwr_req$b_sys_pwr_st; /* system power state */ unsigned char ipmi$sacpipwr_req$b_dev_pwr_st; /* device power state */ } ipmi$r_s_acpipwr_req; /* */ /* IPMI Chassis control command */ /* */ __struct { char ipmi$ch_ctrl_req$b_fill_1 [13]; __union { unsigned char ipmi$ch_ctrl_req$b_b2; __struct { unsigned ipmi$ch_ctrl_req$v_ctrl : 4; /* Chassis control values */ unsigned ipmi$ch_ctrl_req$v_fill_18_ : 4; } ipmi$ch_ctrl_req$r_fill_1_; } ipmi$ch_ctrl_req$r_fill_0_; } ipmi$r_ch_ctrl_req; /* */ /* IPMI Chassis ID command */ /* */ __struct { char ipmi$ch_id_req$b_fill_1 [13]; unsigned char ipmi$ch_id_req$b_interval; /* Identify Interval in seconds */ __union { unsigned char ipmi$ch_id_req$b_flags; __struct { unsigned ipmi$ch_id_req$v_force : 1; /* Force the Identify ON forever */ unsigned ipmi$ch_id_req$v_fill_19_ : 7; } ipmi$ch_id_req$r_fill_3_; } ipmi$ch_id_req$r_fill_2_; } ipmi$r_ch_id_req; /* */ /* IPMI Set event receiver command */ /* */ __struct { char ipmi$s_ev_r_req$b_fill_1 [13]; unsigned char ipmi$s_ev_r_req$b_slave_adr; /* Event receiver slave address */ __union { unsigned char ipmi$s_ev_r_req$b_b2; __struct { unsigned ipmi$s_ev_r_req$v_lun : 2; /* LUN of event receiver */ unsigned ipmi$s_ev_r_req$v_fill_20_ : 6; } ipmi$s_ev_r_req$r_fill_5_; } ipmi$s_ev_r_req$r_fill_4_; } ipmi$r_s_evr_req; /* */ /* IPMI Platform event or event messenger command (System interface format) */ /* */ __struct { char ipmi$p_ev_req$b_fill_1 [13]; unsigned char ipmi$p_ev_req$b_generate_id; /* Generator ID */ unsigned char ipmi$p_ev_req$b_rev; /* Event message format rev */ unsigned char ipmi$p_ev_req$b_sensor_type; /* Sensor Type */ unsigned char ipmi$p_ev_req$b_sensor_num; /* Sensor number */ __union { unsigned char ipmi$p_ev_req$b_ev_t_d; __struct { unsigned ipmi$p_ev_req$v_event_type : 7; /* Event type */ unsigned ipmi$p_ev_req$v_event_dir : 1; /* Event direction */ } ipmi$p_ev_req$r_fill_7_; } ipmi$p_ev_req$r_fill_6_; unsigned char ipmi$p_ev_req$b_data1; /* Event data 1 */ unsigned char ipmi$p_ev_req$b_data2; /* Event data 2 */ unsigned char ipmi$p_ev_req$b_data3; /* Event data 3 */ } ipmi$r_p_ev_req; /* */ /* IPMI Get Device SDR info command */ /* */ __struct { char ipmi$gd_sdr_i_req$b_fill_1 [13]; __union { unsigned char ipmi$gd_sdr_i_req$b_operation; __struct { unsigned ipmi$gd_sdr_i_req$v_count : 1; /* Get SDR or Sensor count */ unsigned ipmi$gd_sdr_i_req$v_fill_21_ : 7; } ipmi$gd_sdr_i_req$r_fill_9_; } ipmi$gd_sdr_i_req$r_fill_8_; } ipmi$r_gdsdr_i_req; /* */ /* IPMI Get sensor reading factors command */ /* */ __struct { char ipmi$g_sen_rf_req$b_fill_1 [13]; unsigned char ipmi$g_sen_rf_req$b_sensor; /* Sensor number */ unsigned char ipmi$g_sen_rf_req$b_read_byte; /* Reading byte */ } ipmi$r_g_srf_req; /* */ /* IPMI Set sensor hysteresis command */ /* */ __struct { char ipmi$s_sen_h_req$b_fill_1 [13]; unsigned char ipmi$s_sen_h_req$b_sensor; /* Sensor number */ unsigned char ipmi$s_sen_h_req$b_mask; /* Future hystereris mask. Write as 'FF' */ unsigned char ipmi$s_sen_h_req$b_pos; /* Positive-going hystereris value */ unsigned char ipmi$s_sen_h_req$b_neg; /* Negative-going hystereris value */ } ipmi$r_s_sh_req; /* */ /* IPMI Get sensor hysteresis command */ /* */ __struct { char ipmi$g_sen_h_req$b_fill_1 [13]; unsigned char ipmi$g_sen_h_req$b_sensor; /* Sensor number */ unsigned char ipmi$g_sen_h_req$b_mask; /* Future hystereris mask. Write as 'FF' */ } ipmi$r_g_sh_req; /* */ /* IPMI Set sensor threshold command */ /* */ __struct { char ipmi$s_sen_th_req$b_fill_1 [13]; unsigned char ipmi$s_sen_th_req$b_sensor; /* Sensor number */ __union { unsigned char ipmi$s_sen_th_req$b_b2; __struct { unsigned ipmi$s_sen_th_req$v_l_nc_tf : 1; /* 1 = set lower non-critical threshold */ unsigned ipmi$s_sen_th_req$v_l_c_tf : 1; /* 1 = set lower critical threshold */ unsigned ipmi$s_sen_th_req$v_l_nr_tf : 1; /* 1 = set lower non-recoverable threshold */ unsigned ipmi$s_sen_th_req$v_u_nc_tf : 1; /* 1 = set upper non-critical threshold */ unsigned ipmi$s_sen_th_req$v_u_c_tf : 1; /* 1 = set upper critical threshold */ unsigned ipmi$s_sen_th_req$v_u_nr_tf : 1; /* 1 = set upper non-recoverable threshold */ unsigned ipmi$s_sen_th_req$v_fill_22_ : 2; } ipmi$s_sen_th_req$r_fill_11_; } ipmi$s_sen_th_req$r_fill_10_; unsigned char ipmi$s_sen_th_req$b_l_nc_thres; /* Lower non-critical threshold */ unsigned char ipmi$s_sen_th_req$b_l_c_thres; /* Lower critical threshold */ unsigned char ipmi$s_sen_th_req$b_l_nr_thres; /* Lower non-recoverable threshold */ unsigned char ipmi$s_sen_th_req$b_u_nc_thres; /* Upper non-critical threshold */ unsigned char ipmi$s_sen_th_req$b_u_c_thres; /* Upper critical threshold */ unsigned char ipmi$s_sen_th_req$b_u_nr_thres; /* Upper non-recoverable threshold */ } ipmi$r_s_sth_req; /* */ /* IPMI Get sensor threshold command */ /* */ __struct { char ipmi$g_sen_th_req$b_fill_1 [13]; unsigned char ipmi$g_sen_th_req$b_sensor; /* Sensor number */ } ipmi$r_g_sth_req; /* */ /* IPMI Set sensor event enable command */ /* */ __struct { char ipmi$s_sen_ee_req$b_fill_1 [13]; unsigned char ipmi$s_sen_ee_req$b_sensor; /* Sensor number */ __union { unsigned char ipmi$s_sen_ee_req$b_b2; __struct { unsigned ipmi$s_sen_ee_req$v_rsvd : 4; /* Reserved */ unsigned ipmi$s_sen_ee_req$v_sel : 2; /* enable or disable selected event messages */ unsigned ipmi$s_sen_ee_req$v_dis_scan : 1; /* 0 = disable scanning on this sensor */ unsigned ipmi$s_sen_ee_req$v_dis_all : 1; /* 0 = disable all event messages */ } ipmi$s_sen_ee_req$r_fill_13_; } ipmi$s_sen_ee_req$r_fill_12_; unsigned short int ipmi$s_sen_ee_req$w_assert; /* Selected assertion events */ unsigned short int ipmi$s_sen_ee_req$w_deassert; /* Selected deassertion events */ } ipmi$r_s_see_req; /* */ /* IPMI Get sensor event enable command */ /* */ __struct { char ipmi$g_sen_ee_req$b_fill_1 [13]; unsigned char ipmi$g_sen_ee_req$b_sensor; /* Sensor number */ } ipmi$r_g_see_req; /* */ /* IPMI Re-arm sensor events command */ /* */ __struct { char ipmi$s_sen_e_req$b_fill_1 [13]; unsigned char ipmi$s_sen_e_req$b_sensor; /* Sensor number */ __union { unsigned char ipmi$s_sen_e_req$b_b2; __struct { unsigned ipmi$s_sen_e_req$v_rsvd : 7; /* Reserved */ unsigned ipmi$s_sen_e_req$v_dis_all : 1; /* 0 = re-arm all event messages */ } ipmi$s_sen_e_req$r_fill_15_; } ipmi$s_sen_e_req$r_fill_14_; unsigned short int ipmi$s_sen_e_req$w_assert; /* re-arm selected assertion events */ unsigned short int ipmi$s_sen_e_req$w_deassert; /* re-arm selected deassertion events */ } ipmi$r_r_se_req; /* */ /* IPMI Get sensor event status command */ /* */ __struct { char ipmi$g_sen_es_req$b_fill_1 [13]; unsigned char ipmi$g_sen_es_req$b_sensor; /* Sensor number */ } ipmi$r_g_ses_req; /* */ /* IPMI Get sensor reading command */ /* */ __struct { char ipmi$g_sen_r_req$b_fill_1 [13]; unsigned char ipmi$g_sen_r_req$b_sensor; /* Sensor number */ } ipmi$r_g_sr_req; /* */ /* IPMI Set sensor type command */ /* */ __struct { char ipmi$s_sen_ty_req$b_fill_1 [13]; unsigned char ipmi$s_sen_ty_req$b_sensor; /* Sensor number */ unsigned char ipmi$s_sen_ty_req$b_sensor_type; /* Sensor type code */ __union { unsigned char ipmi$s_sen_ty_req$b_b3; __struct { unsigned ipmi$s_sen_ty_req$v_event_type : 7; /* Event/reading type code */ unsigned ipmi$s_sen_ty_req$v_fill_23_ : 1; } ipmi$s_sen_ty_req$r_fill_17_; } ipmi$s_sen_ty_req$r_fill_16_; } ipmi$r_s_sty_req; /* */ /* IPMI Get sensor type command */ /* */ __struct { char ipmi$g_sen_ty_req$b_fill_1 [13]; unsigned char ipmi$g_sen_ty_req$b_sensor; /* Sensor number */ } ipmi$r_g_sty_req; /* */ /* IPMI Get FRU Inventory Area command */ /* */ __struct { char ipmi$gfru_i_req$b_fill_1 [13]; unsigned char ipmi$gfru_i_req$b_fru_id; /* Fru Device id */ } ipmi$r_gfru_i_req; /* */ /* IPMI Read FRU data command */ /* */ __struct { char ipmi$rfru_req$b_fill_1 [13]; unsigned char ipmi$rfru_req$b_fru_id; /* Fru Device id */ unsigned short int ipmi$rfru_req$w_offset; /* Offset into the FRU data */ unsigned char ipmi$rfru_req$b_bcnt; /* read bytecount */ } ipmi$r_rfru_req; /* */ /* IPMI Get SDR entry command */ /* */ __struct { char ipmi$gsdr_req$b_fill_1 [13]; unsigned short int ipmi$gsdr_req$w_res_id; /* Reservation id */ unsigned short int ipmi$gsdr_req$w_rec_id; /* Record id */ unsigned char ipmi$gsdr_req$b_offset; /* Offset into the record */ unsigned char ipmi$gsdr_req$b_bcnt; /* read bytecount */ } ipmi$r_gsdr_req; /* */ /* IPMI Get SEL entry command */ /* */ __struct { char ipmi$gsel_req$b_fill_1 [13]; unsigned short int ipmi$gsel_req$w_res_id; /* Reservation id */ unsigned short int ipmi$gsel_req$w_rec_id; /* Record id 0000 first - ffff last */ unsigned char ipmi$gsel_req$b_offset; /* Offset into the record */ unsigned char ipmi$gsel_req$b_bcnt; /* read bytecount */ } ipmi$r_gsel_req; /* */ /* IPMI ADD SEL entry command */ /* */ __struct { char ipmi$asel_req$b_fill_1 [13]; unsigned char ipmi$asel_req$b_data [16]; /* Add SEL Record Data */ } ipmi$r_asel_req; /* */ /* IPMI Delete SEL entry command */ /* */ __struct { char ipmi$dsel_req$b_fill_1 [13]; unsigned short int ipmi$dsel_req$w_res_id; /* Reservation id */ unsigned short int ipmi$dsel_req$w_rec_id; /* Record id to delete 0000 first - ffff last */ } ipmi$r_dsel_req; /* */ /* IPMI Clear SEL command */ /* */ __struct { char ipmi$csel_req$b_fill_1 [13]; unsigned short int ipmi$csel_req$w_res_id; /* Reservation id */ unsigned char ipmi$csel_req$b_c; /* 'C' */ unsigned char ipmi$csel_req$b_l; /* 'L' */ unsigned char ipmi$csel_req$b_r; /* 'R' */ unsigned char ipmi$csel_req$b_cmd; /* Command: 'AA' initiate erase, '00' erase status */ } ipmi$r_csel_req; /* */ /* IPMI Set SEL Time command */ /* */ __struct { char ipmi$ssel_t_req$b_fill_1 [13]; unsigned int ipmi$ssel_t_req$l_time; /* Time value to set it with */ } ipmi$r_ssel_t_req; /* */ /* IPMI Add FPL entry command */ /* */ __struct { char ipmi$afpl_req$b_fill_1 [13]; unsigned char ipmi$afpl_req$b_data [16]; /* Add FPL Record Data */ } ipmi$r_afpl_req; /* */ /* IPMI Get Token Info command */ /* */ __struct { char ipmi$gtoken_i_req$b_fill_1 [13]; unsigned short int ipmi$gtoken_i_req$w_token_id; /* Token id */ } ipmi$r_gtkn_i_req; /* */ /* IPMI Read Token command */ /* */ __struct { char ipmi$rtoken_req$b_fill_1 [13]; unsigned short int ipmi$rtoken_req$w_token_id; /* Token id */ } ipmi$r_rtkn_req; /* */ /* IPMI Partial Read Token command */ /* */ __struct { char ipmi$p_rtoken_req$b_fill_1 [13]; unsigned short int ipmi$p_rtoken_req$w_token_id; /* Token id */ unsigned short int ipmi$p_rtoken_req$w_offset; /* Offset into the token */ unsigned char ipmi$p_rtoken_req$b_bcnt; /* read bytecount */ } ipmi$r_prtkn_req; /* */ /* IPMI Lock Property command */ /* */ __struct { char ipmi$l_prop_req$b_fill_1 [13]; unsigned char ipmi$l_prop_req$b_id; /* Property id to lock */ unsigned char ipmi$l_prop_req$b_sw_id [128]; /* Software ID of requester. */ unsigned char ipmi$l_prop_req$b_type; /* Type of lock to acquire */ } ipmi$r_lprop_req; /* */ /* IPMI UnLock Property command */ /* */ __struct { char ipmi$u_prop_req$b_fill_1 [13]; unsigned char ipmi$u_prop_req$b_id; /* Property id to unlock */ unsigned char ipmi$u_prop_req$b_type; /* Type of lock to unlock */ } ipmi$r_uprop_req; /* */ /* IPMI Get Property command */ /* */ __struct { char ipmi$g_prop_req$b_fill_1 [13]; unsigned int ipmi$g_prop_req$l_lock; /* Reservation Lock number for this Property */ unsigned char ipmi$g_prop_req$b_id; /* Property id */ unsigned int ipmi$g_prop_req$l_offset; /* Offset into the Property */ unsigned short int ipmi$g_prop_req$w_bcnt; /* get bytecount */ } ipmi$r_gprop_req; } ipmi$r_requ; } IMBREQUEST; #if !defined(__VAXC) #define ipmi$req$l_flags ipmi$r_requ.ipmi$r_req.ipmi$req$l_flags #define ipmi$req$l_timeout ipmi$r_requ.ipmi$r_req.ipmi$req$l_timeout #define ipmi$req$b_rssa ipmi$r_requ.ipmi$r_req.ipmi$req$b_rssa #define ipmi$req$b_cmd ipmi$r_requ.ipmi$r_req.ipmi$req$b_cmd #define ipmi$req$b_netfn ipmi$r_requ.ipmi$r_req.ipmi$req$b_netfn #define ipmi$req$b_rslun ipmi$r_requ.ipmi$r_req.ipmi$req$b_rslun #define ipmi$req$b_datlen ipmi$r_requ.ipmi$r_req.ipmi$req$b_datlen #define ipmi$req$b_data ipmi$r_requ.ipmi$r_req.ipmi$req$b_data #define ipmi$sacpipwr_req$b_sys_pwr_st ipmi$r_requ.ipmi$r_s_acpipwr_req.ipmi$sacpipwr_req$b_sys_pwr_st #define ipmi$sacpipwr_req$b_dev_pwr_st ipmi$r_requ.ipmi$r_s_acpipwr_req.ipmi$sacpipwr_req$b_dev_pwr_st #define ipmi$ch_ctrl_req$v_ctrl ipmi$r_requ.ipmi$r_ch_ctrl_req.ipmi$ch_ctrl_req$r_fill_0_.ipmi$ch_ctrl_req$r_fill_1_.ipmi$ch_ctrl_r\ eq$v_ctrl #define ipmi$ch_id_req$b_interval ipmi$r_requ.ipmi$r_ch_id_req.ipmi$ch_id_req$b_interval #define ipmi$ch_id_req$b_flags ipmi$r_requ.ipmi$r_ch_id_req.ipmi$ch_id_req$r_fill_2_.ipmi$ch_id_req$b_flags #define ipmi$ch_id_req$v_force ipmi$r_requ.ipmi$r_ch_id_req.ipmi$ch_id_req$r_fill_2_.ipmi$ch_id_req$r_fill_3_.ipmi$ch_id_req$v_force #define ipmi$s_ev_r_req$b_slave_adr ipmi$r_requ.ipmi$r_s_evr_req.ipmi$s_ev_r_req$b_slave_adr #define ipmi$s_ev_r_req$b_b2 ipmi$r_requ.ipmi$r_s_evr_req.ipmi$s_ev_r_req$r_fill_4_.ipmi$s_ev_r_req$b_b2 #define ipmi$s_ev_r_req$v_lun ipmi$r_requ.ipmi$r_s_evr_req.ipmi$s_ev_r_req$r_fill_4_.ipmi$s_ev_r_req$r_fill_5_.ipmi$s_ev_r_req$v_lun #define ipmi$p_ev_req$b_generate_id ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$b_generate_id #define ipmi$p_ev_req$b_rev ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$b_rev #define ipmi$p_ev_req$b_sensor_type ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$b_sensor_type #define ipmi$p_ev_req$b_sensor_num ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$b_sensor_num #define ipmi$p_ev_req$v_event_type ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$r_fill_6_.ipmi$p_ev_req$r_fill_7_.ipmi$p_ev_req$v_even\ t_type #define ipmi$p_ev_req$v_event_dir ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$r_fill_6_.ipmi$p_ev_req$r_fill_7_.ipmi$p_ev_req$v_event\ _dir #define ipmi$p_ev_req$b_data1 ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$b_data1 #define ipmi$p_ev_req$b_data2 ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$b_data2 #define ipmi$p_ev_req$b_data3 ipmi$r_requ.ipmi$r_p_ev_req.ipmi$p_ev_req$b_data3 #define ipmi$gd_sdr_i_req$v_count ipmi$r_requ.ipmi$r_gdsdr_i_req.ipmi$gd_sdr_i_req$r_fill_8_.ipmi$gd_sdr_i_req$r_fill_9_.ipmi$gd_sd\ r_i_req$v_count #define ipmi$g_sen_rf_req$b_sensor ipmi$r_requ.ipmi$r_g_srf_req.ipmi$g_sen_rf_req$b_sensor #define ipmi$g_sen_rf_req$b_read_byte ipmi$r_requ.ipmi$r_g_srf_req.ipmi$g_sen_rf_req$b_read_byte #define ipmi$s_sen_h_req$b_sensor ipmi$r_requ.ipmi$r_s_sh_req.ipmi$s_sen_h_req$b_sensor #define ipmi$s_sen_h_req$b_mask ipmi$r_requ.ipmi$r_s_sh_req.ipmi$s_sen_h_req$b_mask #define ipmi$s_sen_h_req$b_pos ipmi$r_requ.ipmi$r_s_sh_req.ipmi$s_sen_h_req$b_pos #define ipmi$s_sen_h_req$b_neg ipmi$r_requ.ipmi$r_s_sh_req.ipmi$s_sen_h_req$b_neg #define ipmi$g_sen_h_req$b_sensor ipmi$r_requ.ipmi$r_g_sh_req.ipmi$g_sen_h_req$b_sensor #define ipmi$g_sen_h_req$b_mask ipmi$r_requ.ipmi$r_g_sh_req.ipmi$g_sen_h_req$b_mask #define ipmi$s_sen_th_req$b_sensor ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$b_sensor #define ipmi$s_sen_th_req$b_b2 ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$r_fill_10_.ipmi$s_sen_th_req$b_b2 #define ipmi$s_sen_th_req$v_l_nc_tf ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$r_fill_10_.ipmi$s_sen_th_req$r_fill_11_.ipmi$s_s\ en_th_req$v_l_nc_tf #define ipmi$s_sen_th_req$v_l_c_tf ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$r_fill_10_.ipmi$s_sen_th_req$r_fill_11_.ipmi$s_se\ n_th_req$v_l_c_tf #define ipmi$s_sen_th_req$v_l_nr_tf ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$r_fill_10_.ipmi$s_sen_th_req$r_fill_11_.ipmi$s_s\ en_th_req$v_l_nr_tf #define ipmi$s_sen_th_req$v_u_nc_tf ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$r_fill_10_.ipmi$s_sen_th_req$r_fill_11_.ipmi$s_s\ en_th_req$v_u_nc_tf #define ipmi$s_sen_th_req$v_u_c_tf ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$r_fill_10_.ipmi$s_sen_th_req$r_fill_11_.ipmi$s_se\ n_th_req$v_u_c_tf #define ipmi$s_sen_th_req$v_u_nr_tf ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$r_fill_10_.ipmi$s_sen_th_req$r_fill_11_.ipmi$s_s\ en_th_req$v_u_nr_tf #define ipmi$s_sen_th_req$b_l_nc_thres ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$b_l_nc_thres #define ipmi$s_sen_th_req$b_l_c_thres ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$b_l_c_thres #define ipmi$s_sen_th_req$b_l_nr_thres ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$b_l_nr_thres #define ipmi$s_sen_th_req$b_u_nc_thres ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$b_u_nc_thres #define ipmi$s_sen_th_req$b_u_c_thres ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$b_u_c_thres #define ipmi$s_sen_th_req$b_u_nr_thres ipmi$r_requ.ipmi$r_s_sth_req.ipmi$s_sen_th_req$b_u_nr_thres #define ipmi$g_sen_th_req$b_sensor ipmi$r_requ.ipmi$r_g_sth_req.ipmi$g_sen_th_req$b_sensor #define ipmi$s_sen_ee_req$b_sensor ipmi$r_requ.ipmi$r_s_see_req.ipmi$s_sen_ee_req$b_sensor #define ipmi$s_sen_ee_req$b_b2 ipmi$r_requ.ipmi$r_s_see_req.ipmi$s_sen_ee_req$r_fill_12_.ipmi$s_sen_ee_req$b_b2 #define ipmi$s_sen_ee_req$v_rsvd ipmi$r_requ.ipmi$r_s_see_req.ipmi$s_sen_ee_req$r_fill_12_.ipmi$s_sen_ee_req$r_fill_13_.ipmi$s_sen_\ ee_req$v_rsvd #define ipmi$s_sen_ee_req$v_sel ipmi$r_requ.ipmi$r_s_see_req.ipmi$s_sen_ee_req$r_fill_12_.ipmi$s_sen_ee_req$r_fill_13_.ipmi$s_sen_e\ e_req$v_sel #define ipmi$s_sen_ee_req$v_dis_scan ipmi$r_requ.ipmi$r_s_see_req.ipmi$s_sen_ee_req$r_fill_12_.ipmi$s_sen_ee_req$r_fill_13_.ipmi$s_\ sen_ee_req$v_dis_scan #define ipmi$s_sen_ee_req$v_dis_all ipmi$r_requ.ipmi$r_s_see_req.ipmi$s_sen_ee_req$r_fill_12_.ipmi$s_sen_ee_req$r_fill_13_.ipmi$s_s\ en_ee_req$v_dis_all #define ipmi$s_sen_ee_req$w_assert ipmi$r_requ.ipmi$r_s_see_req.ipmi$s_sen_ee_req$w_assert #define ipmi$s_sen_ee_req$w_deassert ipmi$r_requ.ipmi$r_s_see_req.ipmi$s_sen_ee_req$w_deassert #define ipmi$g_sen_ee_req$b_sensor ipmi$r_requ.ipmi$r_g_see_req.ipmi$g_sen_ee_req$b_sensor #define ipmi$s_sen_e_req$b_sensor ipmi$r_requ.ipmi$r_r_se_req.ipmi$s_sen_e_req$b_sensor #define ipmi$s_sen_e_req$b_b2 ipmi$r_requ.ipmi$r_r_se_req.ipmi$s_sen_e_req$r_fill_14_.ipmi$s_sen_e_req$b_b2 #define ipmi$s_sen_e_req$v_rsvd ipmi$r_requ.ipmi$r_r_se_req.ipmi$s_sen_e_req$r_fill_14_.ipmi$s_sen_e_req$r_fill_15_.ipmi$s_sen_e_re\ q$v_rsvd #define ipmi$s_sen_e_req$v_dis_all ipmi$r_requ.ipmi$r_r_se_req.ipmi$s_sen_e_req$r_fill_14_.ipmi$s_sen_e_req$r_fill_15_.ipmi$s_sen_e\ _req$v_dis_all #define ipmi$s_sen_e_req$w_assert ipmi$r_requ.ipmi$r_r_se_req.ipmi$s_sen_e_req$w_assert #define ipmi$s_sen_e_req$w_deassert ipmi$r_requ.ipmi$r_r_se_req.ipmi$s_sen_e_req$w_deassert #define ipmi$g_sen_es_req$b_sensor ipmi$r_requ.ipmi$r_g_ses_req.ipmi$g_sen_es_req$b_sensor #define ipmi$g_sen_r_req$b_sensor ipmi$r_requ.ipmi$r_g_sr_req.ipmi$g_sen_r_req$b_sensor #define ipmi$s_sen_ty_req$b_sensor ipmi$r_requ.ipmi$r_s_sty_req.ipmi$s_sen_ty_req$b_sensor #define ipmi$s_sen_ty_req$b_sensor_type ipmi$r_requ.ipmi$r_s_sty_req.ipmi$s_sen_ty_req$b_sensor_type #define ipmi$s_sen_ty_req$b_b3 ipmi$r_requ.ipmi$r_s_sty_req.ipmi$s_sen_ty_req$r_fill_16_.ipmi$s_sen_ty_req$b_b3 #define ipmi$s_sen_ty_req$v_event_type ipmi$r_requ.ipmi$r_s_sty_req.ipmi$s_sen_ty_req$r_fill_16_.ipmi$s_sen_ty_req$r_fill_17_.ipmi$\ s_sen_ty_req$v_event_type #define ipmi$g_sen_ty_req$b_sensor ipmi$r_requ.ipmi$r_g_sty_req.ipmi$g_sen_ty_req$b_sensor #define ipmi$gfru_i_req$b_fru_id ipmi$r_requ.ipmi$r_gfru_i_req.ipmi$gfru_i_req$b_fru_id #define ipmi$rfru_req$b_fru_id ipmi$r_requ.ipmi$r_rfru_req.ipmi$rfru_req$b_fru_id #define ipmi$rfru_req$w_offset ipmi$r_requ.ipmi$r_rfru_req.ipmi$rfru_req$w_offset #define ipmi$rfru_req$b_bcnt ipmi$r_requ.ipmi$r_rfru_req.ipmi$rfru_req$b_bcnt #define ipmi$gsdr_req$w_res_id ipmi$r_requ.ipmi$r_gsdr_req.ipmi$gsdr_req$w_res_id #define ipmi$gsdr_req$w_rec_id ipmi$r_requ.ipmi$r_gsdr_req.ipmi$gsdr_req$w_rec_id #define ipmi$gsdr_req$b_offset ipmi$r_requ.ipmi$r_gsdr_req.ipmi$gsdr_req$b_offset #define ipmi$gsdr_req$b_bcnt ipmi$r_requ.ipmi$r_gsdr_req.ipmi$gsdr_req$b_bcnt #define ipmi$gsel_req$w_res_id ipmi$r_requ.ipmi$r_gsel_req.ipmi$gsel_req$w_res_id #define ipmi$gsel_req$w_rec_id ipmi$r_requ.ipmi$r_gsel_req.ipmi$gsel_req$w_rec_id #define ipmi$gsel_req$b_offset ipmi$r_requ.ipmi$r_gsel_req.ipmi$gsel_req$b_offset #define ipmi$gsel_req$b_bcnt ipmi$r_requ.ipmi$r_gsel_req.ipmi$gsel_req$b_bcnt #define ipmi$asel_req$b_data ipmi$r_requ.ipmi$r_asel_req.ipmi$asel_req$b_data #define ipmi$dsel_req$w_res_id ipmi$r_requ.ipmi$r_dsel_req.ipmi$dsel_req$w_res_id #define ipmi$dsel_req$w_rec_id ipmi$r_requ.ipmi$r_dsel_req.ipmi$dsel_req$w_rec_id #define ipmi$csel_req$w_res_id ipmi$r_requ.ipmi$r_csel_req.ipmi$csel_req$w_res_id #define ipmi$csel_req$b_c ipmi$r_requ.ipmi$r_csel_req.ipmi$csel_req$b_c #define ipmi$csel_req$b_l ipmi$r_requ.ipmi$r_csel_req.ipmi$csel_req$b_l #define ipmi$csel_req$b_r ipmi$r_requ.ipmi$r_csel_req.ipmi$csel_req$b_r #define ipmi$csel_req$b_cmd ipmi$r_requ.ipmi$r_csel_req.ipmi$csel_req$b_cmd #define ipmi$ssel_t_req$l_time ipmi$r_requ.ipmi$r_ssel_t_req.ipmi$ssel_t_req$l_time #define ipmi$afpl_req$b_data ipmi$r_requ.ipmi$r_afpl_req.ipmi$afpl_req$b_data #define ipmi$gtoken_i_req$w_token_id ipmi$r_requ.ipmi$r_gtkn_i_req.ipmi$gtoken_i_req$w_token_id #define ipmi$rtoken_req$w_token_id ipmi$r_requ.ipmi$r_rtkn_req.ipmi$rtoken_req$w_token_id #define ipmi$p_rtoken_req$w_token_id ipmi$r_requ.ipmi$r_prtkn_req.ipmi$p_rtoken_req$w_token_id #define ipmi$p_rtoken_req$w_offset ipmi$r_requ.ipmi$r_prtkn_req.ipmi$p_rtoken_req$w_offset #define ipmi$p_rtoken_req$b_bcnt ipmi$r_requ.ipmi$r_prtkn_req.ipmi$p_rtoken_req$b_bcnt #define ipmi$l_prop_req$b_id ipmi$r_requ.ipmi$r_lprop_req.ipmi$l_prop_req$b_id #define ipmi$l_prop_req$b_sw_id ipmi$r_requ.ipmi$r_lprop_req.ipmi$l_prop_req$b_sw_id #define ipmi$l_prop_req$b_type ipmi$r_requ.ipmi$r_lprop_req.ipmi$l_prop_req$b_type #define ipmi$u_prop_req$b_id ipmi$r_requ.ipmi$r_uprop_req.ipmi$u_prop_req$b_id #define ipmi$u_prop_req$b_type ipmi$r_requ.ipmi$r_uprop_req.ipmi$u_prop_req$b_type #define ipmi$g_prop_req$l_lock ipmi$r_requ.ipmi$r_gprop_req.ipmi$g_prop_req$l_lock #define ipmi$g_prop_req$b_id ipmi$r_requ.ipmi$r_gprop_req.ipmi$g_prop_req$b_id #define ipmi$g_prop_req$l_offset ipmi$r_requ.ipmi$r_gprop_req.ipmi$g_prop_req$l_offset #define ipmi$g_prop_req$w_bcnt ipmi$r_requ.ipmi$r_gprop_req.ipmi$g_prop_req$w_bcnt #endif /* #if !defined(__VAXC) */ /* */ /* */ /* */ /* + */ /* This structure represents a IMB* response from a command to the IPMI driver */ /* The first struct is covers the common completion code(ccode) some commands */ /* only have a completion code for a response. */ /* - */ #define IPMI$K_MIN_RESPSIZE 1 /* Response with only ccode */ #define IPMI$GDEVID_RSP$M_IPMI_V_MAJOR 0xF #define IPMI$GDEVID_RSP$M_IPMI_V_MINOR 0xF0 #define IPMI$GDEVID_RSP$K_NO_AXREV_LEN 12 /* length of Get Device Id response without optional aux fw rev */ #define IPMI$GDEVID_RSP$K_LENGTH 16 /* total length of Get Device Id response struct */ #define IPMI$GST_RSP$K_LENGTH 3 /* total length of Get selftest response struct */ #define IPMI$GACPIPWR_RSP$K_LENGTH 3 /* total length of Get ACPI Power state response struct */ #define IPMI$GD_GUID_RSP$K_LENGTH 17 /* total length of Get Device GUID response struct */ #define IPMI$G_WATCHDOG_RSP$K_LENGTH 9 /* total length of Get Watchdog timer response struct */ #define IPMI$GBTCAP_RSP$K_LENGTH 6 /* total length of Get BT Interface Capablilities response struct */ #define IPMI$GS_GUID_RSP$K_LENGTH 17 /* total length of Get System GUID response struct */ #define IPMI$GCH_CAP_RSP$M_INTRUDE 0x1 #define IPMI$GCH_CAP_RSP$M_LCKED 0x2 #define IPMI$GCH_CAP_RSP$M_DIAG_INT 0x4 #define IPMI$GCH_CAP_RSP$M_P_LCK 0x8 #define IPMI$GCH_CAP_RSP$K_LENGTH 7 /* total length of Get Chassis Capabilities response struct */ #define IPMI$GCH_STAT_RSP$M_ON 0x1 #define IPMI$GCH_STAT_RSP$M_OVR 0x2 #define IPMI$GCH_STAT_RSP$M_P_LOCK 0x4 #define IPMI$GCH_STAT_RSP$M_P_FLT 0x8 #define IPMI$GCH_STAT_RSP$M_P_CFLT 0x10 #define IPMI$GCH_STAT_RSP$M_P_POLICY 0x60 #define IPMI$GCH_STAT_RSP$M_AC 0x1 #define IPMI$GCH_STAT_RSP$M_L_OVR 0x2 #define IPMI$GCH_STAT_RSP$M_L_P_LCK 0x4 #define IPMI$GCH_STAT_RSP$M_L_P_FLT 0x8 #define IPMI$GCH_STAT_RSP$M_IPMI 0x10 #define IPMI$GCH_STAT_RSP$M_INTRUDE 0x1 #define IPMI$GCH_STAT_RSP$M_FP_LCK 0x2 #define IPMI$GCH_STAT_RSP$M_DRIVE 0x4 #define IPMI$GCH_STAT_RSP$M_FAN 0x8 #define IPMI$GCH_STAT_RSP$K_LENGTH 5 /* total length of Get Chassis Status response struct */ #define IPMI$G_EV_R_RSP$M_LUN 0x3 #define IPMI$G_EV_R_RSP$K_LENGTH 3 /* total length of get event receiver response struct */ #define IPMI$GD_SDR_I_RSP$M_LUN0 0x1 #define IPMI$GD_SDR_I_RSP$M_LUN1 0x2 #define IPMI$GD_SDR_I_RSP$M_LUN2 0x4 #define IPMI$GD_SDR_I_RSP$M_LUN3 0x8 #define IPMI$GD_SDR_I_RSP$M_RSVD 0x70 #define IPMI$GD_SDR_I_RSP$M_POP 0x80 #define IPMI$GD_SDR_I_RSP$K_LENGTH 7 /* total length of Get Device SDR info response struct */ #define IPMI$G_SEN_RF_RSP$M_TOL 0x3F #define IPMI$G_SEN_RF_RSP$M_M_MS 0xC0 #define IPMI$G_SEN_RF_RSP$M_ACC_LS 0x3F #define IPMI$G_SEN_RF_RSP$M_B_MS 0xC0 #define IPMI$G_SEN_RF_RSP$M_RSVD 0x3 #define IPMI$G_SEN_RF_RSP$M_ACC_EXP 0xC #define IPMI$G_SEN_RF_RSP$M_ACC_MS 0xF0 #define IPMI$G_SEN_RF_RSP$M_B_EXP 0xF #define IPMI$G_SEN_RF_RSP$M_RESULT 0xF0 #define IPMI$G_SEN_RF_RSP$K_LENGTH 8 /* total length of Get sensor reading factors response struct */ #define IPMI$G_SEN_H_RSP$K_LENGTH 3 /* total length of Get sensor hysteresis response struct */ #define IPMI$G_SEN_TH_RSP$M_L_NC_TF 0x1 #define IPMI$G_SEN_TH_RSP$M_L_C_TF 0x2 #define IPMI$G_SEN_TH_RSP$M_L_NR_TF 0x4 #define IPMI$G_SEN_TH_RSP$M_U_NC_TF 0x8 #define IPMI$G_SEN_TH_RSP$M_U_C_TF 0x10 #define IPMI$G_SEN_TH_RSP$M_U_NR_TF 0x20 #define IPMI$G_SEN_TH_RSP$K_LENGTH 8 /* total length of Get sensor threshold response struct */ #define IPMI$G_SEN_EE_RSP$M_RSVD 0x3F #define IPMI$G_SEN_EE_RSP$M_SCAN_DIS 0x40 #define IPMI$G_SEN_EE_RSP$M_ALL_DIS 0x80 #define IPMI$G_SEN_EE_RSP$K_LENGTH 6 /* total length of Get sensor event enable response struct */ #define IPMI$G_SEN_ES_RSP$M_RSVD 0x1F #define IPMI$G_SEN_ES_RSP$M_BUSY 0x20 #define IPMI$G_SEN_ES_RSP$M_SCAN_DIS 0x40 #define IPMI$G_SEN_ES_RSP$M_ALL_DIS 0x80 #define IPMI$G_SEN_ES_RSP$K_LENGTH 6 /* total length of Get sensor event status response struct */ #define IPMI$G_SEN_R_RSP$M_RSVD 0x1F #define IPMI$G_SEN_R_RSP$M_BUSY 0x20 #define IPMI$G_SEN_R_RSP$M_SCAN_DIS 0x40 #define IPMI$G_SEN_R_RSP$M_ALL_DIS 0x80 #define IPMI$G_SEN_R_RSP$K_LENGTH 7 /* total length of Get sensor reading response struct */ #define IPMI$G_SEN_TY_RSP$M_EVENT_TYPE 0x7F #define IPMI$G_SEN_TY_RSP$K_LENGTH 3 /* total length of Get sensor type response struct */ #define IPMI$GFRU_I_RSP$M_WRD_ACC 0x1 #define IPMI$GFRU_I_RSP$K_LENGTH 4 /* total length of FRU Inventory Area response struct */ #define IPMI$RFRU_RSP$K_LENGTH 258 /* total length of Read FRU Data response struct */ #define IPMI$GSDR_I_RSP$M_SDR_V_MAJOR 0xF #define IPMI$GSDR_I_RSP$M_SDR_V_MINOR 0xF0 #define IPMI$GSDR_I_RSP$M_ALLOC_INFO 0x1 #define IPMI$GSDR_I_RSP$M_RES 0x2 #define IPMI$GSDR_I_RSP$M_P_ADD 0x4 #define IPMI$GSDR_I_RSP$M_DEL 0x8 #define IPMI$GSDR_I_RSP$M_RSVD 0x10 #define IPMI$GSDR_I_RSP$M_NONMODAL 0x20 #define IPMI$GSDR_I_RSP$M_MODAL 0x40 #define IPMI$GSDR_I_RSP$M_OVR 0x80 #define IPMI$GSDR_I_RSP$K_LENGTH 15 /* total length of Get SDR Repository Info response struct */ #define IPMI$GSDR_A_RSP$K_LENGTH 10 /* total length of Get SDR Repository Allocation Info response struct */ #define IPMI$RESSDR_R_RSP$K_LENGTH 3 /* total length of Reserve SDR Repository response struct */ #define IPMI$GSDR_RSP$K_LENGTH 259 /* total length of get SDR response struct */ #define IPMI$GSDR_T_RSP$K_LENGTH 5 /* total length of Get SDR Repository Time response struct */ #define IPMI$GSEL_I_RSP$M_SEL_V_MAJOR 0xF #define IPMI$GSEL_I_RSP$M_SEL_V_MINOR 0xF0 #define IPMI$GSEL_I_RSP$M_ALLOC_INFO 0x1 #define IPMI$GSEL_I_RSP$M_RES 0x2 #define IPMI$GSEL_I_RSP$M_P_ADD 0x4 #define IPMI$GSEL_I_RSP$M_DEL 0x8 #define IPMI$GSEL_I_RSP$M_RESVD 0x70 #define IPMI$GSEL_I_RSP$M_OVR 0x80 #define IPMI$GSEL_I_RSP$K_LENGTH 15 /* total length of Get SEL Info response struct */ #define IPMI$GSEL_A_RSP$K_LENGTH 10 /* total length of Get SEL Allocation Info response struct */ #define IPMI$RESSEL_RSP$K_LENGTH 3 /* total length of Reserve SEL response struct */ #define IPMI$GSEL_RSP$K_LENGTH 19 /* total length of Get SEL response struct */ #define IPMI$ASEL_RSP$K_LENGTH 3 /* total length of Add SEL response struct */ #define IPMI$DSEL_RSP$K_LENGTH 3 /* total length of Delete SEL response struct */ #define IPMI$CSEL_RSP$M_E_PRGRESS 0xF #define IPMI$CSEL_RSP$M_E_P_RSVD 0xF0 #define IPMI$CSEL_RSP$K_LENGTH 2 /* total length of Clear SEL response struct */ #define IPMI$GSEL_T_RSP$K_LENGTH 5 /* total length of Get SEL Time response struct */ #define IPMI$GTOKEN_I_RSP$M_R_GUEST 0x1 #define IPMI$GTOKEN_I_RSP$M_R_USER 0x2 #define IPMI$GTOKEN_I_RSP$M_R_ADMIN 0x4 #define IPMI$GTOKEN_I_RSP$M_W_GUEST 0x8 #define IPMI$GTOKEN_I_RSP$M_W_USER 0x10 #define IPMI$GTOKEN_I_RSP$M_W_ADMIN 0x20 #define IPMI$GTOKEN_I_RSP$M_CHECKSUM 0x40 #define IPMI$GTOKEN_I_RSP$M_E_INFO 0x80 #define IPMI$GTOKEN_I_RSP$K_LENGTH 2 /* total length of Get Token Info response struct */ #define IPMI$RTOKEN_RSP$K_LENGTH 257 /* total length of Read Token response struct */ #define IPMI$P_RTOKEN_RSP$K_LENGTH 257 /* total length of Partial Read Token response struct */ #define IPMI$L_PROP_RSP$K_LENGTH 137 /* total length of Lock Property response struct */ #define IPMI$G_PROP_RSP$K_LENGTH 257 /* total length of Get Property response struct */ typedef struct _imbresponse { __union { __struct { unsigned char ipmi$rsp$b_ccode; /* IMB completion code */ unsigned char ipmi$rsp$b_data [511]; /* Response data */ } ipmi$r_rsp; /* */ /* IPMI Get Device ID command response */ /* */ __struct { char ipmi$gdevid_rsp$b_fill_1 [1]; unsigned char ipmi$gdevid_rsp$b_dev_id; /* Master Device ID */ unsigned char ipmi$gdevid_rsp$b_dev_rev; /* */ unsigned char ipmi$gdevid_rsp$b_frmw_rev1; /* Major FW revision */ unsigned char ipmi$gdevid_rsp$b_frmw_rev2; /* Minor FW revision */ __union { unsigned char ipmi$gdevid_rsp$b_ipmi_ver; /* Combined IPMI version */ __struct { unsigned ipmi$gdevid_rsp$v_ipmi_v_major : 4; /* IPMI Version Major */ unsigned ipmi$gdevid_rsp$v_ipmi_v_minor : 4; /* IPMI Version Minor */ } ipmi$gdevid_rsp$r_fill_25_; } ipmi$gdevid_rsp$r_fill_24_; unsigned char ipmi$gdevid_rsp$b_dev_support; /* Additional Device Support */ unsigned char ipmi$gdevid_rsp$b_manuf_id [3]; /* */ unsigned char ipmi$gdevid_rsp$b_prod_id [2]; /* */ unsigned char ipmi$gdevid_rsp$b_ax_firm_rev [4]; /* Auxiliary Firmware Revision (optional) */ } ipmi$r_gdevid_rsp; /* */ /* IPMI Get Selftest command response */ /* */ __struct { char ipmi$gst_rsp$b_fill_1 [1]; unsigned char ipmi$gst_rsp$b_rslt1; /* Selftest result 1 */ unsigned char ipmi$gst_rsp$b_rslt2; /* Selftest resule 2 */ } ipmi$r_gst_rsp; /* */ /* IPMI Get ACPI Power state command response */ /* */ __struct { char ipmi$gacpipwr_rsp$b_fill_1 [1]; unsigned char ipmi$gacpipwr_rsp$b_sys_pwr_st; /* system power state */ unsigned char ipmi$gacpipwr_rsp$b_dev_pwr_st; /* device power state */ } ipmi$r_g_acpipwr_rsp; /* */ /* IPMI Get Device GUID command response */ /* */ __struct { char ipmi$gd_guid_rsp$b_fill_1 [1]; unsigned char ipmi$gd_guid_rsp$b_guid [16]; /* Device GUID data */ } ipmi$r_gd_guid_rsp; /* */ /* IPMI Get Watchdog timer command response */ /* */ __struct { char ipmi$g_watchdog_rsp$b_fill_1 [1]; unsigned char ipmi$g_watchdog_rsp$b_use; /* Timer use */ unsigned char ipmi$g_watchdog_rsp$b_action; /* Timer actions */ unsigned char ipmi$g_watchdog_rsp$b_pretime; /* Pre-timeout interval */ unsigned char ipmi$g_watchdog_rsp$b_use_exp; /* Timer use expiration flags */ unsigned short int ipmi$g_watchdog_rsp$w_i_count; /* Initial countdown value */ unsigned short int ipmi$g_watchdog_rsp$w_p_count; /* Preset countdown value */ } ipmi$r_g_watch_rsp; /* */ /* IPMI Get BT Interface Capapbilities command response */ /* */ __struct { char ipmi$gbtcap_rsp$b_fill_1 [1]; unsigned char ipmi$gbtcap_rsp$b_max_req; /* Maximum outstanding requests */ unsigned char ipmi$gbtcap_rsp$b_in_size; /* Input buffer size */ unsigned char ipmi$gbtcap_rsp$b_out_size; /* Output buffer size */ unsigned char ipmi$gbtcap_rsp$b_max_time; /* BMC Request-to-Response time in seconds; 30 max */ unsigned char ipmi$gbtcap_rsp$b_max_rtry; /* Maximum recommened retrys */ } ipmi$r_gbtcap_rsp; /* */ /* IPMI Get System GUID command response */ /* */ __struct { char ipmi$gs_guid_rsp$b_fill_1 [1]; unsigned char ipmi$gs_guid_rsp$b_guid [16]; /* System GUID data */ } ipmi$r_gs_guid_rsp; /* */ /* IPMI Get Chassis Capabilities command response */ /* */ __struct { char ipmi$gch_cap_rsp$b_fill_1 [1]; __union { unsigned char ipmi$gch_cap_rsp$b_flgs; /* Capabilities Flags */ __struct { unsigned ipmi$gch_cap_rsp$v_intrude : 1; /* Provides intrusion (physical security) sensor */ unsigned ipmi$gch_cap_rsp$v_lcked : 1; /* Provides front panel lockout */ unsigned ipmi$gch_cap_rsp$v_diag_int : 1; /* Provides Diagnostic Interrupt (FP NMI) (IPMI 1.5) */ unsigned ipmi$gch_cap_rsp$v_p_lck : 1; /* Provides power interlock (IPMI 1.5) */ unsigned ipmi$gch_cap_rsp$v_fill_70_ : 4; } ipmi$gch_cap_rsp$r_fill_27_; } ipmi$gch_cap_rsp$r_fill_26_; unsigned char ipmi$gch_cap_rsp$b_fru_adr; /* Chassis FRU Info Device Address */ unsigned char ipmi$gch_cap_rsp$b_sdr_adr; /* Chassis SDR Device Address */ unsigned char ipmi$gch_cap_rsp$b_sel_adr; /* Chassis SEL Device Address */ unsigned char ipmi$gch_cap_rsp$b_sm_adr; /* Chassis System Mamangement Device Address */ unsigned char ipmi$gch_cap_rsp$b_br_adr; /* Chassis Bridge Device Address */ } ipmi$r_gch_cap_rsp; /* */ /* IPMI Get Chassis Status command response */ /* */ __struct { char ipmi$gch_stat_rsp$b_fill_1 [1]; __union { unsigned char ipmi$gch_stat_rsp$b_cur_pwr; /* Current power state */ __struct { unsigned ipmi$gch_stat_rsp$v_on : 1; /* Power is on */ unsigned ipmi$gch_stat_rsp$v_ovr : 1; /* Power Overload */ unsigned ipmi$gch_stat_rsp$v_p_lock : 1; /* Power interlock (IPMI 1.5) */ unsigned ipmi$gch_stat_rsp$v_p_flt : 1; /* Power Fault */ unsigned ipmi$gch_stat_rsp$v_p_cflt : 1; /* Power Control Fault */ unsigned ipmi$gch_stat_rsp$v_p_policy : 2; /* Power Restore Policy */ unsigned ipmi$gch_stat_rsp$v_fill_71_ : 1; } ipmi$gch_stat_rsp$r_fill_29_; } ipmi$gch_stat_rsp$r_fill_28_; __union { unsigned char ipmi$gch_stat_rsp$b_lst_pwr; /* Last power event */ __struct { unsigned ipmi$gch_stat_rsp$v_ac : 1; /* AC failed */ unsigned ipmi$gch_stat_rsp$v_l_ovr : 1; /* Last power down caused by Power Overload */ unsigned ipmi$gch_stat_rsp$v_l_p_lck : 1; /* Last power down caused by Power interlock (IPMI 1.5) */ unsigned ipmi$gch_stat_rsp$v_l_p_flt : 1; /* Last power down caused by Power Fault */ unsigned ipmi$gch_stat_rsp$v_ipmi : 1; /* Last 'power is on' state was done via IPMI */ unsigned ipmi$gch_stat_rsp$v_fill_72_ : 3; } ipmi$gch_stat_rsp$r_fill_31_; } ipmi$gch_stat_rsp$r_fill_30_; __union { unsigned char ipmi$gch_stat_rsp$b_chas_sta; /* Misc Chassis State */ __struct { unsigned ipmi$gch_stat_rsp$v_intrude : 1; /* Chassis intrusion active */ unsigned ipmi$gch_stat_rsp$v_fp_lck : 1; /* Front Panel Lockout Active */ unsigned ipmi$gch_stat_rsp$v_drive : 1; /* Drive fault */ unsigned ipmi$gch_stat_rsp$v_fan : 1; /* Cooling/Fan Fault detected */ unsigned ipmi$gch_stat_rsp$v_fill_73_ : 4; } ipmi$gch_stat_rsp$r_fill_33_; } ipmi$gch_stat_rsp$r_fill_32_; unsigned char ipmi$gch_stat_rsp$b_frnt_panl; /* Front Panel Button Capabilities and disable/enable status (Optional) */ } ipmi$r_gch_stat_rsp; /* */ /* IPMI Get event receiver command response */ /* */ __struct { char ipmi$g_ev_r_rsp$b_fill_1 [1]; unsigned char ipmi$g_ev_r_rsp$b_slave_adr; /* Event receiver slave address */ __union { unsigned char ipmi$g_ev_r_rsp$b_b2; __struct { unsigned ipmi$g_ev_r_rsp$v_lun : 2; /* LUN of event receiver */ unsigned ipmi$g_ev_r_rsp$v_fill_74_ : 6; } ipmi$g_ev_r_rsp$r_fill_35_; } ipmi$g_ev_r_rsp$r_fill_34_; } ipmi$r_g_evr_rsp; /* */ /* IPMI Get Device SDR info command response */ /* */ __struct { char ipmi$gd_sdr_i_rsp$b_fill_1 [1]; unsigned char ipmi$gd_sdr_i_rsp$b_count; /* Number of Sensors per LUN or SDRs in the device */ __union { unsigned char ipmi$gd_sdr_i_rsp$b_flag; __struct { unsigned ipmi$gd_sdr_i_rsp$v_lun0 : 1; /* 1 = Device LUN 0 has sensors */ unsigned ipmi$gd_sdr_i_rsp$v_lun1 : 1; /* 1 = Device LUN 1 has sensors */ unsigned ipmi$gd_sdr_i_rsp$v_lun2 : 1; /* 1 = Device LUN 2 has sensors */ unsigned ipmi$gd_sdr_i_rsp$v_lun3 : 1; /* 1 = Device LUN 3 has sensors */ unsigned ipmi$gd_sdr_i_rsp$v_rsvd : 3; unsigned ipmi$gd_sdr_i_rsp$v_pop : 1; /* Dynamic or static Sensor population */ } ipmi$gd_sdr_i_rsp$r_fill_37_; } ipmi$gd_sdr_i_rsp$r_fill_36_; unsigned int ipmi$gd_sdr_i_rsp$l_change; /* Sensor population change indicator */ } ipmi$r_gdsdr_i_rsp; /* */ /* IPMI Get sensor reading factors command response */ /* */ __struct { char ipmi$g_sen_rf_rsp$b_fill_1 [1]; unsigned char ipmi$g_sen_rf_rsp$b_nread; /* Next reading factor */ unsigned char ipmi$g_sen_rf_rsp$b_m_ls; /* M: ls 8 bits */ __union { unsigned char ipmi$g_sen_rf_rsp$b_byte4; __struct { unsigned ipmi$g_sen_rf_rsp$v_tol : 6; /* Tolerance */ unsigned ipmi$g_sen_rf_rsp$v_m_ms : 2; /* M: ms 2 bits */ } ipmi$g_sen_rf_rsp$r_fill_39_; } ipmi$g_sen_rf_rsp$r_fill_38_; unsigned char ipmi$g_sen_rf_rsp$b_b_ls; /* B: ls 8 bits */ __union { unsigned char ipmi$g_sen_rf_rsp$b_byte6; __struct { unsigned ipmi$g_sen_rf_rsp$v_acc_ls : 6; /* Accuracy ls 6 bits */ unsigned ipmi$g_sen_rf_rsp$v_b_ms : 2; /* B: ms 2 bits */ } ipmi$g_sen_rf_rsp$r_fill_41_; } ipmi$g_sen_rf_rsp$r_fill_40_; __union { unsigned char ipmi$g_sen_rf_rsp$b_byte7; __struct { unsigned ipmi$g_sen_rf_rsp$v_rsvd : 2; /* Reserved */ unsigned ipmi$g_sen_rf_rsp$v_acc_exp : 2; /* Accuracy exponent 2 bits, unsigned */ unsigned ipmi$g_sen_rf_rsp$v_acc_ms : 4; /* Accuracy ms 4 bits */ } ipmi$g_sen_rf_rsp$r_fill_43_; } ipmi$g_sen_rf_rsp$r_fill_42_; __union { unsigned char ipmi$g_sen_rf_rsp$b_byte8; __struct { unsigned ipmi$g_sen_rf_rsp$v_b_exp : 4; /* B exponent 4 bits, signed */ unsigned ipmi$g_sen_rf_rsp$v_result : 4; /* Result exponent 4 bits, signed */ } ipmi$g_sen_rf_rsp$r_fill_45_; } ipmi$g_sen_rf_rsp$r_fill_44_; } ipmi$r_g_srf_rsp; /* */ /* IPMI Get sensor hysteresis command response */ /* */ __struct { char ipmi$g_sen_h_rsp$b_fill_1 [1]; unsigned char ipmi$g_sen_h_rsp$b_pos; /* Positive-going hystereris value */ unsigned char ipmi$g_sen_h_rsp$b_neg; /* Negative-going hystereris value */ } ipmi$r_g_sh_rsp; /* */ /* IPMI Get sensor threshold command response */ /* */ __struct { char ipmi$g_sen_th_rsp$b_fill_1 [1]; __union { unsigned char ipmi$g_sen_th_rsp$b_b2; __struct { unsigned ipmi$g_sen_th_rsp$v_l_nc_tf : 1; /* 1 = Lower non-critical threshold */ unsigned ipmi$g_sen_th_rsp$v_l_c_tf : 1; /* 1 = Lower critical threshold */ unsigned ipmi$g_sen_th_rsp$v_l_nr_tf : 1; /* 1 = Lower non-recoverable threshold */ unsigned ipmi$g_sen_th_rsp$v_u_nc_tf : 1; /* 1 = Upper non-critical threshold */ unsigned ipmi$g_sen_th_rsp$v_u_c_tf : 1; /* 1 = Upper critical threshold */ unsigned ipmi$g_sen_th_rsp$v_u_nr_tf : 1; /* 1 = Upper non-recoverable threshold */ unsigned ipmi$g_sen_th_rsp$v_fill_75_ : 2; } ipmi$g_sen_th_rsp$r_fill_47_; } ipmi$g_sen_th_rsp$r_fill_46_; unsigned char ipmi$g_sen_th_rsp$b_l_nc_thres; /* Lower non-critical threshold */ unsigned char ipmi$g_sen_th_rsp$b_l_c_thres; /* Lower critical threshold */ unsigned char ipmi$g_sen_th_rsp$b_l_nr_thres; /* Lower non-recoverable threshold */ unsigned char ipmi$g_sen_th_rsp$b_u_nc_thres; /* Upper non-critical threshold */ unsigned char ipmi$g_sen_th_rsp$b_u_c_thres; /* Upper critical threshold */ unsigned char ipmi$g_sen_th_rsp$b_u_nr_thres; /* Upper non-recoverable threshold */ } ipmi$r_g_sth_rsp; /* */ /* IPMI Get sensor event enable command response */ /* */ __struct { char ipmi$g_sen_ee_rsp$b_fill_1 [1]; __union { unsigned char ipmi$g_sen_ee_rsp$b_b2; __struct { unsigned ipmi$g_sen_ee_rsp$v_rsvd : 6; /* Reserved */ unsigned ipmi$g_sen_ee_rsp$v_scan_dis : 1; /* 0 = sensor scanning disabled */ unsigned ipmi$g_sen_ee_rsp$v_all_dis : 1; /* 0 = all event messages disabled */ } ipmi$g_sen_ee_rsp$r_fill_49_; } ipmi$g_sen_ee_rsp$r_fill_48_; unsigned short int ipmi$g_sen_ee_rsp$w_assert; /* assertion events enabled */ unsigned short int ipmi$g_sen_ee_rsp$w_deassert; /* deassertion events enabled */ } ipmi$r_g_see_rsp; /* */ /* IPMI Get sensor event status command response */ /* */ __struct { char ipmi$g_sen_es_rsp$b_fill_1 [1]; __union { unsigned char ipmi$g_sen_es_rsp$b_b2; __struct { unsigned ipmi$g_sen_es_rsp$v_rsvd : 5; /* Reserved */ unsigned ipmi$g_sen_es_rsp$v_busy : 1; /* 1 = reading/state unavailable (busy being updated) */ unsigned ipmi$g_sen_es_rsp$v_scan_dis : 1; /* 0 = sensor scanning disabled */ unsigned ipmi$g_sen_es_rsp$v_all_dis : 1; /* 0 = all event messages disabled */ } ipmi$g_sen_es_rsp$r_fill_51_; } ipmi$g_sen_es_rsp$r_fill_50_; unsigned short int ipmi$g_sen_es_rsp$w_assert; /* assertion events occurred */ unsigned short int ipmi$g_sen_es_rsp$w_deassert; /* deassertion events occurred */ } ipmi$r_g_ses_rsp; /* */ /* IPMI Get sensor reading command response */ /* */ __struct { char ipmi$g_sen_r_rsp$b_fill_1 [1]; unsigned char ipmi$g_sen_r_rsp$b_value; /* Sensor value (ignore if not analog sensor) */ __union { unsigned char ipmi$g_sen_r_rsp$b_b3; __struct { unsigned ipmi$g_sen_r_rsp$v_rsvd : 5; /* Reserved */ unsigned ipmi$g_sen_r_rsp$v_busy : 1; /* 1 = reading/state unavailable (busy being updated) */ unsigned ipmi$g_sen_r_rsp$v_scan_dis : 1; /* 0 = sensor scanning disabled */ unsigned ipmi$g_sen_r_rsp$v_all_dis : 1; /* 0 = all event messages disabled */ } ipmi$g_sen_r_rsp$r_fill_53_; } ipmi$g_sen_r_rsp$r_fill_52_; unsigned short int ipmi$g_sen_r_rsp$w_assert; /* assertion events occurred */ unsigned short int ipmi$g_sen_r_rsp$w_deassert; /* deassertion events occurred */ } ipmi$r_g_sr_rsp; /* */ /* IPMI Get sensor type command response */ /* */ __struct { char ipmi$g_sen_ty_rsp$b_fill_1 [1]; unsigned char ipmi$g_sen_ty_rsp$b_sensor_type; /* Sensor type code */ __union { unsigned char ipmi$g_sen_ty_rsp$b_b3; __struct { unsigned ipmi$g_sen_ty_rsp$v_event_type : 7; /* Event/reading type code */ unsigned ipmi$g_sen_ty_rsp$v_fill_76_ : 1; } ipmi$g_sen_ty_rsp$r_fill_55_; } ipmi$g_sen_ty_rsp$r_fill_54_; } ipmi$r_g_sty_rsp; /* */ /* IPMI Get FRU Inventory Area command response */ /* */ __struct { char ipmi$gfru_i_rsp$b_fill_1 [1]; unsigned short int ipmi$gfru_i_rsp$w_area_sze; /* FRU Inventory area size */ __union { unsigned char ipmi$gfru_i_rsp$b_flg; __struct { unsigned ipmi$gfru_i_rsp$v_wrd_acc : 1; /* Device is accessed by words not bytes. */ unsigned ipmi$gfru_i_rsp$v_fill_77_ : 7; } ipmi$gfru_i_rsp$r_fill_57_; } ipmi$gfru_i_rsp$r_fill_56_; } ipmi$r_gfru_i_rsp; /* */ /* IPMI Read FRU data command response */ /* */ __struct { char ipmi$rfru_rsp$b_fill_1 [1]; unsigned char ipmi$rfru_rsp$b_cnt; /* Count of how many FRU bytes read */ unsigned char ipmi$rfru_rsp$b_data [256]; /* Possible returned from the FRU read (typical 32 max) */ } ipmi$r_rfru_rsp; /* */ /* IPMI Get SDR Repository Info command response */ /* */ __struct { char ipmi$gsdr_i_rsp$b_fill_1 [1]; __union { unsigned char ipmi$gsdr_i_rsp$b_sdr_ver; /* Combined SDR version */ __struct { unsigned ipmi$gsdr_i_rsp$v_sdr_v_major : 4; /* SDR Version Major */ unsigned ipmi$gsdr_i_rsp$v_sdr_v_minor : 4; /* SDR Version Minor */ } ipmi$gsdr_i_rsp$r_fill_59_; } ipmi$gsdr_i_rsp$r_fill_58_; unsigned short int ipmi$gsdr_i_rsp$w_record_cnt; /* Number of records in the SDR Repository */ unsigned short int ipmi$gsdr_i_rsp$w_free_space; /* Free space left in bytes */ unsigned int ipmi$gsdr_i_rsp$l_add_time; /* Most recent addition timestamp */ unsigned int ipmi$gsdr_i_rsp$l_erase_time; /* Most recent erase(delete or clear) timestamp */ __union { unsigned char ipmi$gsdr_i_rsp$b_op_sup; /* Operation Supported */ __struct { unsigned ipmi$gsdr_i_rsp$v_alloc_info : 1; /* Get SDR Repository Allocation Information command supported */ unsigned ipmi$gsdr_i_rsp$v_res : 1; /* Reserve SDR Repository command supported */ unsigned ipmi$gsdr_i_rsp$v_p_add : 1; /* Partial add SDR command supported */ unsigned ipmi$gsdr_i_rsp$v_del : 1; /* Delete SDR command supported */ unsigned ipmi$gsdr_i_rsp$v_rsvd : 1; /* Reserved */ unsigned ipmi$gsdr_i_rsp$v_nonmodal : 1; /* Non-Modal SDR Repository update operation supported */ unsigned ipmi$gsdr_i_rsp$v_modal : 1; /* Modal SDR Repository update operation supported */ unsigned ipmi$gsdr_i_rsp$v_ovr : 1; /* Overflow Flag; SDR could not be written due to lack of space */ } ipmi$gsdr_i_rsp$r_fill_61_; } ipmi$gsdr_i_rsp$r_fill_60_; } ipmi$r_gsdr_i_rsp; /* */ /* IPMI Get SDR Repository Allocation Info command response */ /* */ __struct { char ipmi$gsdr_a_rsp$b_fill_1 [1]; unsigned short int ipmi$gsdr_a_rsp$w_alloc; /* Number of posible allocation units */ unsigned short int ipmi$gsdr_a_rsp$w_unit_size; /* Allocation unit size in bytes */ unsigned short int ipmi$gsdr_a_rsp$w_f_units; /* Number of free allocation units */ unsigned short int ipmi$gsdr_a_rsp$w_f_block; /* Largest free block in allocation units */ unsigned char ipmi$gsdr_a_rsp$b_max_size; /* Maximum record size in allocation units */ } ipmi$r_gsdr_a_rsp; /* */ /* IPMI Reserve SDR Repository command response */ /* and/or */ /* IPMI Reserve Device SDR repository command response */ /* */ __struct { char ipmi$ressdr_r_rsp$b_fill_1 [1]; unsigned short int ipmi$ressdr_r_rsp$w_res_id; /* Reservation id */ } ipmi$r_ressdr_r_rsp; /* */ /* IPMI Get SDR command response */ /* and/or */ /* IPMI Get Device SDR response */ /* */ __struct { char ipmi$gsdr_rsp$b_fill_1 [1]; unsigned short int ipmi$gsdr_rsp$w_rec_id; /* Record ID of the next record in the SDR */ unsigned char ipmi$gsdr_rsp$b_data [256]; /* Possible returned from the get SDR (typical 32 max) */ } ipmi$r_gsdr_rsp; /* */ /* IPMI Get SDR Repository Time command response */ /* */ __struct { char ipmi$gsdr_t_rsp$b_fill_1 [1]; unsigned int ipmi$gsdr_t_rsp$l_time; /* Present time */ } ipmi$r_gsdr_t_rsp; /* */ /* IPMI Get SEL Info command response */ /* */ __struct { char ipmi$gsel_i_rsp$b_fill_1 [1]; __union { unsigned char ipmi$gsel_i_rsp$b_sel_ver; /* Combined SEL version */ __struct { unsigned ipmi$gsel_i_rsp$v_sel_v_major : 4; /* SEL Version Major */ unsigned ipmi$gsel_i_rsp$v_sel_v_minor : 4; /* SEL Version Minor */ } ipmi$gsel_i_rsp$r_fill_63_; } ipmi$gsel_i_rsp$r_fill_62_; unsigned short int ipmi$gsel_i_rsp$w_entry_cnt; /* Number of log entries */ unsigned short int ipmi$gsel_i_rsp$w_free_space; /* Free space left in bytes */ unsigned int ipmi$gsel_i_rsp$l_add_time; /* Most recent addition timestamp */ unsigned int ipmi$gsel_i_rsp$l_erase_time; /* Most recent erase(delete or clear) timestamp */ __union { unsigned char ipmi$gsel_i_rsp$b_op_sup; /* Operation Support */ __struct { unsigned ipmi$gsel_i_rsp$v_alloc_info : 1; /* Get SEL Allocation Information command supported */ unsigned ipmi$gsel_i_rsp$v_res : 1; /* Resereve SEL command supported */ unsigned ipmi$gsel_i_rsp$v_p_add : 1; /* Partial add SEL command supported */ unsigned ipmi$gsel_i_rsp$v_del : 1; /* Delete SEL command supported */ unsigned ipmi$gsel_i_rsp$v_resvd : 3; /* Reserved */ unsigned ipmi$gsel_i_rsp$v_ovr : 1; /* Overflow Flag; Events have been dropped due to lack of space */ } ipmi$gsel_i_rsp$r_fill_65_; } ipmi$gsel_i_rsp$r_fill_64_; } ipmi$r_gsel_i_rsp; /* */ /* IPMI Get SEL Allocation Info command response */ /* */ __struct { char ipmi$gsel_a_rsp$b_fill_1 [1]; unsigned short int ipmi$gsel_a_rsp$w_alloc_units; /* Number of posible allocation units */ unsigned short int ipmi$gsel_a_rsp$w_unit_size; /* Allocation unit size in bytes */ unsigned short int ipmi$gsel_a_rsp$w_f_units; /* Number of free allocation units */ unsigned short int ipmi$gsel_a_rsp$w_f_block; /* Largest free block in allocation units */ unsigned char ipmi$gsel_a_rsp$b_max_size; /* Maximum record size in allocation units */ } ipmi$r_gsel_a_rsp; /* */ /* IPMI Reserve SEL command response */ /* */ __struct { char ipmi$ressel_rsp$b_fill_1 [1]; unsigned short int ipmi$ressel_rsp$w_res_id; /* Reservation id */ } ipmi$r_ressel_rsp; /* */ /* IPMI Get SEL command response */ /* */ __struct { char ipmi$gsel_rsp$b_fill_1 [1]; unsigned short int ipmi$gsel_rsp$w_rec_id; /* Record ID of the next record in the SEL */ unsigned char ipmi$gsel_rsp$b_data [16]; /* Data returned from the Get SEL record */ } ipmi$r_gsel_rsp; /* */ /* IPMI Add SEL command response */ /* */ __struct { char ipmi$asel_rsp$b_fill_1 [1]; unsigned short int ipmi$asel_rsp$w_rec_id; /* Record ID of the SEL record added */ } ipmi$r_asel_rsp; /* */ /* IPMI Delete SEL command response */ /* */ __struct { char ipmi$dsel_rsp$b_fill_1 [1]; unsigned short int ipmi$dsel_rsp$w_rec_id; /* Record ID for the deleted SEL record */ } ipmi$r_dsel_rsp; /* */ /* IPMI Clear SEL command response */ /* */ __struct { char ipmi$csel_rsp$b_fill_1 [1]; __union { unsigned char ipmi$csel_rsp$b_pgrs; __struct { unsigned ipmi$csel_rsp$v_e_prgress : 4; /* Erasure Progress 1 == erase completed */ unsigned ipmi$csel_rsp$v_e_p_rsvd : 4; /* Reserved */ } ipmi$csel_rsp$r_fill_67_; } ipmi$csel_rsp$r_fill_66_; } ipmi$r_csel_rsp; /* */ /* IPMI Get SEL Time command response */ /* */ __struct { char ipmi$gsel_t_rsp$b_fill_1 [1]; unsigned int ipmi$gsel_t_rsp$l_time; /* Present time */ } ipmi$r_gsel_t_rsp; /* */ /* IPMI Get Token Info command response */ /* */ __struct { char ipmi$gtoken_i_rsp$b_fill_1 [1]; __union { unsigned char ipmi$gtoken_i_rsp$b_attr; /* Token attributes */ __struct { unsigned ipmi$gtoken_i_rsp$v_r_guest : 1; /* Read access: Guest */ unsigned ipmi$gtoken_i_rsp$v_r_user : 1; /* Read access: User */ unsigned ipmi$gtoken_i_rsp$v_r_admin : 1; /* Read access: Administrator */ unsigned ipmi$gtoken_i_rsp$v_w_guest : 1; /* Write access: Guest */ unsigned ipmi$gtoken_i_rsp$v_w_user : 1; /* Write access: User */ unsigned ipmi$gtoken_i_rsp$v_w_admin : 1; /* Write access: Administrator */ unsigned ipmi$gtoken_i_rsp$v_checksum : 1; /* Token is checksumed */ unsigned ipmi$gtoken_i_rsp$v_e_info : 1; /* Extended info available (not used) */ } ipmi$gtoken_i_rsp$r_fill_69_; } ipmi$gtoken_i_rsp$r_fill_68_; } ipmi$r_gtkn_i_rsp; /* */ /* IPMI Read Token command response */ /* */ __struct { char ipmi$rtoken_rsp$b_fill_1 [1]; unsigned char ipmi$rtoken_rsp$b_data [256]; /* Possible returned from the read token (typical 30 max) */ } ipmi$r_rtkn_rsp; /* */ /* IPMI Partial Read Token command response */ /* */ __struct { char ipmi$p_rtoken_rsp$b_fill_1 [1]; unsigned char ipmi$p_rtoken_rsp$b_data [256]; /* Possible returned from the partial read token (typical 30 max) */ } ipmi$r_prtkn_rsp; /* */ /* IPMI Lock Property command response */ /* */ __struct { char ipmi$l_prop_rsp$b_fill_1 [1]; unsigned int ipmi$l_prop_rsp$l_lock; /* Lock number if lock succeeds */ unsigned int ipmi$l_prop_rsp$l_lock_time; /* Time the last lock of this property was given */ unsigned char ipmi$l_prop_rsp$b_sw_id [128]; /* Software ID of last requester */ } ipmi$r_lprop_rsp; /* */ /* IPMI Get Property command response */ /* */ __struct { char ipmi$g_prop_rsp$b_fill_1 [1]; unsigned short int ipmi$g_prop_rsp$w_cnt; /* Count of how many Get Property bytes returned */ unsigned char ipmi$g_prop_rsp$b_data [254]; /* Possible returned data from the Get Property */ } ipmi$r_gprop_rsp; } ipmi$r_rspu; } IMBRESPONSE; #if !defined(__VAXC) #define ipmi$rsp$b_ccode ipmi$r_rspu.ipmi$r_rsp.ipmi$rsp$b_ccode #define ipmi$rsp$b_data ipmi$r_rspu.ipmi$r_rsp.ipmi$rsp$b_data #define ipmi$gdevid_rsp$b_dev_id ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$b_dev_id #define ipmi$gdevid_rsp$b_dev_rev ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$b_dev_rev #define ipmi$gdevid_rsp$b_frmw_rev1 ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$b_frmw_rev1 #define ipmi$gdevid_rsp$b_frmw_rev2 ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$b_frmw_rev2 #define ipmi$gdevid_rsp$b_ipmi_ver ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$r_fill_24_.ipmi$gdevid_rsp$b_ipmi_ver #define ipmi$gdevid_rsp$v_ipmi_v_major ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$r_fill_24_.ipmi$gdevid_rsp$r_fill_25_.ipmi$gde\ vid_rsp$v_ipmi_v_major #define ipmi$gdevid_rsp$v_ipmi_v_minor ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$r_fill_24_.ipmi$gdevid_rsp$r_fill_25_.ipmi$gde\ vid_rsp$v_ipmi_v_minor #define ipmi$gdevid_rsp$b_dev_support ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$b_dev_support #define ipmi$gdevid_rsp$b_manuf_id ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$b_manuf_id #define ipmi$gdevid_rsp$b_prod_id ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$b_prod_id #define ipmi$gdevid_rsp$b_ax_firm_rev ipmi$r_rspu.ipmi$r_gdevid_rsp.ipmi$gdevid_rsp$b_ax_firm_rev #define ipmi$gst_rsp$b_rslt1 ipmi$r_rspu.ipmi$r_gst_rsp.ipmi$gst_rsp$b_rslt1 #define ipmi$gst_rsp$b_rslt2 ipmi$r_rspu.ipmi$r_gst_rsp.ipmi$gst_rsp$b_rslt2 #define ipmi$gacpipwr_rsp$b_sys_pwr_st ipmi$r_rspu.ipmi$r_g_acpipwr_rsp.ipmi$gacpipwr_rsp$b_sys_pwr_st #define ipmi$gacpipwr_rsp$b_dev_pwr_st ipmi$r_rspu.ipmi$r_g_acpipwr_rsp.ipmi$gacpipwr_rsp$b_dev_pwr_st #define ipmi$gd_guid_rsp$b_guid ipmi$r_rspu.ipmi$r_gd_guid_rsp.ipmi$gd_guid_rsp$b_guid #define ipmi$g_watchdog_rsp$b_use ipmi$r_rspu.ipmi$r_g_watch_rsp.ipmi$g_watchdog_rsp$b_use #define ipmi$g_watchdog_rsp$b_action ipmi$r_rspu.ipmi$r_g_watch_rsp.ipmi$g_watchdog_rsp$b_action #define ipmi$g_watchdog_rsp$b_pretime ipmi$r_rspu.ipmi$r_g_watch_rsp.ipmi$g_watchdog_rsp$b_pretime #define ipmi$g_watchdog_rsp$b_use_exp ipmi$r_rspu.ipmi$r_g_watch_rsp.ipmi$g_watchdog_rsp$b_use_exp #define ipmi$g_watchdog_rsp$w_i_count ipmi$r_rspu.ipmi$r_g_watch_rsp.ipmi$g_watchdog_rsp$w_i_count #define ipmi$g_watchdog_rsp$w_p_count ipmi$r_rspu.ipmi$r_g_watch_rsp.ipmi$g_watchdog_rsp$w_p_count #define ipmi$gbtcap_rsp$b_max_req ipmi$r_rspu.ipmi$r_gbtcap_rsp.ipmi$gbtcap_rsp$b_max_req #define ipmi$gbtcap_rsp$b_in_size ipmi$r_rspu.ipmi$r_gbtcap_rsp.ipmi$gbtcap_rsp$b_in_size #define ipmi$gbtcap_rsp$b_out_size ipmi$r_rspu.ipmi$r_gbtcap_rsp.ipmi$gbtcap_rsp$b_out_size #define ipmi$gbtcap_rsp$b_max_time ipmi$r_rspu.ipmi$r_gbtcap_rsp.ipmi$gbtcap_rsp$b_max_time #define ipmi$gbtcap_rsp$b_max_rtry ipmi$r_rspu.ipmi$r_gbtcap_rsp.ipmi$gbtcap_rsp$b_max_rtry #define ipmi$gs_guid_rsp$b_guid ipmi$r_rspu.ipmi$r_gs_guid_rsp.ipmi$gs_guid_rsp$b_guid #define ipmi$gch_cap_rsp$b_flgs ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$r_fill_26_.ipmi$gch_cap_rsp$b_flgs #define ipmi$gch_cap_rsp$v_intrude ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$r_fill_26_.ipmi$gch_cap_rsp$r_fill_27_.ipmi$gch_\ cap_rsp$v_intrude #define ipmi$gch_cap_rsp$v_lcked ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$r_fill_26_.ipmi$gch_cap_rsp$r_fill_27_.ipmi$gch_ca\ p_rsp$v_lcked #define ipmi$gch_cap_rsp$v_diag_int ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$r_fill_26_.ipmi$gch_cap_rsp$r_fill_27_.ipmi$gch\ _cap_rsp$v_diag_int #define ipmi$gch_cap_rsp$v_p_lck ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$r_fill_26_.ipmi$gch_cap_rsp$r_fill_27_.ipmi$gch_ca\ p_rsp$v_p_lck #define ipmi$gch_cap_rsp$b_fru_adr ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$b_fru_adr #define ipmi$gch_cap_rsp$b_sdr_adr ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$b_sdr_adr #define ipmi$gch_cap_rsp$b_sel_adr ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$b_sel_adr #define ipmi$gch_cap_rsp$b_sm_adr ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$b_sm_adr #define ipmi$gch_cap_rsp$b_br_adr ipmi$r_rspu.ipmi$r_gch_cap_rsp.ipmi$gch_cap_rsp$b_br_adr #define ipmi$gch_stat_rsp$b_cur_pwr ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_28_.ipmi$gch_stat_rsp$b_cur_pwr #define ipmi$gch_stat_rsp$v_on ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_28_.ipmi$gch_stat_rsp$r_fill_29_.ipmi$gch_s\ tat_rsp$v_on #define ipmi$gch_stat_rsp$v_ovr ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_28_.ipmi$gch_stat_rsp$r_fill_29_.ipmi$gch_\ stat_rsp$v_ovr #define ipmi$gch_stat_rsp$v_p_lock ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_28_.ipmi$gch_stat_rsp$r_fill_29_.ipmi$g\ ch_stat_rsp$v_p_lock #define ipmi$gch_stat_rsp$v_p_flt ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_28_.ipmi$gch_stat_rsp$r_fill_29_.ipmi$gc\ h_stat_rsp$v_p_flt #define ipmi$gch_stat_rsp$v_p_cflt ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_28_.ipmi$gch_stat_rsp$r_fill_29_.ipmi$g\ ch_stat_rsp$v_p_cflt #define ipmi$gch_stat_rsp$v_p_policy ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_28_.ipmi$gch_stat_rsp$r_fill_29_.ipmi\ $gch_stat_rsp$v_p_policy #define ipmi$gch_stat_rsp$b_lst_pwr ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_30_.ipmi$gch_stat_rsp$b_lst_pwr #define ipmi$gch_stat_rsp$v_ac ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_30_.ipmi$gch_stat_rsp$r_fill_31_.ipmi$gch_s\ tat_rsp$v_ac #define ipmi$gch_stat_rsp$v_l_ovr ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_30_.ipmi$gch_stat_rsp$r_fill_31_.ipmi$gc\ h_stat_rsp$v_l_ovr #define ipmi$gch_stat_rsp$v_l_p_lck ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_30_.ipmi$gch_stat_rsp$r_fill_31_.ipmi$\ gch_stat_rsp$v_l_p_lck #define ipmi$gch_stat_rsp$v_l_p_flt ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_30_.ipmi$gch_stat_rsp$r_fill_31_.ipmi$\ gch_stat_rsp$v_l_p_flt #define ipmi$gch_stat_rsp$v_ipmi ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_30_.ipmi$gch_stat_rsp$r_fill_31_.ipmi$gch\ _stat_rsp$v_ipmi #define ipmi$gch_stat_rsp$b_chas_sta ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_32_.ipmi$gch_stat_rsp$b_chas_sta #define ipmi$gch_stat_rsp$v_intrude ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_32_.ipmi$gch_stat_rsp$r_fill_33_.ipmi$\ gch_stat_rsp$v_intrude #define ipmi$gch_stat_rsp$v_fp_lck ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_32_.ipmi$gch_stat_rsp$r_fill_33_.ipmi$g\ ch_stat_rsp$v_fp_lck #define ipmi$gch_stat_rsp$v_drive ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_32_.ipmi$gch_stat_rsp$r_fill_33_.ipmi$gc\ h_stat_rsp$v_drive #define ipmi$gch_stat_rsp$v_fan ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$r_fill_32_.ipmi$gch_stat_rsp$r_fill_33_.ipmi$gch_\ stat_rsp$v_fan #define ipmi$gch_stat_rsp$b_frnt_panl ipmi$r_rspu.ipmi$r_gch_stat_rsp.ipmi$gch_stat_rsp$b_frnt_panl #define ipmi$g_ev_r_rsp$b_slave_adr ipmi$r_rspu.ipmi$r_g_evr_rsp.ipmi$g_ev_r_rsp$b_slave_adr #define ipmi$g_ev_r_rsp$b_b2 ipmi$r_rspu.ipmi$r_g_evr_rsp.ipmi$g_ev_r_rsp$r_fill_34_.ipmi$g_ev_r_rsp$b_b2 #define ipmi$g_ev_r_rsp$v_lun ipmi$r_rspu.ipmi$r_g_evr_rsp.ipmi$g_ev_r_rsp$r_fill_34_.ipmi$g_ev_r_rsp$r_fill_35_.ipmi$g_ev_r_rsp$v_\ lun #define ipmi$gd_sdr_i_rsp$b_count ipmi$r_rspu.ipmi$r_gdsdr_i_rsp.ipmi$gd_sdr_i_rsp$b_count #define ipmi$gd_sdr_i_rsp$b_flag ipmi$r_rspu.ipmi$r_gdsdr_i_rsp.ipmi$gd_sdr_i_rsp$r_fill_36_.ipmi$gd_sdr_i_rsp$b_flag #define ipmi$gd_sdr_i_rsp$v_lun0 ipmi$r_rspu.ipmi$r_gdsdr_i_rsp.ipmi$gd_sdr_i_rsp$r_fill_36_.ipmi$gd_sdr_i_rsp$r_fill_37_.ipmi$gd_s\ dr_i_rsp$v_lun0 #define ipmi$gd_sdr_i_rsp$v_lun1 ipmi$r_rspu.ipmi$r_gdsdr_i_rsp.ipmi$gd_sdr_i_rsp$r_fill_36_.ipmi$gd_sdr_i_rsp$r_fill_37_.ipmi$gd_s\ dr_i_rsp$v_lun1 #define ipmi$gd_sdr_i_rsp$v_lun2 ipmi$r_rspu.ipmi$r_gdsdr_i_rsp.ipmi$gd_sdr_i_rsp$r_fill_36_.ipmi$gd_sdr_i_rsp$r_fill_37_.ipmi$gd_s\ dr_i_rsp$v_lun2 #define ipmi$gd_sdr_i_rsp$v_lun3 ipmi$r_rspu.ipmi$r_gdsdr_i_rsp.ipmi$gd_sdr_i_rsp$r_fill_36_.ipmi$gd_sdr_i_rsp$r_fill_37_.ipmi$gd_s\ dr_i_rsp$v_lun3 #define ipmi$gd_sdr_i_rsp$v_pop ipmi$r_rspu.ipmi$r_gdsdr_i_rsp.ipmi$gd_sdr_i_rsp$r_fill_36_.ipmi$gd_sdr_i_rsp$r_fill_37_.ipmi$gd_sd\ r_i_rsp$v_pop #define ipmi$gd_sdr_i_rsp$l_change ipmi$r_rspu.ipmi$r_gdsdr_i_rsp.ipmi$gd_sdr_i_rsp$l_change #define ipmi$g_sen_rf_rsp$b_nread ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$b_nread #define ipmi$g_sen_rf_rsp$b_m_ls ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$b_m_ls #define ipmi$g_sen_rf_rsp$b_byte4 ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_38_.ipmi$g_sen_rf_rsp$b_byte4 #define ipmi$g_sen_rf_rsp$v_tol ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_38_.ipmi$g_sen_rf_rsp$r_fill_39_.ipmi$g_sen_r\ f_rsp$v_tol #define ipmi$g_sen_rf_rsp$v_m_ms ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_38_.ipmi$g_sen_rf_rsp$r_fill_39_.ipmi$g_sen_\ rf_rsp$v_m_ms #define ipmi$g_sen_rf_rsp$b_b_ls ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$b_b_ls #define ipmi$g_sen_rf_rsp$b_byte6 ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_40_.ipmi$g_sen_rf_rsp$b_byte6 #define ipmi$g_sen_rf_rsp$v_acc_ls ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_40_.ipmi$g_sen_rf_rsp$r_fill_41_.ipmi$g_se\ n_rf_rsp$v_acc_ls #define ipmi$g_sen_rf_rsp$v_b_ms ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_40_.ipmi$g_sen_rf_rsp$r_fill_41_.ipmi$g_sen_\ rf_rsp$v_b_ms #define ipmi$g_sen_rf_rsp$b_byte7 ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_42_.ipmi$g_sen_rf_rsp$b_byte7 #define ipmi$g_sen_rf_rsp$v_rsvd ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_42_.ipmi$g_sen_rf_rsp$r_fill_43_.ipmi$g_sen_\ rf_rsp$v_rsvd #define ipmi$g_sen_rf_rsp$v_acc_exp ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_42_.ipmi$g_sen_rf_rsp$r_fill_43_.ipmi$g_s\ en_rf_rsp$v_acc_exp #define ipmi$g_sen_rf_rsp$v_acc_ms ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_42_.ipmi$g_sen_rf_rsp$r_fill_43_.ipmi$g_se\ n_rf_rsp$v_acc_ms #define ipmi$g_sen_rf_rsp$b_byte8 ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_44_.ipmi$g_sen_rf_rsp$b_byte8 #define ipmi$g_sen_rf_rsp$v_b_exp ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_44_.ipmi$g_sen_rf_rsp$r_fill_45_.ipmi$g_sen\ _rf_rsp$v_b_exp #define ipmi$g_sen_rf_rsp$v_result ipmi$r_rspu.ipmi$r_g_srf_rsp.ipmi$g_sen_rf_rsp$r_fill_44_.ipmi$g_sen_rf_rsp$r_fill_45_.ipmi$g_se\ n_rf_rsp$v_result #define ipmi$g_sen_h_rsp$b_pos ipmi$r_rspu.ipmi$r_g_sh_rsp.ipmi$g_sen_h_rsp$b_pos #define ipmi$g_sen_h_rsp$b_neg ipmi$r_rspu.ipmi$r_g_sh_rsp.ipmi$g_sen_h_rsp$b_neg #define ipmi$g_sen_th_rsp$b_b2 ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$r_fill_46_.ipmi$g_sen_th_rsp$b_b2 #define ipmi$g_sen_th_rsp$v_l_nc_tf ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$r_fill_46_.ipmi$g_sen_th_rsp$r_fill_47_.ipmi$g_s\ en_th_rsp$v_l_nc_tf #define ipmi$g_sen_th_rsp$v_l_c_tf ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$r_fill_46_.ipmi$g_sen_th_rsp$r_fill_47_.ipmi$g_se\ n_th_rsp$v_l_c_tf #define ipmi$g_sen_th_rsp$v_l_nr_tf ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$r_fill_46_.ipmi$g_sen_th_rsp$r_fill_47_.ipmi$g_s\ en_th_rsp$v_l_nr_tf #define ipmi$g_sen_th_rsp$v_u_nc_tf ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$r_fill_46_.ipmi$g_sen_th_rsp$r_fill_47_.ipmi$g_s\ en_th_rsp$v_u_nc_tf #define ipmi$g_sen_th_rsp$v_u_c_tf ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$r_fill_46_.ipmi$g_sen_th_rsp$r_fill_47_.ipmi$g_se\ n_th_rsp$v_u_c_tf #define ipmi$g_sen_th_rsp$v_u_nr_tf ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$r_fill_46_.ipmi$g_sen_th_rsp$r_fill_47_.ipmi$g_s\ en_th_rsp$v_u_nr_tf #define ipmi$g_sen_th_rsp$b_l_nc_thres ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$b_l_nc_thres #define ipmi$g_sen_th_rsp$b_l_c_thres ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$b_l_c_thres #define ipmi$g_sen_th_rsp$b_l_nr_thres ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$b_l_nr_thres #define ipmi$g_sen_th_rsp$b_u_nc_thres ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$b_u_nc_thres #define ipmi$g_sen_th_rsp$b_u_c_thres ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$b_u_c_thres #define ipmi$g_sen_th_rsp$b_u_nr_thres ipmi$r_rspu.ipmi$r_g_sth_rsp.ipmi$g_sen_th_rsp$b_u_nr_thres #define ipmi$g_sen_ee_rsp$b_b2 ipmi$r_rspu.ipmi$r_g_see_rsp.ipmi$g_sen_ee_rsp$r_fill_48_.ipmi$g_sen_ee_rsp$b_b2 #define ipmi$g_sen_ee_rsp$v_rsvd ipmi$r_rspu.ipmi$r_g_see_rsp.ipmi$g_sen_ee_rsp$r_fill_48_.ipmi$g_sen_ee_rsp$r_fill_49_.ipmi$g_sen_\ ee_rsp$v_rsvd #define ipmi$g_sen_ee_rsp$v_scan_dis ipmi$r_rspu.ipmi$r_g_see_rsp.ipmi$g_sen_ee_rsp$r_fill_48_.ipmi$g_sen_ee_rsp$r_fill_49_.ipmi$g_\ sen_ee_rsp$v_scan_dis #define ipmi$g_sen_ee_rsp$v_all_dis ipmi$r_rspu.ipmi$r_g_see_rsp.ipmi$g_sen_ee_rsp$r_fill_48_.ipmi$g_sen_ee_rsp$r_fill_49_.ipmi$g_s\ en_ee_rsp$v_all_dis #define ipmi$g_sen_ee_rsp$w_assert ipmi$r_rspu.ipmi$r_g_see_rsp.ipmi$g_sen_ee_rsp$w_assert #define ipmi$g_sen_ee_rsp$w_deassert ipmi$r_rspu.ipmi$r_g_see_rsp.ipmi$g_sen_ee_rsp$w_deassert #define ipmi$g_sen_es_rsp$b_b2 ipmi$r_rspu.ipmi$r_g_ses_rsp.ipmi$g_sen_es_rsp$r_fill_50_.ipmi$g_sen_es_rsp$b_b2 #define ipmi$g_sen_es_rsp$v_rsvd ipmi$r_rspu.ipmi$r_g_ses_rsp.ipmi$g_sen_es_rsp$r_fill_50_.ipmi$g_sen_es_rsp$r_fill_51_.ipmi$g_sen_\ es_rsp$v_rsvd #define ipmi$g_sen_es_rsp$v_busy ipmi$r_rspu.ipmi$r_g_ses_rsp.ipmi$g_sen_es_rsp$r_fill_50_.ipmi$g_sen_es_rsp$r_fill_51_.ipmi$g_sen_\ es_rsp$v_busy #define ipmi$g_sen_es_rsp$v_scan_dis ipmi$r_rspu.ipmi$r_g_ses_rsp.ipmi$g_sen_es_rsp$r_fill_50_.ipmi$g_sen_es_rsp$r_fill_51_.ipmi$g_\ sen_es_rsp$v_scan_dis #define ipmi$g_sen_es_rsp$v_all_dis ipmi$r_rspu.ipmi$r_g_ses_rsp.ipmi$g_sen_es_rsp$r_fill_50_.ipmi$g_sen_es_rsp$r_fill_51_.ipmi$g_s\ en_es_rsp$v_all_dis #define ipmi$g_sen_es_rsp$w_assert ipmi$r_rspu.ipmi$r_g_ses_rsp.ipmi$g_sen_es_rsp$w_assert #define ipmi$g_sen_es_rsp$w_deassert ipmi$r_rspu.ipmi$r_g_ses_rsp.ipmi$g_sen_es_rsp$w_deassert #define ipmi$g_sen_r_rsp$b_value ipmi$r_rspu.ipmi$r_g_sr_rsp.ipmi$g_sen_r_rsp$b_value #define ipmi$g_sen_r_rsp$b_b3 ipmi$r_rspu.ipmi$r_g_sr_rsp.ipmi$g_sen_r_rsp$r_fill_52_.ipmi$g_sen_r_rsp$b_b3 #define ipmi$g_sen_r_rsp$v_rsvd ipmi$r_rspu.ipmi$r_g_sr_rsp.ipmi$g_sen_r_rsp$r_fill_52_.ipmi$g_sen_r_rsp$r_fill_53_.ipmi$g_sen_r_rs\ p$v_rsvd #define ipmi$g_sen_r_rsp$v_busy ipmi$r_rspu.ipmi$r_g_sr_rsp.ipmi$g_sen_r_rsp$r_fill_52_.ipmi$g_sen_r_rsp$r_fill_53_.ipmi$g_sen_r_rs\ p$v_busy #define ipmi$g_sen_r_rsp$v_scan_dis ipmi$r_rspu.ipmi$r_g_sr_rsp.ipmi$g_sen_r_rsp$r_fill_52_.ipmi$g_sen_r_rsp$r_fill_53_.ipmi$g_sen_\ r_rsp$v_scan_dis #define ipmi$g_sen_r_rsp$v_all_dis ipmi$r_rspu.ipmi$r_g_sr_rsp.ipmi$g_sen_r_rsp$r_fill_52_.ipmi$g_sen_r_rsp$r_fill_53_.ipmi$g_sen_r\ _rsp$v_all_dis #define ipmi$g_sen_r_rsp$w_assert ipmi$r_rspu.ipmi$r_g_sr_rsp.ipmi$g_sen_r_rsp$w_assert #define ipmi$g_sen_r_rsp$w_deassert ipmi$r_rspu.ipmi$r_g_sr_rsp.ipmi$g_sen_r_rsp$w_deassert #define ipmi$g_sen_ty_rsp$b_sensor_type ipmi$r_rspu.ipmi$r_g_sty_rsp.ipmi$g_sen_ty_rsp$b_sensor_type #define ipmi$g_sen_ty_rsp$b_b3 ipmi$r_rspu.ipmi$r_g_sty_rsp.ipmi$g_sen_ty_rsp$r_fill_54_.ipmi$g_sen_ty_rsp$b_b3 #define ipmi$g_sen_ty_rsp$v_event_type ipmi$r_rspu.ipmi$r_g_sty_rsp.ipmi$g_sen_ty_rsp$r_fill_54_.ipmi$g_sen_ty_rsp$r_fill_55_.ipmi$\ g_sen_ty_rsp$v_event_type #define ipmi$gfru_i_rsp$w_area_sze ipmi$r_rspu.ipmi$r_gfru_i_rsp.ipmi$gfru_i_rsp$w_area_sze #define ipmi$gfru_i_rsp$b_flg ipmi$r_rspu.ipmi$r_gfru_i_rsp.ipmi$gfru_i_rsp$r_fill_56_.ipmi$gfru_i_rsp$b_flg #define ipmi$gfru_i_rsp$v_wrd_acc ipmi$r_rspu.ipmi$r_gfru_i_rsp.ipmi$gfru_i_rsp$r_fill_56_.ipmi$gfru_i_rsp$r_fill_57_.ipmi$gfru_i_r\ sp$v_wrd_acc #define ipmi$rfru_rsp$b_cnt ipmi$r_rspu.ipmi$r_rfru_rsp.ipmi$rfru_rsp$b_cnt #define ipmi$rfru_rsp$b_data ipmi$r_rspu.ipmi$r_rfru_rsp.ipmi$rfru_rsp$b_data #define ipmi$gsdr_i_rsp$b_sdr_ver ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_58_.ipmi$gsdr_i_rsp$b_sdr_ver #define ipmi$gsdr_i_rsp$v_sdr_v_major ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_58_.ipmi$gsdr_i_rsp$r_fill_59_.ipmi$gsdr\ _i_rsp$v_sdr_v_major #define ipmi$gsdr_i_rsp$v_sdr_v_minor ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_58_.ipmi$gsdr_i_rsp$r_fill_59_.ipmi$gsdr\ _i_rsp$v_sdr_v_minor #define ipmi$gsdr_i_rsp$w_record_cnt ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$w_record_cnt #define ipmi$gsdr_i_rsp$w_free_space ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$w_free_space #define ipmi$gsdr_i_rsp$l_add_time ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$l_add_time #define ipmi$gsdr_i_rsp$l_erase_time ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$l_erase_time #define ipmi$gsdr_i_rsp$b_op_sup ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_60_.ipmi$gsdr_i_rsp$b_op_sup #define ipmi$gsdr_i_rsp$v_alloc_info ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_60_.ipmi$gsdr_i_rsp$r_fill_61_.ipmi$gsdr_\ i_rsp$v_alloc_info #define ipmi$gsdr_i_rsp$v_res ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_60_.ipmi$gsdr_i_rsp$r_fill_61_.ipmi$gsdr_i_rsp$v\ _res #define ipmi$gsdr_i_rsp$v_p_add ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_60_.ipmi$gsdr_i_rsp$r_fill_61_.ipmi$gsdr_i_rsp\ $v_p_add #define ipmi$gsdr_i_rsp$v_del ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_60_.ipmi$gsdr_i_rsp$r_fill_61_.ipmi$gsdr_i_rsp$v\ _del #define ipmi$gsdr_i_rsp$v_nonmodal ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_60_.ipmi$gsdr_i_rsp$r_fill_61_.ipmi$gsdr_i_\ rsp$v_nonmodal #define ipmi$gsdr_i_rsp$v_modal ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_60_.ipmi$gsdr_i_rsp$r_fill_61_.ipmi$gsdr_i_rsp\ $v_modal #define ipmi$gsdr_i_rsp$v_ovr ipmi$r_rspu.ipmi$r_gsdr_i_rsp.ipmi$gsdr_i_rsp$r_fill_60_.ipmi$gsdr_i_rsp$r_fill_61_.ipmi$gsdr_i_rsp$v\ _ovr #define ipmi$gsdr_a_rsp$w_alloc ipmi$r_rspu.ipmi$r_gsdr_a_rsp.ipmi$gsdr_a_rsp$w_alloc #define ipmi$gsdr_a_rsp$w_unit_size ipmi$r_rspu.ipmi$r_gsdr_a_rsp.ipmi$gsdr_a_rsp$w_unit_size #define ipmi$gsdr_a_rsp$w_f_units ipmi$r_rspu.ipmi$r_gsdr_a_rsp.ipmi$gsdr_a_rsp$w_f_units #define ipmi$gsdr_a_rsp$w_f_block ipmi$r_rspu.ipmi$r_gsdr_a_rsp.ipmi$gsdr_a_rsp$w_f_block #define ipmi$gsdr_a_rsp$b_max_size ipmi$r_rspu.ipmi$r_gsdr_a_rsp.ipmi$gsdr_a_rsp$b_max_size #define ipmi$ressdr_r_rsp$w_res_id ipmi$r_rspu.ipmi$r_ressdr_r_rsp.ipmi$ressdr_r_rsp$w_res_id #define ipmi$gsdr_rsp$w_rec_id ipmi$r_rspu.ipmi$r_gsdr_rsp.ipmi$gsdr_rsp$w_rec_id #define ipmi$gsdr_rsp$b_data ipmi$r_rspu.ipmi$r_gsdr_rsp.ipmi$gsdr_rsp$b_data #define ipmi$gsdr_t_rsp$l_time ipmi$r_rspu.ipmi$r_gsdr_t_rsp.ipmi$gsdr_t_rsp$l_time #define ipmi$gsel_i_rsp$b_sel_ver ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_62_.ipmi$gsel_i_rsp$b_sel_ver #define ipmi$gsel_i_rsp$v_sel_v_major ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_62_.ipmi$gsel_i_rsp$r_fill_63_.ipmi$gsel\ _i_rsp$v_sel_v_major #define ipmi$gsel_i_rsp$v_sel_v_minor ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_62_.ipmi$gsel_i_rsp$r_fill_63_.ipmi$gsel\ _i_rsp$v_sel_v_minor #define ipmi$gsel_i_rsp$w_entry_cnt ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$w_entry_cnt #define ipmi$gsel_i_rsp$w_free_space ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$w_free_space #define ipmi$gsel_i_rsp$l_add_time ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$l_add_time #define ipmi$gsel_i_rsp$l_erase_time ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$l_erase_time #define ipmi$gsel_i_rsp$b_op_sup ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_64_.ipmi$gsel_i_rsp$b_op_sup #define ipmi$gsel_i_rsp$v_alloc_info ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_64_.ipmi$gsel_i_rsp$r_fill_65_.ipmi$gsel_\ i_rsp$v_alloc_info #define ipmi$gsel_i_rsp$v_res ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_64_.ipmi$gsel_i_rsp$r_fill_65_.ipmi$gsel_i_rsp$v\ _res #define ipmi$gsel_i_rsp$v_p_add ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_64_.ipmi$gsel_i_rsp$r_fill_65_.ipmi$gsel_i_rsp\ $v_p_add #define ipmi$gsel_i_rsp$v_del ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_64_.ipmi$gsel_i_rsp$r_fill_65_.ipmi$gsel_i_rsp$v\ _del #define ipmi$gsel_i_rsp$v_ovr ipmi$r_rspu.ipmi$r_gsel_i_rsp.ipmi$gsel_i_rsp$r_fill_64_.ipmi$gsel_i_rsp$r_fill_65_.ipmi$gsel_i_rsp$v\ _ovr #define ipmi$gsel_a_rsp$w_alloc_units ipmi$r_rspu.ipmi$r_gsel_a_rsp.ipmi$gsel_a_rsp$w_alloc_units #define ipmi$gsel_a_rsp$w_unit_size ipmi$r_rspu.ipmi$r_gsel_a_rsp.ipmi$gsel_a_rsp$w_unit_size #define ipmi$gsel_a_rsp$w_f_units ipmi$r_rspu.ipmi$r_gsel_a_rsp.ipmi$gsel_a_rsp$w_f_units #define ipmi$gsel_a_rsp$w_f_block ipmi$r_rspu.ipmi$r_gsel_a_rsp.ipmi$gsel_a_rsp$w_f_block #define ipmi$gsel_a_rsp$b_max_size ipmi$r_rspu.ipmi$r_gsel_a_rsp.ipmi$gsel_a_rsp$b_max_size #define ipmi$ressel_rsp$w_res_id ipmi$r_rspu.ipmi$r_ressel_rsp.ipmi$ressel_rsp$w_res_id #define ipmi$gsel_rsp$w_rec_id ipmi$r_rspu.ipmi$r_gsel_rsp.ipmi$gsel_rsp$w_rec_id #define ipmi$gsel_rsp$b_data ipmi$r_rspu.ipmi$r_gsel_rsp.ipmi$gsel_rsp$b_data #define ipmi$asel_rsp$w_rec_id ipmi$r_rspu.ipmi$r_asel_rsp.ipmi$asel_rsp$w_rec_id #define ipmi$dsel_rsp$w_rec_id ipmi$r_rspu.ipmi$r_dsel_rsp.ipmi$dsel_rsp$w_rec_id #define ipmi$csel_rsp$v_e_prgress ipmi$r_rspu.ipmi$r_csel_rsp.ipmi$csel_rsp$r_fill_66_.ipmi$csel_rsp$r_fill_67_.ipmi$csel_rsp$v_e_p\ rgress #define ipmi$gsel_t_rsp$l_time ipmi$r_rspu.ipmi$r_gsel_t_rsp.ipmi$gsel_t_rsp$l_time #define ipmi$gtoken_i_rsp$b_attr ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$b_attr #define ipmi$gtoken_i_rsp$v_r_guest ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$r_fill_69_.ipmi$gt\ oken_i_rsp$v_r_guest #define ipmi$gtoken_i_rsp$v_r_user ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$r_fill_69_.ipmi$gto\ ken_i_rsp$v_r_user #define ipmi$gtoken_i_rsp$v_r_admin ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$r_fill_69_.ipmi$gt\ oken_i_rsp$v_r_admin #define ipmi$gtoken_i_rsp$v_w_guest ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$r_fill_69_.ipmi$gt\ oken_i_rsp$v_w_guest #define ipmi$gtoken_i_rsp$v_w_user ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$r_fill_69_.ipmi$gto\ ken_i_rsp$v_w_user #define ipmi$gtoken_i_rsp$v_w_admin ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$r_fill_69_.ipmi$gt\ oken_i_rsp$v_w_admin #define ipmi$gtoken_i_rsp$v_checksum ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$r_fill_69_.ipmi$g\ token_i_rsp$v_checksum #define ipmi$gtoken_i_rsp$v_e_info ipmi$r_rspu.ipmi$r_gtkn_i_rsp.ipmi$gtoken_i_rsp$r_fill_68_.ipmi$gtoken_i_rsp$r_fill_69_.ipmi$gto\ ken_i_rsp$v_e_info #define ipmi$rtoken_rsp$b_data ipmi$r_rspu.ipmi$r_rtkn_rsp.ipmi$rtoken_rsp$b_data #define ipmi$p_rtoken_rsp$b_data ipmi$r_rspu.ipmi$r_prtkn_rsp.ipmi$p_rtoken_rsp$b_data #define ipmi$l_prop_rsp$l_lock ipmi$r_rspu.ipmi$r_lprop_rsp.ipmi$l_prop_rsp$l_lock #define ipmi$l_prop_rsp$l_lock_time ipmi$r_rspu.ipmi$r_lprop_rsp.ipmi$l_prop_rsp$l_lock_time #define ipmi$l_prop_rsp$b_sw_id ipmi$r_rspu.ipmi$r_lprop_rsp.ipmi$l_prop_rsp$b_sw_id #define ipmi$g_prop_rsp$w_cnt ipmi$r_rspu.ipmi$r_gprop_rsp.ipmi$g_prop_rsp$w_cnt #define ipmi$g_prop_rsp$b_data ipmi$r_rspu.ipmi$r_gprop_rsp.ipmi$g_prop_rsp$b_data #endif /* #if !defined(__VAXC) */ /* */ /* */ /* + */ /* IPMI IMB command codes */ /* - */ /* */ #define IPMI$K_CMD_G_DEVICE_ID 1 /* Get device ID command */ #define IPMI$K_CMD_COLD_RESET 2 /* Cold reset (unsupported) */ #define IPMI$K_CMD_WARM_RESET 3 /* Warm reset (unsupported) */ #define IPMI$K_CMD_G_SELFTEST 4 /* Get selftest results */ #define IPMI$K_CMD_MFG_ON 5 /* Manufacturing Test on (unsupported) */ #define IPMI$K_CMD_S_ACPI_POWER 6 /* Set acpi power state */ #define IPMI$K_CMD_G_ACPI_POWER 7 /* Get acpi power state */ #define IPMI$K_CMD_G_DEVICE_GUID 8 /* Get device guid */ #define IPMI$K_CMD_R_WATCHDOG 34 /* Reset Watchdog timer (unsupported) */ #define IPMI$K_CMD_S_WATCHDOG 36 /* Set Watchdog timer (unsupported) */ #define IPMI$K_CMD_G_WATCHDOG 37 /* Get Watchdog timer */ #define IPMI$K_CMD_G_BT_CAPABILITY 54 /* Get bt capability */ #define IPMI$K_CMD_G_SYSTEM_GUID 55 /* Get system guid */ #define IPMI$K_CMD_G_CHASSIS_CAPA 0 /* Get chassis capability */ #define IPMI$K_CMD_G_CHASSIS_STAT 1 /* Get chassis status */ #define IPMI$K_CMD_CHASSIS_CTRL 2 /* Chassis control */ #define IPMI$K_CMD_CHASSIS_RESET 3 /* Chassis reset (obsolete) */ #define IPMI$K_CMD_CHAS_ID 4 /* Chassis Identify command */ #define IPMI$K_CMD_S_EVENT_RCVR 0 /* Set event receiver */ #define IPMI$K_CMD_G_EVENT_RCVR 1 /* Get event receiver */ #define IPMI$K_CMD_PLATFORM_EVENT 2 /* Platform event or event messenger */ #define IPMI$K_CMD_G_DEV_SDR_INFO 32 /* Get Device SDR info */ #define IPMI$K_CMD_G_DEV_SDR 33 /* Get Device SDR */ #define IPMI$K_CMD_RES_DEV_SDR_REPOS 34 /* Reserve Device SDR repository */ #define IPMI$K_CMD_G_SENSOR_READ_FAC 35 /* Get sensor reading factors */ #define IPMI$K_CMD_S_SENSOR_HYSTER 36 /* Set sensor hysteresis */ #define IPMI$K_CMD_G_SENSOR_HYSTER 37 /* Get sensor hysteresis */ #define IPMI$K_CMD_S_SENSOR_THRES 38 /* Set sensor threshold */ #define IPMI$K_CMD_G_SENSOR_THRES 39 /* Get sensor threshold */ #define IPMI$K_CMD_S_SENSOR_EVENT_ENA 40 /* Set sensor event enable */ #define IPMI$K_CMD_G_SENSOR_EVENT_ENA 41 /* Get sensor event enable */ #define IPMI$K_CMD_RARM_SENSOR_EVENT 42 /* Re-arm sensor events */ #define IPMI$K_CMD_G_SENSOR_EVENT_STAT 43 /* Get sensor event status */ #define IPMI$K_CMD_G_SENSOR_READING 45 /* Get sensor reading */ #define IPMI$K_CMD_S_SENSOR_TYPE 46 /* Set sensor type */ #define IPMI$K_CMD_G_SENSOR_TYPE 47 /* Get sensor type */ #define IPMI$K_CMD_G_FRU_INV 16 /* Get FRU Inventory Area command */ #define IPMI$K_CMD_READ_FRU 17 /* Read FRU data command */ #define IPMI$K_CMD_G_SDR_REPOS_INFO 32 /* Get SDR repository info */ #define IPMI$K_CMD_G_SDR_REPOS_ALLOC 33 /* Get SDR repository allocation info */ #define IPMI$K_CMD_RES_SDR_REPOS 34 /* Reserve SDR repository */ #define IPMI$K_CMD_G_SDR_ENTRY 35 /* Get SDR entry command */ #define IPMI$K_CMD_G_SDR_REPOS_TIME 40 /* Get SDR repository Time */ #define IPMI$K_CMD_G_SEL_INFO 64 /* Get SEL info */ #define IPMI$K_CMD_G_SEL_ALLOC_INFO 65 /* Get SEL allocation info */ #define IPMI$K_CMD_RES_SEL 66 /* Reserve SEL */ #define IPMI$K_CMD_G_SEL_ENTRY 67 /* Get SEL entry command */ #define IPMI$K_CMD_A_SEL_ENTRY 68 /* Add SEL entry command */ #define IPMI$K_CMD_DEL_SEL_ENTRY 70 /* delete SEL entry command */ #define IPMI$K_CMD_CLEAR_SEL 71 /* Clear SEL command */ #define IPMI$K_CMD_G_SEL_TIME 72 /* Get SEL time */ #define IPMI$K_CMD_S_SEL_TIME 73 /* Set SEL time */ #define IPMI$K_CMD_A_FPL_ENTRY 196 /* Add FPL entry command */ #define IPMI$K_CMD_GET_TOKEN_INFO 1 /* Get Token Info command */ #define IPMI$K_CMD_READ_TOKEN 2 /* Read Token command */ #define IPMI$K_CMD_PART_READ_TOKEN 8 /* Partial Read Token command */ #define IPMI$K_CMD_LOCK_PROPERTY 0 /* Lock Property command */ #define IPMI$K_CMD_UNLOCK_PROPERTY 1 /* Unlock Property command */ #define IPMI$K_CMD_GET_PROPERTY 2 /* Get Property command */ /* */ /* */ /* + */ /* IPMI IMB Completion Codes */ /* - */ /* These are the generic Completion codes. Codes specific to a */ /* message are listed below. */ /* */ #define IPMI$K_CCODE_OK 0 /* Good response */ #define IPMI$K_CCODE_NO_DATA 128 /* No data */ #define IPMI$K_CCODE_BUSY 192 /* device is busy */ #define IPMI$K_CCODE_CMD_INVALID 193 #define IPMI$K_CCODE_CMD_LUN_INVALID 194 #define IPMI$K_CCODE_TIMEOUT 195 #define IPMI$K_CCODE_NOSPACE 196 #define IPMI$K_CCODE_RESID_BAD 197 #define IPMI$K_CCODE_DATA_TRUNC 198 #define IPMI$K_CCODE_DATALEN_INVALID 199 #define IPMI$K_CCODE_DATALEN_EXCEED 200 #define IPMI$K_CCODE_PARAM_BAD_RANGE 201 #define IPMI$K_CCODE_DATA_BAD_RET 202 #define IPMI$K_CCODE_OBJ_NOEXIST 203 #define IPMI$K_CCODE_DATAFIELD_INVALID 204 #define IPMI$K_CCODE_CMD_OBJ_INVALID 205 #define IPMI$K_CCODE_NO_RESPONSE 206 #define IPMI$K_CCODE_DUP_REQUEST 207 #define IPMI$K_CCODE_SDR_NO_RESPONSE 208 #define IPMI$K_CCODE_FW_NO_RESPONSE 209 #define IPMI$K_CCODE_INIT_NO_RESPONSE 210 #define IPMI$K_CCODE_NO_DEST 211 #define IPMI$K_CCODE_NO_PRIV 212 #define IPMI$K_CCODE_NOSUPPORT_STATE 213 #define IPMI$K_CCODE_DISABLED 214 #define IPMI$K_CCODE_UNKNOWN 255 /* Unknown Completion code */ /* */ /* */ /* Specific Completion codes */ /* */ #define IPMI$K_CCODE_TOKEN_BAD_CHKSUM 112 /* Invalid Token checksum */ #define IPMI$K_CCODE_FRU_BUSY 129 /* FRU device is busy */ #define IPMI$K_CCODE_SEL_ERASING 129 /* Cannot execute command, SEL erase in progress */ #define IPMI$K_CCODE_SEL_NOSUPPORT 128 /* SEL Option not supported */ /* */ /* */ /* */ /* */ /* + */ /* These are the QIO IOCTL commands that the IPMI driver supports */ /* - */ /* */ #define IPMI$K_IOCTL_SEND_MESSAGE_CMD 100 #define IPMI$K_IOCTL_IPMI_VERSION_CMD 101 /* */ /* + */ /* IPMI Slave Address */ /* - */ /* */ #define IPMI$K_BMC_SA 32 /* BMC slave address */ #define IPMI$K_MP_SA 70 /* MP slave address (foundation systems) */ /* */ /* + */ /* The Logical Unit Number LUN. This is a sub-address that allows */ /* messages to be routed to different "logical units" that reside */ /* behind the same I2C slave address. */ /* - */ /* */ #define IPMI$K_BMC_LUN 0 /* BMC only responds to this LUN */ #define IPMI$K_OEM1_LUN 1 /* OEM1 defined LUN */ #define IPMI$K_SMS_LUN 2 /* BMC forwards to SMS buffer */ #define IPMI$K_OEM2_LUN 3 /* OEM2 defined LUN */ /* */ /* + */ /* IPMI Network Function Codes. */ /* The network function is used to cluster commands into functional */ /* command sets. In a parsing hierarchy, the LUN field may be thought */ /* of as the selector for a particular Network Function handler in */ /* the node, and the Network Function may be considered the selector */ /* for a particular command set handler within the node. */ /* - */ /* */ #define IPMI$K_CHASSIS_NETFN 0 #define IPMI$K_BRIDGE_NETFN 2 #define IPMI$K_SE_NETFN 4 #define IPMI$K_APP_NETFN 6 #define IPMI$K_FIRMWARE_NETFN 8 #define IPMI$K_STORAGE_NETFN 10 #define IPMI$K_TRANSPORT_NETFN 12 #define IPMI$K_OEM30_NETFN 48 #define IPMI$K_OEM32_NETFN 50 #define IPMI$K_OEM34_NETFN 52 /* */ /* + */ /* IPMI versions that we support and see. */ /* - */ /* */ #define IPMI$K_VERSION_1_0 1 #define IPMI$K_VERSION_1_5 81 #define IPMI$K_VERSION_2_0 2 #define IPMI$K_VERSION_UNKNOWN 255 /* */ /* + */ /* IPMI Event structures. */ /* The event IDs are allocated in the CCODE event database */ /* at http://callahan.rose.hp.com/FMT/eventdb/index.html */ /* Other constants here are defined in "Event Architecture */ /* Specification" Revision 1.70 (6/23/05) or later. */ /* - */ /* */ #define IPMI$E0$M_EVENT_ID 0x3FFFF #define IPMI$E0$K_OS_BOOT_COMPLETE 5857 /* See CCODE event database */ #define IPMI$E0$K_OS_OPENVMS_BUGCHECK 7319 /* See CCODE event database */ #define IPMI$E0$K_OS_OPENVMS_SHUTDOWN 7321 /* See CCODE event database */ #define IPMI$E0$M_RSVD1 0x7C0000 #define IPMI$E0$M_TIME_FLG 0x800000 #define IPMI$E0$M_DATA_TYPE 0x1F000000 #define IPMI$E0$K_MAJOR_CHANGE 20 /* Major change in system state */ #define IPMI$E0$M_ALERT_LVL 0xE0000000 #define IPMI$E0$K_MINOR_FORWARD 0 /* Minor forward progress */ #define IPMI$E0$K_MAJOR_FORWARD 1 /* Major forward progress */ #define IPMI$E0$K_INFORMATIONAL 2 /* Informational event (VMS boot/shutdown) */ #define IPMI$E0$K_WARNING 3 /* Warning (non-critical error) */ #define IPMI$E0$K_CRITICAL 5 /* Critical (VMS system crash) */ #define IPMI$E0$K_FATAL 7 /* Fatal */ #define IPMI$E0$M_SYSTEM_STATE 0xF #define IPMI$E0$K_BOOT_COMPLETE 1 /* Boot complete */ #define IPMI$E0$K_STATE_CHANGE 12 /* State change */ #define IPMI$E0$M_LEDS_COMMAND 0x3F0 #define IPMI$E0$M_LCV 0x400 #define IPMI$E0$M_FLAGS 0x3800 #define IPMI$E0$M_RSVD2 0xC000 #define IPMI$E0$K_CRITICAL_SHUTDOWN 25 /* Critical shutdown (VMS system crash) */ #define IPMI$E0$K_SHUTDOWN 26 /* Normal shutdown (VMS operator shutdown) */ #define IPMI$E0$K_LENGTH 16 /* total length of e0 event struct */ typedef struct _e0_event { unsigned short int ipmi$e0$w_rec_id; /* Record ID for the E0 record */ unsigned char ipmi$e0$b_rec_type; /* Record Type "E0 hex" */ unsigned char ipmi$e0$b_report_id; /* Reporting Entity ID */ __union { unsigned int ipmi$e0$l_misc; __struct { unsigned ipmi$e0$v_event_id : 18; /* Event ID */ unsigned ipmi$e0$v_rsvd1 : 5; /* Reserved */ unsigned ipmi$e0$v_time_flg : 1; /* Timestamp flag */ unsigned ipmi$e0$v_data_type : 5; /* Event Data type */ unsigned ipmi$e0$v_alert_lvl : 3; /* Alert level */ } ipmi$e0$r_fill_79_; } ipmi$e0$r_fill_78_; __union { unsigned __int64 ipmi$e0$q_data; /* Event data */ __struct { unsigned ipmi$e0$v_system_state : 4; /* System state */ unsigned ipmi$e0$v_leds_command : 6; /* Deprecated */ unsigned ipmi$e0$v_lcv : 1; /* Deprecated */ unsigned ipmi$e0$v_flags : 3; /* nPar vs. cell */ unsigned ipmi$e0$v_rsvd2 : 2; /* Reserved */ unsigned char ipmi$e0$b_state_change; /* State change event */ unsigned char ipmi$e0$b_addnl_type; /* Additional change information type */ unsigned int ipmi$e0$l_addnl_info; /* Additional change information */ } ipmi$e0$r_fill_81_; } ipmi$e0$r_fill_80_; } E0_EVENT; #if !defined(__VAXC) #define ipmi$e0$v_event_id ipmi$e0$r_fill_78_.ipmi$e0$r_fill_79_.ipmi$e0$v_event_id #define ipmi$e0$v_time_flg ipmi$e0$r_fill_78_.ipmi$e0$r_fill_79_.ipmi$e0$v_time_flg #define ipmi$e0$v_data_type ipmi$e0$r_fill_78_.ipmi$e0$r_fill_79_.ipmi$e0$v_data_type #define ipmi$e0$v_alert_lvl ipmi$e0$r_fill_78_.ipmi$e0$r_fill_79_.ipmi$e0$v_alert_lvl #define ipmi$e0$v_system_state ipmi$e0$r_fill_80_.ipmi$e0$r_fill_81_.ipmi$e0$v_system_state #define ipmi$e0$v_leds_command ipmi$e0$r_fill_80_.ipmi$e0$r_fill_81_.ipmi$e0$v_leds_command #define ipmi$e0$v_lcv ipmi$e0$r_fill_80_.ipmi$e0$r_fill_81_.ipmi$e0$v_lcv #define ipmi$e0$v_flags ipmi$e0$r_fill_80_.ipmi$e0$r_fill_81_.ipmi$e0$v_flags #define ipmi$e0$b_state_change ipmi$e0$r_fill_80_.ipmi$e0$r_fill_81_.ipmi$e0$b_state_change #define ipmi$e0$b_addnl_type ipmi$e0$r_fill_80_.ipmi$e0$r_fill_81_.ipmi$e0$b_addnl_type #define ipmi$e0$l_addnl_info ipmi$e0$r_fill_80_.ipmi$e0$r_fill_81_.ipmi$e0$l_addnl_info #endif /* #if !defined(__VAXC) */ #define IPMI$T2$M_EVENT_TYPE 0x7F #define IPMI$T2$M_EVENT_DIR 0x80 #define IPMI$T2$K_LENGTH 16 /* total length of Type 2 event struct */ typedef struct _t2_event { unsigned short int ipmi$t2$w_rec_id; /* Record ID for the Type 2 record */ unsigned char ipmi$t2$b_rec_type; /* Record Type "02 hex" */ unsigned int ipmi$t2$l_time; /* Timestamp */ unsigned short int ipmi$t2$w_generate_id; /* Generator ID */ unsigned char ipmi$t2$b_rev; /* Event message format rev */ unsigned char ipmi$t2$b_sensor_type; /* Sensor Type */ unsigned char ipmi$t2$b_sensor_num; /* Sensor number */ __union { unsigned char ipmi$t2$b_ev_t_d; __struct { unsigned ipmi$t2$v_event_type : 7; /* Event type */ unsigned ipmi$t2$v_event_dir : 1; /* Event direction */ } ipmi$t2$r_fill_83_; } ipmi$t2$r_fill_82_; unsigned char ipmi$t2$b_data1; /* Event data 1 */ unsigned char ipmi$t2$b_data2; /* Event data 2 */ unsigned char ipmi$t2$b_data3; /* Event data 3 */ } T2_EVENT; #if !defined(__VAXC) #define ipmi$t2$v_event_type ipmi$t2$r_fill_82_.ipmi$t2$r_fill_83_.ipmi$t2$v_event_type #define ipmi$t2$v_event_dir ipmi$t2$r_fill_82_.ipmi$t2$r_fill_83_.ipmi$t2$v_event_dir #endif /* #if !defined(__VAXC) */ /* */ /* */ /* Flags for Send/Get Messages for bridge IPMI commands */ /* */ #define IPMI$K_USE_SEND_MSG_CMD 65536 #define IPMI$K_USE_GET_MSG_CMD 131072 /* */ /* Flag for Satellite controller Support on Kauai Systems */ /* */ #define IPMI$K_SEND_TO_SAT_CNTRL 262144 /* */ #pragma __member_alignment __restore #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __restore /* Restore the previously-defined required ptr size */ #endif #ifdef __cplusplus } #endif #pragma __standard #endif /* __IPMIDEF_LOADED */