Main Page Modules Alphabetical List Data Structures File List Data Fields Globals
IXP425 NPE-Downloader (IxNpeDl) APIThe Public API for the IXP425 NPE Downloader.
More...
|
Modules |
IXP425 NPE Image ID Definition |
| Definition of NPE Image ID to be passed to ixNpeDlNpeInitAndStart() as input of type UINT32 which has the following fields format:.
|
Data Structures |
struct | IxNpeDlImageId |
| Image Id to identify each image contained in an image library. More...
|
Defines |
#define | IX_NPEDL_PARAM_ERR |
| NpeDl function return value for a parameter error.
|
#define | IX_NPEDL_RESOURCE_ERR |
| NpeDl function return value for a resource error.
|
#define | IX_NPEDL_CRITICAL_NPE_ERR |
| NpeDl function return value for a Critical NPE error occuring during download. Assume NPE is left in unstable condition if this value is returned.
|
#define | IX_NPEDL_CRITICAL_MICROCODE_ERR |
| NpeDl function return value for a Critical Microcode error discovered during download. Assume NPE is left in unstable condition if this value is returned.
|
#define | ixNpeDlMicrocodeImageOverride(x) |
| Map old terminology that uses term "image" to new term "image library".
|
#define | IxNpeDlVersionId |
| Map old terminology that uses term "version" to new term "image".
|
#define | ixNpeDlVersionDownload(x, y) |
| Map old terminology that uses term "version" to new term "image".
|
#define | ixNpeDlAvailableVersionsCountGet(x) |
| Map old terminology that uses term "version" to new term "image".
|
#define | ixNpeDlAvailableVersionsListGet(x, y) |
| Map old terminology that uses term "version" to new term "image".
|
#define | ixNpeDlLoadedVersionGet(x, y) |
| Map old terminology that uses term "version" to new term "image".
|
#define | clientImage |
| Map old terminology that uses term "image" to new term "image library".
|
#define | versionIdPtr |
| Map old terminology that uses term "version" to new term "image".
|
#define | numVersionsPtr |
| Map old terminology that uses term "version" to new term "image".
|
#define | versionIdListPtr |
| Map old terminology that uses term "version" to new term "image".
|
#define | IxNpeDlBuildId |
| Map old terminology that uses term "buildId" to new term "functionalityId".
|
#define | buildId |
| Map old terminology that uses term "buildId" to new term "functionalityId".
|
#define | IX_NPEDL_MicrocodeImage |
| Map old terminology that uses term "image" to new term "image library".
|
Typedefs |
typedef UINT8 | IxNpeDlFunctionalityId |
| Used to make up Functionality ID field of Image Id.
|
typedef UINT8 | IxNpeDlMajor |
| Used to make up Major Release field of Image Id.
|
typedef UINT8 | IxNpeDlMinor |
| Used to make up Minor Revision field of Image Id.
|
Enumerations |
enum | IxNpeDlNpeId {
IX_NPEDL_NPEID_NPEA,
IX_NPEDL_NPEID_NPEB,
IX_NPEDL_NPEID_NPEC,
IX_NPEDL_NPEID_MAX
} |
| NpeId numbers to identify NPE A, B or C. More...
|
Functions |
PUBLIC IX_STATUS | ixNpeDlNpeInitAndStart (UINT32 npeImageId) |
| Stop, reset, download microcode (firmware) and finally start NPE.
|
PUBLIC IX_STATUS | ixNpeDlCustomImageNpeInitAndStart (UINT32 *imageLibrary, UINT32 npeImageId) |
| Stop, reset, download microcode (firmware) and finally start NPE.
|
PUBLIC IX_STATUS | ixNpeDlLoadedImageFunctionalityGet (IxNpeDlNpeId npeId, UINT8 *functionalityId) |
| Gets the functionality of the image last loaded on a particular NPE.
|
IX_STATUS | ixNpeDlMicrocodeImageLibraryOverride (UINT32 *clientImageLibrary) |
| This instructs NPE Downloader to use client-supplied microcode image library.
|
PUBLIC IX_STATUS | ixNpeDlImageDownload (IxNpeDlImageId *imageIdPtr, BOOL verify) |
| Stop, reset, download microcode and finally start NPE.
|
PUBLIC IX_STATUS | ixNpeDlAvailableImagesCountGet (UINT32 *numImagesPtr) |
| Get the number of Images available in a microcode image library.
|
PUBLIC IX_STATUS | ixNpeDlAvailableImagesListGet (IxNpeDlImageId *imageIdListPtr, UINT32 *listSizePtr) |
| Get a list of the images available in a microcode image library.
|
PUBLIC IX_STATUS | ixNpeDlLoadedImageGet (IxNpeDlNpeId npeId, IxNpeDlImageId *imageIdPtr) |
| Gets the Id of the image currently loaded on a particular NPE.
|
PUBLIC IX_STATUS | ixNpeDlLatestImageGet (IxNpeDlNpeId npeId, IxNpeDlFunctionalityId functionalityId, IxNpeDlImageId *imageIdPtr) |
| This instructs NPE Downloader to get Id of the latest version for an image that is specified by the client.
|
PUBLIC IX_STATUS | ixNpeDlNpeStopAndReset (IxNpeDlNpeId npeId) |
| Stops and Resets an NPE.
|
PUBLIC IX_STATUS | ixNpeDlNpeExecutionStart (IxNpeDlNpeId npeId) |
| Starts code execution on a NPE.
|
PUBLIC IX_STATUS | ixNpeDlNpeExecutionStop (IxNpeDlNpeId npeId) |
| Stops code execution on a NPE.
|
IX_STATUS | ixNpeDlUnload (void) |
| This function will uninitialise the IxNpeDl component.
|
PUBLIC void | ixNpeDlStatsShow (void) |
| This function will display run-time statistics from the IxNpeDl component.
|
PUBLIC void | ixNpeDlStatsReset (void) |
| This function will reset the statistics of the IxNpeDl component.
|
Detailed Description
The Public API for the IXP425 NPE Downloader.
Define Documentation
|
Map old terminology that uses term "buildId" to new term "functionalityId".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 562 of file IxNpeDl.h. |
|
Map old terminology that uses term "image" to new term "image library".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 502 of file IxNpeDl.h. |
#define IX_NPEDL_CRITICAL_MICROCODE_ERR
|
|
|
NpeDl function return value for a Critical Microcode error discovered during download. Assume NPE is left in unstable condition if this value is returned.
Definition at line 100 of file IxNpeDl.h. |
#define IX_NPEDL_CRITICAL_NPE_ERR
|
|
|
NpeDl function return value for a Critical NPE error occuring during download. Assume NPE is left in unstable condition if this value is returned.
Definition at line 91 of file IxNpeDl.h. |
#define IX_NPEDL_MicrocodeImage
|
|
|
Map old terminology that uses term "image" to new term "image library".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 574 of file IxNpeDl.h. |
#define IX_NPEDL_PARAM_ERR
|
|
|
NpeDl function return value for a parameter error.
Definition at line 75 of file IxNpeDl.h. |
#define IX_NPEDL_RESOURCE_ERR
|
|
|
NpeDl function return value for a resource error.
Definition at line 82 of file IxNpeDl.h. |
#define ixNpeDlAvailableVersionsCountGet |
( |
x |
|
) |
|
|
|
Map old terminology that uses term "version" to new term "image".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 466 of file IxNpeDl.h. |
#define ixNpeDlAvailableVersionsListGet |
( |
x, |
|
|
y |
|
) |
|
|
|
Map old terminology that uses term "version" to new term "image".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 478 of file IxNpeDl.h. |
|
Map old terminology that uses term "buildId" to new term "functionalityId".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 550 of file IxNpeDl.h. |
#define ixNpeDlLoadedVersionGet |
( |
x, |
|
|
y |
|
) |
|
|
|
Map old terminology that uses term "version" to new term "image".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 490 of file IxNpeDl.h. |
#define ixNpeDlMicrocodeImageOverride |
( |
x |
|
) |
|
|
|
Map old terminology that uses term "image" to new term "image library".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 430 of file IxNpeDl.h. |
#define ixNpeDlVersionDownload |
( |
x, |
|
|
y |
|
) |
|
|
|
Map old terminology that uses term "version" to new term "image".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 454 of file IxNpeDl.h. |
|
Map old terminology that uses term "version" to new term "image".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 442 of file IxNpeDl.h. |
|
Map old terminology that uses term "version" to new term "image".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 526 of file IxNpeDl.h. |
|
Map old terminology that uses term "version" to new term "image".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 538 of file IxNpeDl.h. |
|
Map old terminology that uses term "version" to new term "image".
- Warning:
- THIS #define HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 514 of file IxNpeDl.h. |
Typedef Documentation
|
Used to make up Functionality ID field of Image Id.
- Warning:
- THIS typedef HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 588 of file IxNpeDl.h. |
|
Used to make up Major Release field of Image Id.
- Warning:
- THIS typedef HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 598 of file IxNpeDl.h. |
|
Used to make up Minor Revision field of Image Id.
- Warning:
- THIS typedef HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart for more information.
Definition at line 608 of file IxNpeDl.h. |
Enumeration Type Documentation
|
NpeId numbers to identify NPE A, B or C.
- Note:
- In this context, for IXP425 Silicon (B0):
- NPE-A has HDLC, HSS, AAL and UTOPIA Coprocessors.
- NPE-B has Ethernet Coprocessor.
- NPE-C has Ethernet, AES, DES and HASH Coprocessors.
- IXP425 Product Line have different combinations of coprocessors.
- Enumeration values:
-
IX_NPEDL_NPEID_NPEA |
Identifies NPE A. |
IX_NPEDL_NPEID_NPEB |
Identifies NPE B. |
IX_NPEDL_NPEID_NPEC |
Identifies NPE C. |
IX_NPEDL_NPEID_MAX |
Total Number of NPEs. |
Definition at line 623 of file IxNpeDl.h. |
Function Documentation
PUBLIC IX_STATUS ixNpeDlAvailableImagesCountGet |
( |
UINT32 * |
numImagesPtr |
) |
|
|
|
Get the number of Images available in a microcode image library.
- Parameters:
-
UINT32* | [out] numImagesPtr - A pointer to the number of images in the image library. |
Gets the number of images available in the microcode image library. Then returns this in a variable pointed to by numImagesPtr.
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart and ixNpeDlCustomImageNpeInitAndStart.
- Precondition:
- The Client should declare the variable to which numImagesPtr points
- Postcondition:
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL otherwise
|
PUBLIC IX_STATUS ixNpeDlAvailableImagesListGet |
( |
IxNpeDlImageId * |
imageIdListPtr, |
|
|
UINT32 * |
listSizePtr |
|
) |
|
|
|
Get a list of the images available in a microcode image library.
- Parameters:
-
IxNpeDlImageId* | [out] imageIdListPtr - Array to contain list of image Ids (memory allocated by Client). |
UINT32* | [inout] listSizePtr - As an input, this param should point to the max number of Ids the imageIdListPtr array can hold. NpeDl will replace the input value of this parameter with the number of image Ids actually filled into the array before returning. |
Finds list of images available in the microcode image library. Fills these into the array pointed to by imageIdListPtr
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart and ixNpeDlCustomImageNpeInitAndStart.
- Precondition:
- The Client should declare the variable to which numImagesPtr points
- The Client should create an array (imageIdListPtr) large enough to contain all the image Ids in the image library
- Postcondition:
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL otherwise
|
PUBLIC IX_STATUS ixNpeDlCustomImageNpeInitAndStart |
( |
UINT32 * |
imageLibrary, |
|
|
UINT32 |
npeImageId |
|
) |
|
|
|
Stop, reset, download microcode (firmware) and finally start NPE.
- Parameters:
-
UINT32 | [in] imageId - Id of the microcode image to download. |
This function locates the image specified by the imageId parameter from the specified microcode image library which is pointed to by the imageLibrary parameter. It then stops and resets the NPE, loads the firmware image onto the NPE, and then restarts the NPE.
This is a facility for users who wish to use an image from an external library of NPE firmware images. To use a standard image from the built-in library, see ixNpeDlNpeInitAndStart instead.
- Note:
- A list of valid image IDs is included in this header file. See #defines with prefix IX_NPEDL_NPEIMAGE_...
This function, along with ixNpeDlNpeInitAndStart and ixNpeDlLoadedImageFunctionalityGet, supercedes the following functions which are deprecated and will be removed completely in a future release:
- Precondition:
- The Client is responsible for ensuring mutual access to the NPE.
- The image library supplied must be in the correct format for use by the NPE Downloader (IxNpeDl) component. Details of the library format are contained in the Functional Specification document for IxNpeDl.
- Postcondition:
- The NPE Instruction Pipeline will be cleared if State Information has been downloaded.
- If the download fails with a critical error, the NPE may be left in an ususable state.
- Returns:
- IX_SUCCESS if the download was successful;
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_NPEDL_CRITICAL_NPE_ERR if a critical NPE error occured during download
- IX_NPEDL_CRITICAL_MICROCODE_ERR if a critical microcode error occured during download
- IX_FAIL if NPE is not available or image is failed to be located. A warning is issued if the NPE is not present.
|
PUBLIC IX_STATUS ixNpeDlImageDownload |
( |
IxNpeDlImageId * |
imageIdPtr, |
|
|
BOOL |
verify |
|
) |
|
|
|
Stop, reset, download microcode and finally start NPE.
- Parameters:
-
IxNpeDlImageId* | [in] imageIdPtr - Pointer to Id of the microcode image to download. |
BOOL | [in] verify - ON/OFF option to verify the download. If ON (verify == TRUE), the Downloader will read back each word written to the NPE registers to ensure the download operation was successful. |
Using the imageIdPtr, this function locates a particular image of microcode in the microcode image library in memory, and downloads the microcode to a particular NPE.
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart and ixNpeDlCustomImageNpeInitAndStart.
- Precondition:
- The Client is responsible for ensuring mutual access to the NPE.
- The Client should use ixNpeDlLatestImageGet() to obtain the latest version of the image before attempting download.
- Postcondition:
- The NPE Instruction Pipeline will be cleared if State Information has been downloaded.
- If the download fails with a critical error, the NPE may be left in an ususable state.
- Returns:
- IX_SUCCESS if the download was successful;
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_NPEDL_CRITICAL_NPE_ERR if a critical NPE error occured during download
- IX_PARAM_CRITICAL_MICROCODE_ERR if a critical microcode error occured during download
- IX_FAIL if NPE is not available or image is failed to be located. A warning is issued if the NPE is not present.
|
|
This instructs NPE Downloader to get Id of the latest version for an image that is specified by the client.
- Parameters:
-
IxNpeDlNpeId | [in] npeId - Id of the target NPE. |
IxNpeDlFunctionalityId | [in] functionalityId - functionality of the image |
IxNpeDlImageId* | [out] imageIdPtr - Pointer to the where the image id should be stored. |
This function sets NPE Downloader to return the id of the latest version for image. The user will select the image by providing a particular NPE (specifying npeId) with particular functionality (specifying FunctionalityId). The most recent version available as determined by the highest Major and Minor revision numbers is returned in imageIdPtr.
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart and ixNpeDlCustomImageNpeInitAndStart.
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL otherwise
|
PUBLIC IX_STATUS ixNpeDlLoadedImageFunctionalityGet |
( |
IxNpeDlNpeId |
npeId, |
|
|
UINT8 * |
functionalityId |
|
) |
|
|
|
Gets the functionality of the image last loaded on a particular NPE.
- Parameters:
-
IxNpeDlNpeId | [in] npeId - Id of the target NPE. |
UINT8* | [out] functionalityId - the functionality ID of the image last loaded on the NPE. |
This function retrieves the functionality ID of the image most recently downloaded successfully to the specified NPE. If the NPE does not contain a valid image, this function returns a FAIL status.
- Warning:
- This function is not intended for general use, as a knowledge of how to interpret the functionality ID is required. As such, this function should only be used by other Access Layer components of the IXP400 Software Release.
- Precondition:
- Postcondition:
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL if the NPE does not have a valid image loaded
|
|
Gets the Id of the image currently loaded on a particular NPE.
- Parameters:
-
IxNpeDlNpeId | [in] npeId - Id of the target NPE. |
IxNpeDlImageId* | [out] imageIdPtr - Pointer to the where the image id should be stored. |
If an image of microcode was previously downloaded successfully to the NPE by NPE Downloader, this function returns in imageIdPtr the image Id of that image loaded on the NPE.
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release.
- Precondition:
- The Client has allocated memory to the imageIdPtr pointer.
- Postcondition:
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL if the NPE doesn't currently have a image loaded
|
IX_STATUS ixNpeDlMicrocodeImageLibraryOverride |
( |
UINT32 * |
clientImageLibrary |
) |
|
|
|
This instructs NPE Downloader to use client-supplied microcode image library.
- Parameters:
-
UINT32* | [in] clientImageLibrary - Pointer to the client-supplied NPE microcode image library |
This function sets NPE Downloader to use a client-supplied microcode image library instead of the standard image library which is included by the NPE Downloader. This function is provided mainly for increased testability and should not be used in normal circumstances. When not used, NPE Downloader will use a "built-in" image library, local to this component, which should always contain the latest microcode for the NPEs.
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlCustomImageNpeInitAndStart.
- Precondition:
- clientImageLibrary should point to a microcode image library valid for use by the NPE Downloader component.
- Postcondition:
- the client-supplied image library will be used for all subsequent operations performed by the NPE Downloader
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL if the client-supplied image library did not contain a valid signature
|
PUBLIC IX_STATUS ixNpeDlNpeExecutionStart |
( |
IxNpeDlNpeId |
npeId |
) |
|
|
|
Starts code execution on a NPE.
- Parameters:
-
IxNpeDlNpeId | [in] npeId - Id of the target NPE |
Starts execution of code on a particular NPE. A client would typically use this after a download to NPE is performed, to start/restart code execution on the NPE.
- Note:
- It is no longer necessary to call this function after downloading a new image to the NPE. It is left on the API only to allow greater control of NPE execution if required. Where appropriate, use ixNpeDlNpeInitAndStart or ixNpeDlCustomImageNpeInitAndStart instead.
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart and ixNpeDlCustomImageNpeInitAndStart.
- Precondition:
- The Client is responsible for ensuring mutual access to the NPE.
- Note that this function does not set the NPE Next Program Counter (NextPC), so it should be set beforehand if required by downloading appropriate State Information (using ixNpeDlVersionDownload()).
- Postcondition:
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL otherwise
|
PUBLIC IX_STATUS ixNpeDlNpeExecutionStop |
( |
IxNpeDlNpeId |
npeId |
) |
|
|
|
Stops code execution on a NPE.
- Parameters:
-
IxNpeDlNpeId | [in] npeId - Id of the target NPE |
Stops execution of code on a particular NPE. This would typically be used by a client before a download to NPE is performed, to stop code execution on an NPE, unless ixNpeDlNpeStopAndReset() is used instead. Unlike ixNpeDlNpeStopAndReset(), this function only halts the NPE and leaves all registers and settings intact. This is useful, for example, between stages of a multi-stage download, to stop the NPE prior to downloading the next image while leaving the current state of the NPE intact..
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart and ixNpeDlCustomImageNpeInitAndStart.
- Precondition:
- The Client is responsible for ensuring mutual access to the NPE.
- Postcondition:
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL otherwise
|
PUBLIC IX_STATUS ixNpeDlNpeInitAndStart |
( |
UINT32 |
npeImageId |
) |
|
|
|
Stop, reset, download microcode (firmware) and finally start NPE.
- Parameters:
-
UINT32 | [in] imageId - Id of the microcode image to download. |
This function locates the image specified by the imageId parameter from the default microcode image library which is included internally by this component. It then stops and resets the NPE, loads the firmware image onto the NPE, and then restarts the NPE.
- Note:
- A list of valid image IDs is included in this header file. See #defines with prefix IX_NPEDL_NPEIMAGE_...
This function, along with ixNpeDlCustomImageNpeInitAndStart and ixNpeDlLoadedImageFunctionalityGet, supercedes the following functions which are deprecated and will be removed completely in a future release:
- Precondition:
- The Client is responsible for ensuring mutual access to the NPE.
- Postcondition:
- The NPE Instruction Pipeline will be cleared if State Information has been downloaded.
- If the download fails with a critical error, the NPE may be left in an ususable state.
- Returns:
- IX_SUCCESS if the download was successful;
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_NPEDL_CRITICAL_NPE_ERR if a critical NPE error occured during download
- IX_NPEDL_CRITICAL_MICROCODE_ERR if a critical microcode error occured during download
- IX_FAIL if NPE is not available or image is failed to be located. A warning is issued if the NPE is not present.
|
PUBLIC IX_STATUS ixNpeDlNpeStopAndReset |
( |
IxNpeDlNpeId |
npeId |
) |
|
|
|
Stops and Resets an NPE.
- Parameters:
-
IxNpeDlNpeId | [in] npeId - Id of the target NPE. |
This function performs a soft NPE reset by writing reset values to particular NPE registers. Note that this does not reset NPE co-processors. This implicitly stops NPE code execution before resetting the NPE.
- Note:
- It is no longer necessary to call this function before downloading a new image to the NPE. It is left on the API only to allow greater control of NPE execution if required. Where appropriate, use ixNpeDlNpeInitAndStart or ixNpeDlCustomImageNpeInitAndStart instead.
- Warning:
- THIS FUNCTION HAS BEEN DEPRECATED AND SHOULD NOT BE USED. It will be removed in a future release. See ixNpeDlNpeInitAndStart and ixNpeDlCustomImageNpeInitAndStart.
- Precondition:
- The Client is responsible for ensuring mutual access to the NPE.
- Postcondition:
- Returns:
- IX_SUCCESS if the operation was successful
- IX_NPEDL_PARAM_ERR if a parameter error occured
- IX_FAIL otherwise
|
PUBLIC void ixNpeDlStatsReset |
( |
void |
|
) |
|
|
|
This function will reset the statistics of the IxNpeDl component.
- Returns:
- none
|
PUBLIC void ixNpeDlStatsShow |
( |
void |
|
) |
|
|
|
This function will display run-time statistics from the IxNpeDl component.
- Returns:
- none
|
PUBLIC IX_STATUS ixNpeDlUnload |
( |
void |
|
) |
|
|
|
This function will uninitialise the IxNpeDl component.
This function will uninitialise the IxNpeDl component. It should only be called once, and only if the IxNpeDl component has already been initialised by calling any of the following functions:
If possible, this function should be called before a soft reboot or unloading a kernel module to perform any clean up operations required for IxNpeDl.
The following actions will be performed by this function:
- Unmapping of any kernel memory mapped by IxNpeDl
- Returns:
- IX_SUCCESS if the operation was successful
- IX_FAIL otherwise
|
|