Rev 1507 | Rev 1625 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1507 | Rev 1595 | ||
|---|---|---|---|
| Line 27... | Line 27... | ||
| 27 | */ |
27 | */ |
| 28 | 28 | ||
| 29 | #ifndef __IRQ_H__ |
29 | #ifndef __IRQ_H__ |
| 30 | #define __IRQ_H__ |
30 | #define __IRQ_H__ |
| 31 | 31 | ||
| - | 32 | /** Maximum length of IPC IRQ program */ |
|
| 32 | #define IRQ_MAX_PROG_SIZE 10 |
33 | #define IRQ_MAX_PROG_SIZE 10 |
| 33 | 34 | ||
| - | 35 | /** Reserved 'virtual' messages for kernel notifications */ |
|
| - | 36 | #define IPC_IRQ_RESERVED_VIRTUAL 10 |
|
| - | 37 | ||
| - | 38 | #define IPC_IRQ_KLOG (-1) |
|
| - | 39 | ||
| 34 | typedef enum { |
40 | typedef enum { |
| 35 | CMD_MEM_READ_1 = 0, |
41 | CMD_MEM_READ_1 = 0, |
| 36 | CMD_MEM_READ_2, |
42 | CMD_MEM_READ_2, |
| 37 | CMD_MEM_READ_4, |
43 | CMD_MEM_READ_4, |
| 38 | CMD_MEM_READ_8, |
44 | CMD_MEM_READ_8, |
| Line 57... | Line 63... | ||
| 57 | irq_cmd_t *cmds; |
63 | irq_cmd_t *cmds; |
| 58 | } irq_code_t; |
64 | } irq_code_t; |
| 59 | 65 | ||
| 60 | #ifdef KERNEL |
66 | #ifdef KERNEL |
| 61 | 67 | ||
| - | 68 | #include <ipc/ipc.h> |
|
| - | 69 | ||
| 62 | extern void ipc_irq_make_table(int irqcount); |
70 | extern void ipc_irq_make_table(int irqcount); |
| 63 | extern int ipc_irq_register(answerbox_t *box, int irq, irq_code_t *ucode); |
71 | extern int ipc_irq_register(answerbox_t *box, int irq, irq_code_t *ucode); |
| 64 | extern void ipc_irq_send_notif(int irq); |
72 | extern void ipc_irq_send_notif(int irq); |
| - | 73 | extern void ipc_irq_send_msg(int irq, __native a2, __native a3); |
|
| 65 | extern void ipc_irq_unregister(answerbox_t *box, int irq); |
74 | extern void ipc_irq_unregister(answerbox_t *box, int irq); |
| 66 | extern void irq_ipc_bind_arch(__native irq); |
75 | extern void irq_ipc_bind_arch(__native irq); |
| 67 | extern void ipc_irq_cleanup(answerbox_t *box); |
76 | extern void ipc_irq_cleanup(answerbox_t *box); |
| 68 | 77 | ||
| 69 | #endif |
78 | #endif |