123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- /****************************************************************
- ****************************************************************
- ** **
- ** (C)Copyright 2006-2007, American Megatrends Inc. **
- ** **
- ** All Rights Reserved. **
- ** **
- ** 6145-F, Northbelt Parkway, Norcross, **
- ** **
- ** Georgia - 30071, USA. Phone-(770)-246-8600. **
- ** **
- ****************************************************************
- *****************************************************************
- *
- * PendTask.h
- * Any IPMI command operation which requires more
- * response time can be posted to this task.
- *
- * Author: Vinothkumar S <vinothkumars@ami.com>
- *
- *****************************************************************/
- #ifndef PEND_TASK_H
- #define PEND_TASK_H
- #include "Types.h"
- //#include "OSPort.h"
- #include "Message.h"
- #include "IPMIDefs.h"
- #define PEND_STATUS_COMPLETED 0x00
- #define PEND_STATUS_PENDING 0x0F
- #define IPMI 0x01
- #define WEBSERVER 0x02
- #define REBOOT 0x03
- #define ADVISER_CONF 0x04
- /*----------------------------------------------------
- * Pending Task Operation
- *----------------------------------------------------*/
- typedef enum
- {
- PEND_OP_SET_IP = 0, /* Set IP Address */
- PEND_OP_SET_SUBNET, /* Set SubNet Mask */
- PEND_OP_SET_GATEWAY, /* Set Gateway */
- PEND_OP_SET_SOURCE, /*SET Address source*/
- PEND_OP_SET_DNS, /*SET DNS Information */
- PEND_OP_DELAYED_COLD_RESET, /* Delayed Cold Reset */
- PEND_OP_DELAYED_CR_CONFIG,
- PEND_OP_SEND_EMAIL_ALERT,
- PEND_OP_PEND_VM_CONFIG,
- PEND_OP_PEND_OOB_CONFIG,
- PEND_OP_IFUPDOWN,
- PEND_OP_NIC_ENABLE_DISABLE,
- PEND_OP_SET_VLAN_ID,
- PEND_OP_DECONFIG_VLAN_IFC,
- PEND_OP_SET_IPV4_HEADERS,
- PEND_RMCP_PORT_CHANGE,
- PEND_OP_SET_ALL_DNS_CFG,
- PEND_OP_SET_IPV6_CFG,
- PEND_OP_SET_DNSV6_CFG,
- PEND_OP_SET_ETH_IFACE_STATE,
- PEND_OP_SET_MAC_ADDRESS,
- PEND_OP_SET_IPV6_ENABLE=102,
- PEND_OP_SET_IPV6_IP_ADDR_SOURCE,
- PEND_OP_SET_IPV6_IP_ADDR,
- PEND_OP_SET_IPV6_PREFIX_LENGTH,
- PEND_OP_SET_IPV6_GATEWAY,
- PEND_OP_SET_BOND_IFACE_STATE,
- PEND_OP_SET_ACTIVE_SLAVE,
- PEND_OP_RESTART_SERVICES,
- PEND_OP_START_FW_UPDATE_TFTP,
- PEND_OP_SET_NCSI_CHANNEL_ID,
- PEND_OP_SET_NCSI_MODE_CHANGE,
- PEND_OP_SET_NCSI_VETOBIT,
- PEND_OP_SET_SPEED,
- PEND_OP_SET_MTU_SIZE,
- PEND_OP_SET_NW_PHY_REGISTER,
- PEND_OP_RUN_INIT_AGENT,
- PEND_OP_SET_BLOCK_ALL
- } PendTaskOperation_E;
- /* Function pointer for Pending command handler */
- typedef int (*pPendCmdHndlr_T) (INT8U* pData, INT32U ReqLen,INT8U Channel,int BMCInst);
- /* Pending command handler type definition */
- typedef struct
- {
- PendTaskOperation_E Operation; /* Pending Operation */
- pPendCmdHndlr_T PendHndlr; /* Pending handler */
- } PendCmdHndlrTbl_T;
- /* Pending command status type definition */
- typedef struct
- {
- PendTaskOperation_E Action; /* Pending Operation */
- int PendStatus; /* Pending Status */
- } PendCmdStatus_T;
- /*----------------------------------------------------
- * Pend Task Handler Queue
- *----------------------------------------------------*/
- extern void* PendCmdTask (void *pArg);
- extern int PostPendTask (PendTaskOperation_E Operation, INT8U *pData, INT32U DataLen,INT8U Channel,int BMCInst);
- extern int SetPendStatus (PendTaskOperation_E Action, int Status);
- extern int GetPendStatus (PendTaskOperation_E Action);
- #endif /* PEND_TASK_H */
|