PMC-Sierra PM5358 S/UNI 4x622 Power Screwdriver User Manual


 
PM5358 S/UNI-4x622 Driver Manual
Hardware Interface
Proprietary and Confidential to PMC-Sierra, Inc. 109
Document ID: PMC-2010419, Issue 1
Polling a Bit: sysSuni4x622PollBit
This function simply polls a register masked data until it is zero or times out.
Format
#define sysSuni4x622PollBit (base, offset, mask)
Prototype
INT4 sysSuni4x622PollBit (void *base, UINT2
offset, UINT1 mask)
Inputs
base : base address of device being accessed
offset : offset to the memory location as it
appears in the hardware data-sheet.
mask : mask to apply to byte read
Outputs
None
Returns
Success = 0
Failure = <any other value>
5.2 System-Specific Interrupt Servicing
The porting of interrupt servicing routines and tasks across platforms is a complex task. There are
many different implementations of these hardware specific functions. In this driver, the user is
responsible for:
Writing an interrupt handler (
sysSuni4x622ISRHandler) that will be installed in the
interrupt vector table of the system processor. This handler shall call
suni4x622ISR for
each device that has interrupt servicing enabled to perform the Interrupt-Service Routine
(ISR) related activity required by each device
Writing the routine that installs the ISR handler in the vector table of the system processor
and spawns the DPR task (
sysSuni4x622ISRHandlerInstall)
Writing the routine that removes the ISR Handler from the vector table of the system
processor and deletes/suspends the DPR task (
sysSuni4x622ISRHandlerRemove)
Installing the ISR Handler: sysSuni4x622ISRHandlerInstall
This function installs the USER-supplied Interrupt-Service Routine (ISR),
sysSuni4x622ISRHandler, into the processor’s interrupt vector table.
Format
#define sysSuni4x622ISRHandlerInstall()
Prototype
INT4 sysSuni4x622ISRHandlerInstall(void)
Inputs
None
Outputs
None
Returns
Success = 0