Intel IXP400 Frozen Dessert Maker User Manual


 
Intel
®
IXP400 Software
Access-Layer Components: Security (IxCryptoAcc) API
April 2005 IXP400 Software Version 2.0 Programmer’s Guide
92 Document Number: 252539, Revision: 007
1. The proper NPE microcode images must be downloaded to the NPEs and initialized, if
applicable.
2. IxCryptoAcc must be configured appropriately according to the NPEs and services that will be
utilized. By default, IxCryptoAccConfig() configured the component for using NPE C and
enabled the Intel XScale core WEP engine.
3. IxCryptoAcc must be initialized. At this point the client application should define the crypto
context to be registered, as well as create the buffers for the initial chaining variables.
4. The crypto context must be registered using the IxCryptoAccCtxRegister() function.
5. The IxCryptoAcc API will write the crypto context structure to SDRAM. If NPE-based
acceleration is being used, IxCryptoAcc will use IxQMgr to place a descriptor for the crypto
context being registered into the Crypto Request Queue.
6. The NPE will read the descriptor on the Crypto Ready Queue, generate any reverse keys
required, and generate the initial chaining variable if required.
7. The NPE or Intel XScale core WEP Engine writes the resulting data in the Crypto Context
Database residing in SDRAM. The NPE will then enqueue a descriptor onto the Crypto
Complete Queue to alert the IxCryptoAcc component that registration is complete.
Figure 28. IxCryptoAcc API Call Process Flow for CCD Updates
IPSec or
WEP Client
1. IxNpeDlNpeInitAndStart (ImageID)
2. IxCryptoAccConfig ()
3. IxCryptoAccInit ()
create IxCryptoAccCtx, create mBufs
4. IxCryptoAccCtxRegister ( *AccCtx,
*MbufPrimaryChainVar,
*MbufSecondaryChainVar,
registerCallback, performCallback,
*CryptoCtxId)
IxQMgr / AQM
NPE
IxCryptoAcc
Crypto Request Queue
Crypto Complete Queue
SDRAM
5.
6.
7.
8. IxCryptoRegisterCompleteCallback
(cryptoContextId, mBuf *, IxCryptoAccStatus)
B2917-01