OpenClovis Logo

Files | Macros | Enumerations
API Reference Pages
Chassis Management

Defines, Structures, Typedefs, Functions. More...

Files

file  clCmApi.h
 Header file of Chassis Manager Related APIs.

Macros

#define CL_CM_VERSION   {(ClUint8T)'B', 0x1, 0x1}
 Latest supported version of the Chassis Manager client service.
#define CL_ERR_CM_HPI_ERROR   (CL_ERR_COMMON_MAX+1)
 Generic HPI error.
#define CL_ERR_CM_HPI_INVALID_PHY_SLOT   (CL_ERR_COMMON_MAX+2)
 No such physical slot in the chassis or not FRU in physical slot.
#define clCmBladeOperationRequest(chassisId, physSlot, request)   CL_RC(CL_CID_CM,CL_ERR_NOT_SUPPORTED)
 Operates on the Blade or any platform hardware.
#define clCmFruOperationRequest(hMoId, request)   CL_RC(CL_CID_CM,CL_ERR_NOT_SUPPORTED)
 Operates on the FRU or any platform hardware.
#define clCmFruStateGet(hMoId, pState)   CL_RC(CL_CID_CM,CL_ERR_NOT_SUPPORTED)
 Returns the state of an FRU.
#define clCmVersionVerify(version)   CL_RC(CL_CID_CM,CL_ERR_NOT_SUPPORTED)
 This api can be used to verify the version supported by the CM.

Enumerations

enum  ClCmFruOperationT {
  CL_CM_POWERON_REQUEST = 1,
  CL_CM_POWEROFF_REQUEST,
  CL_CM_POWER_CYCLE_REQUEST,
  CL_CM_INSERT_REQUEST,
  CL_CM_EXTRACT_REQUEST,
  CL_CM_RESET_REQUEST,
  CL_CM_WARM_RESET_REQUEST,
  CL_CM_RESET_ASSERT_REQUEST,
  CL_CM_RESET_DEASSERT_REQUEST
}
 Possible FRU operations for the clCmFruOperationRequest() function. More...

Detailed Description

Defines, Structures, Typedefs, Functions.

Macro Definition Documentation

#define clCmBladeOperationRequest (   chassisId,
  physSlot,
  request 
)    CL_RC(CL_CID_CM,CL_ERR_NOT_SUPPORTED)

Operates on the Blade or any platform hardware.

\param chassisId ChassisId of the blade
\param physSlot Physical slot of the blade (per HPI terminology)
\param request Operation requested on the hardware

\retval CL_OK The API executed successfully
\retval CL_ERR_INVALID_PARAMETER Request valus is invalid
\retval CL_ERR_VERSION_MISMATCH If client and server are version incompatible
\retval CL_ERR_CM_HPI_ERROR For any server side HPI errors
\retval CL_ERR_TRY_AGAIN If Chassis manager is busy and cannot service the request immediately

\par Description:
This API is used to operate on an BLADE or a platform hardware. It accepts three
arguments- the ChassisId & physical slot number of the FRU to operate and the operation requested. 
Operations are listed in the

enumeration ClCmFruOperationT.

Warning
Setting up of hotswap state of the BLADE must confirm to the HPI hotswap state transition sequence. Only valid state transitions are allowed, any invalid state transition requests are rejected as invalid requests.
Note
On any HPI Error, refer to DBG_PRINTS on the Chassis Manager console or Log file.
This function can only be used for main cards and cannot be used on nested FRUs such as AMCs. extern ClRcT clCmBladeOperationRequest (CL_IN ClUint32T chassisId, CL_IN ClUint32T physSlot, CL_IN ClCmFruOperationT request);
#define clCmFruOperationRequest (   hMoId,
  request 
)    CL_RC(CL_CID_CM,CL_ERR_NOT_SUPPORTED)

Operates on the FRU or any platform hardware.

