Intel IXP400 Frozen Dessert Maker User Manual


 
Intel
®
IXP400 Software
Access-Layer Components: NPE Message Handler (IxNpeMh) API
April 2005 IXP400 Software Version 2.0 Programmer’s Guide
230 Document Number: 252539, Revision: 007
5. Since this is an unsolicited message, the IxNpeMh component invokes the corresponding
unsolicited callback to pass the message back to the client.
The IxNpeMh component does not interpret message IDs. It only uses message IDs for
comparative purposes, and for passing a received message to the correct callback function. This
makes the IxNpeMh component immune to changes in message IDs.
The IxNpeMh component relies on the message ID being stored in the most-significant byte of the
first word of the two-word message (IxNpeMhMessage).
Note: It is the responsibility of the client to create messages in the format expected by the NPEs.
Multiple clients may use the IxNpeMh component. Each client should take responsibility for
handling its own range of unsolicited message IDs. (See the
ixNpeMhUnsolicitedCallbackRegister.)
The IxNpeMh component handles messaging for the three NPEs independently. A problem or
delay in interacting with one NPE will not impact interaction with the other NPEs.
Figure 73. Receiving Unsolicited Messages from NPE to Software Client
Client
IxNpeMh
NPE B NPE CNPE A
Customer / Demo Code
Access Driver
NPEs
1. Register
Callback
callback n+k
...
callback n+1
callback n
0x00 callback
0x01 callback
...
0xff callback
2. Save Callback
5. Get Callback
6. Message
Callback
3. Message
Interrupt
4. Receive Message
B2397-01