PM5358 S/UNI-4x622 Driver Manual

Hardware Interface

Failure = <any other value>

Pseudocode Begin

install sysSuni4x622ISRHandler in processor’s 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

Prototype

Inputs

Outputs

Returns

Pseudocode

#define sysSuni4x622ISRHandler(intId)

Void sysSuni4x622ISRHandler(UINT4 intId)

intId

: interrupt identifier

None

None

Begin

for each device registered 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 status 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

Proprietary and Confidential to PMC-Sierra, Inc.

110

Document ID: PMC-2010419, Issue 1

 

Page 110
Image 110
PMC-Sierra PM5358 S/UNI 4x622 manual ISR Handler sysSuni4x622ISRHandler, DPR Task sysSuni4x622DPRTask, Pseudocode Begin