Rev 1489 | Rev 1610 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1489 | Rev 1518 | ||
---|---|---|---|
Line 64... | Line 64... | ||
64 | 64 | ||
65 | extern ipcarg_t ipc_answer_fast(ipc_callid_t callid, ipcarg_t retval, ipcarg_t arg1, |
65 | extern ipcarg_t ipc_answer_fast(ipc_callid_t callid, ipcarg_t retval, ipcarg_t arg1, |
66 | ipcarg_t arg2); |
66 | ipcarg_t arg2); |
67 | extern ipcarg_t ipc_answer(ipc_callid_t callid, ipc_call_t *call); |
67 | extern ipcarg_t ipc_answer(ipc_callid_t callid, ipc_call_t *call); |
68 | 68 | ||
69 | #define ipc_call_async(phoneid,method,arg1,private, callback) (ipc_call_async_2(phoneid, method, arg1, 0, private, callback)) |
69 | #define ipc_call_async(phoneid,method,arg1,private, callback,can_preempt) (ipc_call_async_2(phoneid, method, arg1, 0, private, callback, can_preempt)) |
70 | extern void ipc_call_async_2(int phoneid, ipcarg_t method, ipcarg_t arg1, |
70 | extern void ipc_call_async_2(int phoneid, ipcarg_t method, ipcarg_t arg1, |
71 | ipcarg_t arg2, void *private, |
71 | ipcarg_t arg2, void *private, |
72 | ipc_async_callback_t callback); |
72 | ipc_async_callback_t callback, int can_preempt); |
73 | extern void ipc_call_async_3(int phoneid, ipcarg_t method, ipcarg_t arg1, |
73 | extern void ipc_call_async_3(int phoneid, ipcarg_t method, ipcarg_t arg1, |
74 | ipcarg_t arg2, ipcarg_t arg3, void *private, |
74 | ipcarg_t arg2, ipcarg_t arg3, void *private, |
75 | ipc_async_callback_t callback); |
75 | ipc_async_callback_t callback, int can_preempt); |
- | 76 | ||
76 | extern int ipc_connect_to_me(int phoneid, int arg1, int arg2, ipcarg_t *phone); |
77 | extern int ipc_connect_to_me(int phoneid, int arg1, int arg2, ipcarg_t *phone); |
77 | extern int ipc_connect_me_to(int phoneid, int arg1, int arg2); |
78 | extern int ipc_connect_me_to(int phoneid, int arg1, int arg2); |
78 | extern int ipc_hangup(int phoneid); |
79 | extern int ipc_hangup(int phoneid); |
79 | extern int ipc_register_irq(int irq, irq_code_t *code); |
80 | extern int ipc_register_irq(int irq, irq_code_t *code); |
80 | extern int ipc_unregister_irq(int irq); |
81 | extern int ipc_unregister_irq(int irq); |
81 | extern int ipc_forward_fast(ipc_callid_t callid, int phoneid, int method, ipcarg_t arg1); |
82 | extern int ipc_forward_fast(ipc_callid_t callid, int phoneid, int method, ipcarg_t arg1); |
82 | 83 | ||
- | 84 | ||
- | 85 | /* Primitve functions for IPC communication */ |
|
- | 86 | void send_call_3(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2, |
|
- | 87 | ipcarg_t arg3); |
|
- | 88 | void send_call_2(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2); |
|
- | 89 | #define send_call(ph,m,a1) send_call_2(ph,m,a1,0) |
|
- | 90 | /* These functions never preempt */ |
|
- | 91 | void nsend_call_3(int phoneid, ipcarg_t method, ipcarg_t arg1, |
|
- | 92 | ipcarg_t arg2, ipcarg_t arg3); |
|
- | 93 | void nsend_call_2(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2); |
|
- | 94 | #define nsend_call(ph,m,a1) nsend_call_2(ph,m,a1,0) |
|
- | 95 | ||
83 | #endif |
96 | #endif |