AN2492 Freescale Semiconductor / Motorola, AN2492 Datasheet - Page 27

no-image

AN2492

Manufacturer Part Number
AN2492
Description
MPC184 Descriptor Programmers Guide--PCI View
Manufacturer
Freescale Semiconductor / Motorola
Datasheet
The descriptor header encodes the information required to select the MDEU for Op_0, and no EU for Op_1.
The Op_0 mode data configured the MDEU to operate in HMAC-MD-5 mode. Because all the data
necessary to calculate the HMAC in a single dynamic descriptor is available, initialize, and autopad are set,
while continue is off.
The descriptor header also encodes the descriptor type 0001, which defines the input and output ordering
for ‘common_nonsnoop_no_afeu.’ This is the descriptor type used for most operations which don’t require
a secondary EU. Following some null pointers, the HMAC key is loaded, followed by the length and pointer
to the data over which the HMAC will be calculated.
The data is brought into the MDEU input FIFO, and when the final byte of data to be HMAC’d has been
processed through the MDEU, the descriptor will cause the MDEU to write the HMAC to the indicated area
in PCI memory. The MPC184 will write the entire 16 bytes HMAC-MD-5 to PCI memory, and depending
on whether the packet is inbound or outbound, the host will either insert the most significant 12 bytes of the
HMAC generated by the MPC184 into the packet header (outbound) or compare the HMAC generated by
the MPC184 with the HMAC which was received with the inbound packet (obviously inbound). If the
HMACs match, the packet integrity check passes.
The next descriptor pointer is optional, and if a next descriptor is indicated, that descriptor may be
completely unrelated to the operation performed by the descriptor shown in Table 21.
Table 22 shows today’s most commonly used IPSec descriptor headers. In all the descriptor headers shown,
the MDEU performs auto padding.
MOTOROLA
Header
LEN_1
PTR_1
LEN_2
PTR_2
LEN_3
PTR_3
LEN_4
PTR_4
LEN_5
PTR_5
LEN_6
PTR_6
LEN_7
PTR_7
PTR_NEXT
Field
Table 21. Representative Descriptor DPD_Type 0001_HMAC-MD-5
MPC184 Descriptor Programmer’s Guide— PCI View
Freescale Semiconductor, Inc.
0x31E0_0010
Value / Type
For More Information On This Product,
Pointer
Pointer
Pointer
Pointer
Pointer
Pointer
Pointer
Length
Length
Length
Length
Length
Length
Length
Pointer
Go to: www.freescale.com
DPD_Type 0001_HMAC_MD-5
Null
Null
Null
Null
Number of bytes of HMAC key to be written to MDEU key register
PCI address of HMAC key
Number of bytes of data to be written to MDEU input FIFO
PCI address of data
Null
Null
Number of bytes of HMAC to be written out to memory (always 16
MD-5)
PCI address where HMAC is to be written
Null
Null
Pointer to next descriptor
Description
Additional Examples
27

Related parts for AN2492