Changeset 2b017ba in mainline for kernel/generic/include/ipc/irq.h
- Timestamp:
- 2006-10-16T20:51:55Z (18 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 5f9b4d9a
- Parents:
- e3890b3f
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/ipc/irq.h
re3890b3f r2b017ba 39 39 #define IRQ_MAX_PROG_SIZE 10 40 40 41 /** Reserved 'virtual' messages for kernel notifications */ 42 #define IPC_IRQ_RESERVED_VIRTUAL 10 43 44 #define IPC_IRQ_KLOG (-1) 45 #define IPC_IRQ_KBDRESTART (-2) 41 #define VIRT_INR_KLOG -2 42 #define VIRT_INR_KBDRESTART -3 46 43 47 44 typedef enum { … … 76 73 77 74 #include <ipc/ipc.h> 75 #include <typedefs.h> 76 #include <arch/types.h> 78 77 79 extern void ipc_irq_make_table(int irqcount); 80 extern int ipc_irq_register(answerbox_t *box, int irq, irq_code_t *ucode); 81 extern void ipc_irq_send_notif(int irq); 82 extern void ipc_irq_send_msg(int irq, unative_t a1, unative_t a2, unative_t a3); 83 extern void ipc_irq_unregister(answerbox_t *box, int irq); 84 extern void irq_ipc_bind_arch(unative_t irq); 78 /** IPC notification config structure. 79 * 80 * Primarily, this structure is encapsulated in the irq_t structure. 81 * It is protected by irq_t::lock. 82 */ 83 struct ipc_notif_cfg { 84 answerbox_t *answerbox; /**< Answerbox for notifications. */ 85 unative_t method; /**< Method to be used for the notification. */ 86 irq_code_t *code; /**< Top-half pseudocode. */ 87 count_t counter; /**< Counter. */ 88 }; 89 90 extern int ipc_irq_register(answerbox_t *box, inr_t inr, devno_t devno, unative_t method, 91 irq_code_t *ucode); 92 extern void ipc_irq_send_notif(irq_t *irq); 93 extern void ipc_irq_send_msg(irq_t *irq, unative_t a1, unative_t a2, unative_t a3); 94 extern void ipc_irq_unregister(answerbox_t *box, inr_t inr, devno_t devno); 85 95 extern void ipc_irq_cleanup(answerbox_t *box); 86 96
Note:
See TracChangeset
for help on using the changeset viewer.