psl1ght
A free SDK for Sony's PS3 console
Loading...
Searching...
No Matches
interrupt.h
Go to the documentation of this file.
1
5#ifndef __SYS_INTERRUPT_H__
6#define __SYS_INTERRUPT_H__
7
8#include <ppu-lv2.h>
9#include <lv2/interrupt.h>
10
11#define SYS_HW_THREAD_ANY 0xFFFFFFFEU
12#define SYS_HW_THREAD_INVALID 0xFFFFFFFFU
13#define SYS_INTERRUPT_TAG_ID_INVALID 0xFFFFFFFFU
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19LV2_SYSCALL sysInterruptTagCreate(sys_interrupt_tag_t *intrTag,sys_irqoutlet_id_t irq,sys_hw_thread_t hwThread)
20{
21 lv2syscall3(80, (u64)intrTag, irq, hwThread);
22 return_to_user_prog(s32);
23}
24
25LV2_SYSCALL sysInterruptTagDestroy(sys_interrupt_tag_t intrTag)
26{
27 lv2syscall1(81, intrTag);
28 return_to_user_prog(s32);
29}
30
31LV2_SYSCALL sysInterruptThreadEstablish(sys_interrupt_thread_handle_t *ih,sys_interrupt_tag_t intrTag,sys_ppu_thread_t intrThread,u64 arg)
32{
33 lv2syscall5(84, (u64)ih, intrTag, intrThread, arg, 0);
34 return_to_user_prog(s32);
35}
36
37LV2_SYSCALL _sysInterruptThreadDisestablish(sys_interrupt_thread_handle_t ih,u64 * tlsMem)
38{
39 lv2syscall2(89, ih, (u64)tlsMem);
40 return_to_user_prog(s32);
41}
42
43LV2_INLINE void sysInterruptThreadEOI(void)
44{
45 lv2syscall0(88);
46}
47
48#ifdef __cplusplus
49 }
50#endif
51
52#endif
Thread Interrupt functions.
LV2_SYSCALL sysInterruptThreadEstablish(sys_interrupt_thread_handle_t *ih, sys_interrupt_tag_t intrTag, sys_ppu_thread_t intrThread, u64 arg)
Definition interrupt.h:31
LV2_INLINE void sysInterruptThreadEOI(void)
Definition interrupt.h:43
LV2_SYSCALL sysInterruptTagCreate(sys_interrupt_tag_t *intrTag, sys_irqoutlet_id_t irq, sys_hw_thread_t hwThread)
Definition interrupt.h:19
LV2_SYSCALL _sysInterruptThreadDisestablish(sys_interrupt_thread_handle_t ih, u64 *tlsMem)
Definition interrupt.h:37
LV2_SYSCALL sysInterruptTagDestroy(sys_interrupt_tag_t intrTag)
Definition interrupt.h:25