PM5358 S/UNI-4x622 Driver Manual
Hardware Interface
Proprietary and Confidential to PMC-Sierra, Inc. 110
Document ID: PMC-2010419, Issue 1
Failure = <any other value>
Pseudocode Begin
install sysSuni4x622ISRHandler in processors interrupt vector table
End

ISR Handler: sysSuni4x622ISRHandler

This routine is invoked when one or more S/UNI-4x622 devices raise the interrupt line to the
microprocessor. This routine invokes the driver-provided routine, suni4x622ISR, for each
device registered with the driver.
Format #define sysSuni4x622ISRHandler(intId)
Prototype Void sysSuni4x622ISRHandler(UINT4 intId)
Inputs intId : interrupt identifier
Outputs None
Returns None
Pseudocode Begin
for each device reg ister ed with the driver
if ISR mode == ISR_MODE call suni4x622ISR
if returned ISV buffer is not NULL
send ISV buffer to the DPR
End

DPR Task: sysSuni4x622DPRTask

This routine is installed as a separate task within the RTOS. It runs periodically and retrieves the
interrupt st atu s information sent to it by suni4x622ISR and then invokes suni4x622DPR for
the appropriate device.
Format #define sysSuni4x622DPRTask()
Prototype Void sysSuni4x622DPRTask(void)
Inputs None
Outputs None
Returns None
Pseudocode Begin
do
wait for an ISV buffer (sent by suni4x622ISR)
call suni4x622DPR with that ISV
loop forever