pspsdk-1.0+beta2
Interrupt Manager

This module contains routines to manage interrupts. More...

Data Structures

struct  tag_IntrHandlerOptionParam

Typedefs

typedef struct
tag_IntrHandlerOptionParam 
PspIntrHandlerOptionParam

Enumerations

enum  PspInterrupts {
  PSP_GPIO_INT = 4, PSP_ATA_INT = 5, PSP_UMD_INT = 6, PSP_MSCM0_INT = 7,
  PSP_WLAN_INT = 8, PSP_AUDIO_INT = 10, PSP_I2C_INT = 12, PSP_SIRCS_INT = 14,
  PSP_SYSTIMER0_INT = 15, PSP_SYSTIMER1_INT = 16, PSP_SYSTIMER2_INT = 17, PSP_SYSTIMER3_INT = 18,
  PSP_THREAD0_INT = 19, PSP_NAND_INT = 20, PSP_DMACPLUS_INT = 21, PSP_DMA0_INT = 22,
  PSP_DMA1_INT = 23, PSP_MEMLMD_INT = 24, PSP_GE_INT = 25, PSP_VBLANK_INT = 30,
  PSP_MECODEC_INT = 31, PSP_HPREMOTE_INT = 36, PSP_MSCM1_INT = 60, PSP_MSCM2_INT = 61,
  PSP_THREAD1_INT = 65, PSP_INTERRUPT_INT = 66
}
enum  PspSubInterrupts {
  PSP_GPIO_SUBINT = PSP_GPIO_INT, PSP_ATA_SUBINT = PSP_ATA_INT, PSP_UMD_SUBINT = PSP_UMD_INT, PSP_DMACPLUS_SUBINT = PSP_DMACPLUS_INT,
  PSP_GE_SUBINT = PSP_GE_INT, PSP_DISPLAY_SUBINT = PSP_VBLANK_INT
}

Functions

unsigned int sceKernelCpuSuspendIntr (void)
 Suspend all interrupts.
void sceKernelCpuResumeIntr (unsigned int flags)
 Resume all interrupts.
void sceKernelCpuResumeIntrWithSync (unsigned int flags)
 Resume all interrupts (using sync instructions).
int sceKernelIsCpuIntrSuspended (unsigned int flags)
 Determine if interrupts are suspended or active, based on the given flags.
int sceKernelIsCpuIntrEnable (void)
 Determine if interrupts are enabled or disabled.
int sceKernelRegisterSubIntrHandler (int intno, int no, void *handler, void *arg)
 Register a sub interrupt handler.
int sceKernelReleaseSubIntrHandler (int intno, int no)
 Release a sub interrupt handler.
int sceKernelEnableSubIntr (int intno, int no)
 Enable a sub interrupt.
int sceKernelDisableSubIntr (int intno, int no)
 Disable a sub interrupt handler.
int QueryIntrHandlerInfo (SceUID intr_code, SceUID sub_intr_code, PspIntrHandlerOptionParam *data)

Variables

const char * PspInterruptNames [67]

Detailed Description

This module contains routines to manage interrupts.

Typedef Documentation

Enumeration Type Documentation

Enumerator:
PSP_GPIO_INT 
PSP_ATA_INT 
PSP_UMD_INT 
PSP_MSCM0_INT 
PSP_WLAN_INT 
PSP_AUDIO_INT 
PSP_I2C_INT 
PSP_SIRCS_INT 
PSP_SYSTIMER0_INT 
PSP_SYSTIMER1_INT 
PSP_SYSTIMER2_INT 
PSP_SYSTIMER3_INT 
PSP_THREAD0_INT 
PSP_NAND_INT 
PSP_DMACPLUS_INT 
PSP_DMA0_INT 
PSP_DMA1_INT 
PSP_MEMLMD_INT 
PSP_GE_INT 
PSP_VBLANK_INT 
PSP_MECODEC_INT 
PSP_HPREMOTE_INT 
PSP_MSCM1_INT 
PSP_MSCM2_INT 
PSP_THREAD1_INT 
PSP_INTERRUPT_INT 
Enumerator:
PSP_GPIO_SUBINT 
PSP_ATA_SUBINT 
PSP_UMD_SUBINT 
PSP_DMACPLUS_SUBINT 
PSP_GE_SUBINT 
PSP_DISPLAY_SUBINT 

Function Documentation

int QueryIntrHandlerInfo ( SceUID  intr_code,
SceUID  sub_intr_code,
PspIntrHandlerOptionParam data 
)
void sceKernelCpuResumeIntr ( unsigned int  flags)

Resume all interrupts.

Parameters
flags- The value returned from sceKernelCpuSuspendIntr().
void sceKernelCpuResumeIntrWithSync ( unsigned int  flags)

Resume all interrupts (using sync instructions).

Parameters
flags- The value returned from sceKernelCpuSuspendIntr()
unsigned int sceKernelCpuSuspendIntr ( void  )

Suspend all interrupts.

Returns
The current state of the interrupt controller, to be used with sceKernelCpuResumeIntr().
int sceKernelDisableSubIntr ( int  intno,
int  no 
)

Disable a sub interrupt handler.

Parameters
intno- The sub interrupt to disable.
no- The sub interrupt handler number
Returns
< 0 on error.
int sceKernelEnableSubIntr ( int  intno,
int  no 
)

Enable a sub interrupt.

Parameters
intno- The sub interrupt to enable.
no- The sub interrupt handler number
Returns
< 0 on error.
int sceKernelIsCpuIntrEnable ( void  )

Determine if interrupts are enabled or disabled.

Returns
1 if interrupts are currently enabled.
int sceKernelIsCpuIntrSuspended ( unsigned int  flags)

Determine if interrupts are suspended or active, based on the given flags.

Parameters
flags- The value returned from sceKernelCpuSuspendIntr().
Returns
1 if flags indicate that interrupts were not suspended, 0 otherwise.
int sceKernelRegisterSubIntrHandler ( int  intno,
int  no,
void *  handler,
void *  arg 
)

Register a sub interrupt handler.

Parameters
intno- The interrupt number to register.
no- The sub interrupt handler number (user controlled)
handler- The interrupt handler
arg- An argument passed to the interrupt handler
Returns
< 0 on error.
int sceKernelReleaseSubIntrHandler ( int  intno,
int  no 
)

Release a sub interrupt handler.

Parameters
intno- The interrupt number to register.
no- The sub interrupt handler number
Returns
< 0 on error.

Variable Documentation

const char* PspInterruptNames[67]