/trunk/uspace/libc/include/ipc/ipc.h |
---|
83,8 → 83,8 |
extern int ipc_connect_to_me(int phoneid, int arg1, int arg2, ipcarg_t *phone); |
extern int ipc_connect_me_to(int phoneid, int arg1, int arg2); |
extern int ipc_hangup(int phoneid); |
extern int ipc_register_irq(int irq, irq_code_t *code); |
extern int ipc_unregister_irq(int irq); |
extern int ipc_register_irq(int inr, int devno, int method, irq_code_t *code); |
extern int ipc_unregister_irq(int inr, int devno); |
extern int ipc_forward_fast(ipc_callid_t callid, int phoneid, int method, ipcarg_t arg1); |
#endif |
/trunk/uspace/libc/generic/ipc.c |
---|
449,14 → 449,30 |
return __SYSCALL1(SYS_IPC_HANGUP, phoneid); |
} |
int ipc_register_irq(int irq, irq_code_t *ucode) |
/** Register IRQ notification. |
* |
* @param inr IRQ number. |
* @param devno Device number of the device generating inr. |
* @param method Use this method for notifying me. |
* @param ucode Top-half pseudocode handler. |
* |
* @return Value returned by the kernel. |
*/ |
int ipc_register_irq(int inr, int devno, int method, irq_code_t *ucode) |
{ |
return __SYSCALL2(SYS_IPC_REGISTER_IRQ, irq, (sysarg_t) ucode); |
return __SYSCALL4(SYS_IPC_REGISTER_IRQ, inr, devno, method, (sysarg_t) ucode); |
} |
int ipc_unregister_irq(int irq) |
/** Unregister IRQ notification. |
* |
* @param inr IRQ number. |
* @param devno Device number of the device generating inr. |
* |
* @return Value returned by the kernel. |
*/ |
int ipc_unregister_irq(int inr, int devno) |
{ |
return __SYSCALL1(SYS_IPC_UNREGISTER_IRQ, irq); |
return __SYSCALL2(SYS_IPC_UNREGISTER_IRQ, inr, devno); |
} |
int ipc_forward_fast(ipc_callid_t callid, int phoneid, int method, ipcarg_t arg1) |
/trunk/uspace/libc/generic/async.c |
---|
636,7 → 636,7 |
amsg_t *msg; |
if (in_interrupt_handler) { |
printf("Cannot send asynchronou request in interrupt handler.\n"); |
printf("Cannot send asynchronous request in interrupt handler.\n"); |
_exit(1); |
} |
662,7 → 662,7 |
amsg_t *msg; |
if (in_interrupt_handler) { |
printf("Cannot send asynchronou request in interrupt handler.\n"); |
printf("Cannot send asynchronous request in interrupt handler.\n"); |
_exit(1); |
} |