Blame include/ipmitool/ipmi_delloem.h

Packit Service ed0f68
/****************************************************************************
Packit Service ed0f68
Copyright (c) 2008, Dell Inc
Packit Service ed0f68
All rights reserved.
Packit Service ed0f68
Redistribution and use in source and binary forms, with or without
Packit Service ed0f68
modification, are permitted provided that the following conditions are met:
Packit Service ed0f68
- Redistributions of source code must retain the above copyright notice,
Packit Service ed0f68
this list of conditions and the following disclaimer.
Packit Service ed0f68
Packit Service ed0f68
- Redistributions in binary form must reproduce the above copyright notice,
Packit Service ed0f68
this list of conditions and the following disclaimer in the documentation
Packit Service ed0f68
and/or other materials provided with the distribution. 
Packit Service ed0f68
- Neither the name of Dell Inc nor the names of its contributors
Packit Service ed0f68
may be used to endorse or promote products derived from this software 
Packit Service ed0f68
without specific prior written permission. 
Packit Service ed0f68
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
Packit Service ed0f68
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
Packit Service ed0f68
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
Packit Service ed0f68
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
Packit Service ed0f68
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
Packit Service ed0f68
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
Packit Service ed0f68
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
Packit Service ed0f68
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
Packit Service ed0f68
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
Packit Service ed0f68
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
Packit Service ed0f68
POSSIBILITY OF SUCH DAMAGE. 
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
*****************************************************************************/
Packit Service ed0f68
#ifndef IPMI_DELLOEM_H
Packit Service ed0f68
#define IPMI_DELLOEM_H
Packit Service ed0f68
Packit Service ed0f68
#if HAVE_CONFIG_H
Packit Service ed0f68
# include <config.h>
Packit Service ed0f68
#endif
Packit Service ed0f68
Packit Service ed0f68
#pragma pack(1)
Packit Service ed0f68
Packit Service ed0f68
#define MIN(a,b) ((a) < (b) ? (a) : (b))
Packit Service ed0f68
#define MAX(a,b) ((a) > (b) ? (a) : (b))
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
/* Dell selector for LCD control - get and set unless specified */
Packit Service ed0f68
#define IPMI_DELL_LCD_STRING_SELECTOR       0xC1        /* RW get/set the user string */
Packit Service ed0f68
#define IPMI_DELL_LCD_CONFIG_SELECTOR       0xC2        /* RW set to user/default/none */
Packit Service ed0f68
#define IPMI_DELL_LCD_GET_CAPS_SELECTOR     0xCF        /* RO use when available*/
Packit Service ed0f68
#define IPMI_DELL_LCD_STRINGEX_SELECTOR     0xD0        /* RW get/set the user string use first when available*/
Packit Service ed0f68
#define IPMI_DELL_LCD_STATUS_SELECTOR       0xE7        /* LCD string when config set to default.*/
Packit Service ed0f68
#define IPMI_DELL_PLATFORM_MODEL_NAME_SELECTOR 0xD1    /* LCD string when config set to default.*/
Packit Service ed0f68
Packit Service ed0f68
/* Dell defines for picking which string to use */
Packit Service ed0f68
#define IPMI_DELL_LCD_CONFIG_USER_DEFINED   0x00 /* use string set by user*/
Packit Service ed0f68
#define IPMI_DELL_LCD_CONFIG_DEFAULT        0x01 /* use platform model name*/
Packit Service ed0f68
#define IPMI_DELL_LCD_CONFIG_NONE           0x02 /* blank*/
Packit Service ed0f68
#define IPMI_DELL_LCD_iDRAC_IPV4ADRESS      0x04 /* use string set by user*/
Packit Service ed0f68
#define IPMI_DELL_LCD_IDRAC_MAC_ADDRESS     0x08 /* use platform model name*/
Packit Service ed0f68
#define IPMI_DELL_LCD_OS_SYSTEM_NAME        0x10 /* blank*/
Packit Service ed0f68
Packit Service ed0f68
#define IPMI_DELL_LCD_SERVICE_TAG           0x20  /* use string set by user*/
Packit Service ed0f68
#define IPMI_DELL_LCD_iDRAC_IPV6ADRESS      0x40  /* use string set by user*/
Packit Service ed0f68
#define IPMI_DELL_LCD_AMBEINT_TEMP          0x80  /* use platform model name*/
Packit Service ed0f68
#define IPMI_DELL_LCD_SYSTEM_WATTS          0x100 /* blank*/
Packit Service ed0f68
#define IPMI_DELL_LCD_ASSET_TAG             0x200
Packit Service ed0f68
Packit Service ed0f68
#define IPMI_DELL_LCD_ERROR_DISP_SEL        0x01  /* use platform model name*/
Packit Service ed0f68
#define IPMI_DELL_LCD_ERROR_DISP_VERBOSE    0x02  /* blank*/
Packit Service ed0f68
Packit Service ed0f68
#define IPMI_DELL_IDRAC_VALIDATOR           0xDD    
Packit Service ed0f68
#define IPMI_DELL_POWER_CAP_STATUS          0xBA   
Packit Service ed0f68
#define IPMI_DELL_AVG_POWER_CONSMP_HST 	0xEB
Packit Service ed0f68
#define IPMI_DELL_PEAK_POWER_CONSMP_HST 0xEC
Packit Service ed0f68
#define SYSTEM_BOARD_SYSTEM_LEVEL_SENSOR_NUM 0x98
Packit Service ed0f68
Packit Service ed0f68
#define	IDRAC_11G					1
Packit Service ed0f68
#define	IDRAC_12G					2
Packit Service ed0f68
#define	IDRAC_13G					3
Packit Service ed0f68
// Return Error code for license
Packit Service ed0f68
#define	LICENSE_NOT_SUPPORTED		0x6F
Packit Service ed0f68
#define	VFL_NOT_LICENSED			0x33
Packit Service ed0f68
#define btuphr              0x01
Packit Service ed0f68
#define watt                0x00
Packit Service ed0f68
#define IPMI_DELL_POWER_CAP 0xEA
Packit Service ed0f68
#define percent             0x03 
Packit Service ed0f68
Packit Service ed0f68
/* Not on all Dell servers. If there, use it.*/
Packit Service ed0f68
typedef struct _tag_ipmi_dell_lcd_caps
Packit Service ed0f68
{
Packit Service ed0f68
       uint8_t parm_rev;                                       /* 0x11 for IPMI 2.0 */
Packit Service ed0f68
        uint8_t char_set;                                       /* always 1 for printable ASCII 0x20-0x7E */
Packit Service ed0f68
   uint8_t number_lines;                           /* 0-4, 1 for 9G. 10G tbd */
Packit Service ed0f68
   uint8_t max_chars[4];                           /* 62 for triathlon, 0 if not present (glacier) */
Packit Service ed0f68
                                                                             /* [0] is max chars for line 1 */
Packit Service ed0f68
}IPMI_DELL_LCD_CAPS;
Packit Service ed0f68
Packit Service ed0f68
#define IPMI_DELL_LCD_STRING_LENGTH_MAX 62      /* Valid for 9G. Glacier ??. */
Packit Service ed0f68
#define IPMI_DELL_LCD_STRING1_SIZE      14
Packit Service ed0f68
#define IPMI_DELL_LCD_STRINGN_SIZE      16
Packit Service ed0f68
Packit Service ed0f68
/* vFlash subcommands */
Packit Service ed0f68
#define IPMI_GET_EXT_SD_CARD_INFO 0xA4
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct _tag_ipmi_dell_lcd_string
Packit Service ed0f68
{
Packit Service ed0f68
     uint8_t parm_rev;                       /* 0x11 for IPMI 2.0 */
Packit Service ed0f68
     uint8_t data_block_selector;            /* 16-byte data block number to access, 0 based.*/
Packit Service ed0f68
     union 
Packit Service ed0f68
     {
Packit Service ed0f68
          struct 
Packit Service ed0f68
          {
Packit Service ed0f68
                uint8_t encoding : 4;                     /* 0 is printable ASCII 7-bit */
Packit Service ed0f68
                uint8_t length;                           /* 0 to max chars from lcd caps */
Packit Service ed0f68
                uint8_t data[IPMI_DELL_LCD_STRING1_SIZE]; /* not zero terminated.  */
Packit Service ed0f68
          }selector_0_string;
Packit Service ed0f68
          uint8_t selector_n_data[IPMI_DELL_LCD_STRINGN_SIZE];
Packit Service ed0f68
     }lcd_string;
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_DELL_LCD_STRING;
Packit Service ed0f68
Packit Service ed0f68
/* Only found on servers with more than 1 line. Use if available. */
Packit Service ed0f68
typedef struct _tag_ipmi_dell_lcd_stringex
Packit Service ed0f68
{
Packit Service ed0f68
      uint8_t parm_rev;                       /* 0x11 for IPMI 2.0 */
Packit Service ed0f68
      uint8_t line_number;                    /* LCD line number 1 to 4 */
Packit Service ed0f68
      uint8_t data_block_selector;            /* 16-byte data block number to access, 0 based.*/
Packit Service ed0f68
      union 
Packit Service ed0f68
      {
Packit Service ed0f68
           struct  
Packit Service ed0f68
           {
Packit Service ed0f68
                uint8_t encoding : 4;                     /* 0 is printable ASCII 7-bit */
Packit Service ed0f68
                uint8_t length;                           /* 0 to max chars from lcd caps */
Packit Service ed0f68
                uint8_t data[IPMI_DELL_LCD_STRING1_SIZE]; /* not zero terminated.  */
Packit Service ed0f68
           } selector_0_string;
Packit Service ed0f68
           uint8_t selector_n_data[IPMI_DELL_LCD_STRINGN_SIZE];
Packit Service ed0f68
   } lcd_string;
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_DELL_LCD_STRINGEX;
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct _lcd_status
Packit Service ed0f68
{
Packit Service ed0f68
      char parametersel;
Packit Service ed0f68
      char vKVM_status;
Packit Service ed0f68
      char lock_status;
Packit Service ed0f68
      char Resv1;
Packit Service ed0f68
      char Resv;
Packit Service ed0f68
} __attribute__ ((packed)) LCD_STATUS;
Packit Service ed0f68
Packit Service ed0f68
typedef struct _lcd_mode
Packit Service ed0f68
{
Packit Service ed0f68
    uint8_t parametersel;
Packit Service ed0f68
    uint32_t lcdmode;
Packit Service ed0f68
    uint16_t lcdquallifier;
Packit Service ed0f68
    uint32_t capabilites;
Packit Service ed0f68
    uint8_t error_display;
Packit Service ed0f68
    uint8_t Resv;
Packit Service ed0f68
} __attribute__ ((packed)) LCD_MODE;
Packit Service ed0f68
Packit Service ed0f68
#define PARAM_REV_OFFSET                    (uint8_t)(0x1)
Packit Service ed0f68
#define VIRTUAL_MAC_OFFSET                  (uint8_t)(0x1)
Packit Service ed0f68
Packit Service ed0f68
#define LOM_MACTYPE_ETHERNET 0
Packit Service ed0f68
#define LOM_MACTYPE_ISCSI 1
Packit Service ed0f68
#define LOM_MACTYPE_RESERVED 3
Packit Service ed0f68
Packit Service ed0f68
#define LOM_ETHERNET_ENABLED 0
Packit Service ed0f68
#define LOM_ETHERNET_DISABLED 1
Packit Service ed0f68
#define LOM_ETHERNET_PLAYINGDEAD 2
Packit Service ed0f68
#define LOM_ETHERNET_RESERVED 3
Packit Service ed0f68
Packit Service ed0f68
#define LOM_ACTIVE 1
Packit Service ed0f68
#define LOM_INACTIVE 0
Packit Service ed0f68
Packit Service ed0f68
#define MACADDRESSLENGH 6
Packit Service ed0f68
#define MAX_LOM 8
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
#define EMB_NIC_MAC_ADDRESS_11G     (uint8_t)(0xDA)
Packit Service ed0f68
#define EMB_NIC_MAC_ADDRESS_9G_10G  (uint8_t)(0xCB)
Packit Service ed0f68
Packit Service ed0f68
#define IMC_IDRAC_10G               (uint8_t) (0x08) 
Packit Service ed0f68
#define IMC_CMC                     (uint8_t) (0x09)
Packit Service ed0f68
#define IMC_IDRAC_11G_MONOLITHIC    (uint8_t) (0x0A)
Packit Service ed0f68
#define IMC_IDRAC_11G_MODULAR       (uint8_t) (0x0B)
Packit Service ed0f68
#define IMC_UNUSED                  (uint8_t) (0x0C)
Packit Service ed0f68
#define IMC_MASER_LITE_BMC          (uint8_t) (0x0D)
Packit Service ed0f68
#define IMC_MASER_LITE_NU 			(uint8_t) (0x0E)
Packit Service ed0f68
#define IMC_IDRAC_12G_MONOLITHIC 	(uint8_t) (0x10)
Packit Service ed0f68
#define IMC_IDRAC_12G_MODULAR 		(uint8_t) (0x11)
Packit Service ed0f68
Packit Service ed0f68
#define IMC_IDRAC_13G_MONOLITHIC 	(uint8_t) (0x20)
Packit Service ed0f68
#define IMC_IDRAC_13G_MODULAR 		(uint8_t) (0x21)
Packit Service ed0f68
#define IMC_IDRAC_13G_DCS			(uint8_t) (0x22)
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct
Packit Service ed0f68
{
Packit Service ed0f68
     unsigned int BladSlotNumber : 4;
Packit Service ed0f68
     unsigned int MacType : 2;
Packit Service ed0f68
     unsigned int EthernetStatus : 2;
Packit Service ed0f68
     unsigned int NICNumber : 5;
Packit Service ed0f68
     unsigned int Reserved : 3;
Packit Service ed0f68
     uint8_t MacAddressByte[MACADDRESSLENGH];
Packit Service ed0f68
} LOMMacAddressType;
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct
Packit Service ed0f68
{
Packit Service ed0f68
     LOMMacAddressType LOMMacAddress [MAX_LOM];
Packit Service ed0f68
} EmbeddedNICMacAddressType;
Packit Service ed0f68
Packit Service ed0f68
typedef struct
Packit Service ed0f68
{
Packit Service ed0f68
     uint8_t MacAddressByte[MACADDRESSLENGH];
Packit Service ed0f68
} MacAddressType;
Packit Service ed0f68
Packit Service ed0f68
typedef struct
Packit Service ed0f68
{
Packit Service ed0f68
   MacAddressType MacAddress [MAX_LOM];
Packit Service ed0f68
} EmbeddedNICMacAddressType_10G;
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
#define TRANSPORT_NETFN             (uint8_t)(0xc)
Packit Service ed0f68
#define GET_LAN_PARAM_CMD           (uint8_t)(0x02)
Packit Service ed0f68
#define MAC_ADDR_PARAM              (uint8_t)(0x05)
Packit Service ed0f68
#define LAN_CHANNEL_NUMBER          (uint8_t)(0x01)
Packit Service ed0f68
Packit Service ed0f68
#define IDRAC_NIC_NUMBER            (uint8_t)(0x8)
Packit Service ed0f68
Packit Service ed0f68
#define TOTAL_N0_NICS_INDEX         (uint8_t)(0x1)
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
// 12g supported 
Packit Service ed0f68
#define SET_NIC_SELECTION_12G_CMD       (uint8_t)(0x28)
Packit Service ed0f68
#define GET_NIC_SELECTION_12G_CMD       (uint8_t)(0x29)
Packit Service ed0f68
Packit Service ed0f68
// 11g supported 
Packit Service ed0f68
#define SET_NIC_SELECTION_CMD       (uint8_t)(0x24)
Packit Service ed0f68
#define GET_NIC_SELECTION_CMD       (uint8_t)(0x25)
Packit Service ed0f68
#define GET_ACTIVE_NIC_CMD          (uint8_t)(0xc1)
Packit Service ed0f68
#define POWER_EFFICENCY_CMD     		(uint8_t)(0xc0)
Packit Service ed0f68
#define SERVER_POWER_CONSUMPTION_CMD   	(uint8_t)(0x8F)
Packit Service ed0f68
Packit Service ed0f68
#define POWER_SUPPLY_INFO           (uint8_t)(0xb0)
Packit Service ed0f68
#define IPMI_ENTITY_ID_POWER_SUPPLY (uint8_t)(0x0a)
Packit Service ed0f68
#define SENSOR_STATE_STR_SIZE       (uint8_t)(64)
Packit Service ed0f68
#define SENSOR_NAME_STR_SIZE        (uint8_t)(64)
Packit Service ed0f68
Packit Service ed0f68
#define GET_PWRMGMT_INFO_CMD	    (uint8_t)(0x9C)
Packit Service ed0f68
#define CLEAR_PWRMGMT_INFO_CMD	    (uint8_t)(0x9D)
Packit Service ed0f68
#define GET_PWR_HEADROOM_CMD	    (uint8_t)(0xBB)
Packit Service ed0f68
#define GET_PWR_CONSUMPTION_CMD	    (uint8_t)(0xB3)
Packit Service ed0f68
#define	GET_FRONT_PANEL_INFO_CMD		(uint8_t)0xb5
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct _ipmi_power_monitor
Packit Service ed0f68
{
Packit Service ed0f68
    uint32_t        cumStartTime;
Packit Service ed0f68
    uint32_t        cumReading;
Packit Service ed0f68
    uint32_t        maxPeakStartTime;
Packit Service ed0f68
    uint32_t        ampPeakTime;
Packit Service ed0f68
    uint16_t        ampReading;
Packit Service ed0f68
    uint32_t        wattPeakTime;
Packit Service ed0f68
    uint16_t        wattReading;
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_POWER_MONITOR;
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
#define MAX_POWER_FW_VERSION 8
Packit Service ed0f68
Packit Service ed0f68
typedef struct _ipmi_power_supply_infoo
Packit Service ed0f68
{
Packit Service ed0f68
	/*No param_rev it is not a System Information Command */
Packit Service ed0f68
	uint16_t ratedWatts;
Packit Service ed0f68
	uint16_t ratedAmps;
Packit Service ed0f68
	uint16_t ratedVolts;
Packit Service ed0f68
	uint32_t vendorid;
Packit Service ed0f68
    uint8_t FrimwareVersion[MAX_POWER_FW_VERSION];
Packit Service ed0f68
	uint8_t  Powersupplytype;
Packit Service ed0f68
	uint16_t ratedDCWatts;
Packit Service ed0f68
	uint16_t Resv;	
Packit Service ed0f68
                          
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_POWER_SUPPLY_INFO;
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct ipmi_power_consumption_data
Packit Service ed0f68
{
Packit Service ed0f68
    uint16_t actualpowerconsumption;
Packit Service ed0f68
    uint16_t powerthreshold;
Packit Service ed0f68
    uint16_t warningthreshold;
Packit Service ed0f68
    uint8_t throttlestate;
Packit Service ed0f68
    uint16_t maxpowerconsumption;
Packit Service ed0f68
    uint16_t throttlepowerconsumption;
Packit Service ed0f68
    uint16_t Resv;
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_POWER_CONSUMPTION_DATA;
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct ipmi_inst_power_consumption_data
Packit Service ed0f68
{
Packit Service ed0f68
    uint16_t instanpowerconsumption;
Packit Service ed0f68
    uint16_t instanApms;
Packit Service ed0f68
    uint16_t resv1;
Packit Service ed0f68
    uint8_t resv;
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_INST_POWER_CONSUMPTION_DATA;
Packit Service ed0f68
Packit Service ed0f68
typedef struct _ipmi_avgpower_consump_histroy
Packit Service ed0f68
{
Packit Service ed0f68
    uint8_t parameterselector;  
Packit Service ed0f68
    uint16_t lastminutepower;
Packit Service ed0f68
    uint16_t lasthourpower;
Packit Service ed0f68
    uint16_t lastdaypower;
Packit Service ed0f68
    uint16_t lastweakpower;  
Packit Service ed0f68
                          
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_AVGPOWER_CONSUMP_HISTORY;
Packit Service ed0f68
Packit Service ed0f68
typedef struct _ipmi_power_consump_histroy
Packit Service ed0f68
{
Packit Service ed0f68
    uint8_t parameterselector;   
Packit Service ed0f68
    uint16_t lastminutepower;
Packit Service ed0f68
    uint16_t lasthourpower;
Packit Service ed0f68
    uint16_t lastdaypower;
Packit Service ed0f68
    uint16_t lastweakpower; 
Packit Service ed0f68
    uint32_t lastminutepowertime;
Packit Service ed0f68
    uint32_t lasthourpowertime;
Packit Service ed0f68
    uint32_t lastdaypowertime;
Packit Service ed0f68
    uint32_t lastweekpowertime;
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_POWER_CONSUMP_HISTORY;
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct _ipmi_delloem_power_cap
Packit Service ed0f68
{     
Packit Service ed0f68
    uint8_t parameterselector;      
Packit Service ed0f68
    uint16_t PowerCap;
Packit Service ed0f68
    uint8_t unit;
Packit Service ed0f68
    uint16_t MaximumPowerConsmp;
Packit Service ed0f68
    uint16_t MinimumPowerConsmp;
Packit Service ed0f68
    uint16_t totalnumpowersupp;
Packit Service ed0f68
    uint16_t AvailablePower ;
Packit Service ed0f68
    uint16_t SystemThrottling;
Packit Service ed0f68
    uint16_t Resv;
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_POWER_CAP;       
Packit Service ed0f68
Packit Service ed0f68
typedef struct _power_headroom
Packit Service ed0f68
{ 
Packit Service ed0f68
    uint16_t instheadroom;
Packit Service ed0f68
    uint16_t peakheadroom;
Packit Service ed0f68
} __attribute__ ((packed)) POWER_HEADROOM;
Packit Service ed0f68
Packit Service ed0f68
struct vFlashstr {
Packit Service ed0f68
	uint8_t val;
Packit Service ed0f68
	const char * str;
Packit Service ed0f68
};
Packit Service ed0f68
typedef struct ipmi_vFlash_extended_info
Packit Service ed0f68
{
Packit Service ed0f68
	uint8_t  vflashcompcode;
Packit Service ed0f68
	uint8_t  sdcardstatus;
Packit Service ed0f68
	uint32_t sdcardsize;
Packit Service ed0f68
	uint32_t sdcardavailsize;
Packit Service ed0f68
	uint8_t  bootpartion;
Packit Service ed0f68
	uint8_t  Resv;
Packit Service ed0f68
} __attribute__ ((packed)) IPMI_DELL_SDCARD_INFO;
Packit Service ed0f68
Packit Service ed0f68
Packit Service ed0f68
typedef struct _SensorReadingType
Packit Service ed0f68
{
Packit Service ed0f68
    uint8_t sensorReading;
Packit Service ed0f68
    uint8_t sensorFlags;
Packit Service ed0f68
    uint16_t sensorState;
Packit Service ed0f68
}SensorReadingType;
Packit Service ed0f68
uint16_t compareinputwattage(IPMI_POWER_SUPPLY_INFO* powersupplyinfo, uint16_t inputwattage);
Packit Service ed0f68
int ipmi_delloem_main(struct ipmi_intf * intf, int argc, char ** argv);
Packit Service ed0f68
Packit Service ed0f68
#endif /*IPMI_DELLOEM_H*/