Parameters
hMoIdMoId of the FRU.
requestOperation requested on the hardware.
Return values
CL_OKThe API executed successfully
CL_ERR_INVALID_PARAMETERThe hMoId value is not a valid MO Id or the request value is invalid
CL_ERR_VERSION_MISMATCHIf client and server are version incompatible
CL_ERR_CM_HPI_ERRORFor any server side HPI errors
CL_ERR_TRY_AGAINIf Chassis manager is busy and cannot service the request immediately
Description:
This API is used to operate on an FRU or a platform hardware. It accepts two arguments- the MoId of the FRU to operate and the operation requested. Operations are listed in the enumeration ClCmFruOperationT.
Warning
Setting up of hotswap state of the FRU must confirm to the HPI hotswap state transition sequence. Only valid state transitions are allowed, any invalid state Transition requests are rejected as invalid requests.
Note
On any HPI Error, refer to DBG_PRINTS on the Chassis Manager console or Log file.

extern ClRcT clCmFruOperationRequest (CL_IN ClCorMOIdPtrT hMoId, CL_OUT ClCmFruOperationT request);

#define clCmFruStateGet (   hMoId,
  pState 
)    CL_RC(CL_CID_CM,CL_ERR_NOT_SUPPORTED)

Returns the state of an FRU.

Parameters
hMoIdMoId of the FRU.
pState(out) Pointer to store the state of the FRU.
Return values
CL_OKThe API executed successfully
CL_ERR_INVALID_PARAMETERThe hMoId value is not a valid MO Id
CL_ERR_NULL_POINTEROn passing a NULL pointer
CL_ERR_VERSION_MISMATCHIf client and server are version incompatible
CL_ERR_CM_HPI_ERRORFor any server side HPI errors
CL_ERR_TRY_AGAINIf Chassis Manager is busy and cannot service the request immediately
Description:
This API is used to return the state of a Field Replaceable Unit (FRU). These states are defined in the SaHpi.h header file. The first argument is the MoId of the FRU for which the state to be retrieved. Second argument is a pointer to the location that stores the state of the FRU.
Note
On any HPI Error, refer to DBG_PRINTS on the Chassis Manager console or Log file.

extern ClRcT clCmFruStateGet (CL_IN ClCorMOIdPtrT hMoId,CL_OUT SaHpiHsStateT *pState);

#define clCmVersionVerify (   version)    CL_RC(CL_CID_CM,CL_ERR_NOT_SUPPORTED)

This api can be used to verify the version supported by the CM.

Parameters
version(IN/OUT) Version requested (IN) and the closest version supported by the service (OUT)
Return values
CL_OKThe API executed successfully.
CL_ERR_VERSION_MISMATCHIf exact request version is not supported.
Description:
This function should be used to verify the version that is assumed by the client against the version(s) supported by the service. Typically, the client should use the CL_CM_VERSION macro for basis of the comparision. This API allows detection of mismatch between the client and the cleint library (in case shared libraries are used).

extern ClRcT clCmVersionVerify(CL_INOUT ClVersionT *version);

Enumeration Type Documentation

Possible FRU operations for the clCmFruOperationRequest() function.

Enumerator:
CL_CM_POWERON_REQUEST 

Request to power on the FRU.

CL_CM_POWEROFF_REQUEST 

Request to power off the FRU.

CL_CM_POWER_CYCLE_REQUEST 

Request to power cycle the FRU.

CL_CM_INSERT_REQUEST 

Request an FRU insertion.

CL_CM_EXTRACT_REQUEST 

Request an FRU extraction.

CL_CM_RESET_REQUEST 

Request a cold reset of FRU.

CL_CM_WARM_RESET_REQUEST 

Request a warm reset of FRU.

CL_CM_RESET_ASSERT_REQUEST 

Request to assert the reset state of FRU.

CL_CM_RESET_DEASSERT_REQUEST 

Request to de-assert the reset state of FRU.


Generated on Tue Jan 10 10:29:15 PST 2012 for OpenClovis SDK using Doxygen