Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 1257 → Rev 1258

/kernel/trunk/generic/include/ipc/ipc.h
43,6 → 43,7
* userspace, will be discarded */
#define IPC_CALL_FORWARDED (1<<3) /* Call was forwarded */
#define IPC_CALL_CONN_ME_TO (1<<4) /* Identify connect_me_to */
#define IPC_CALL_NOTIF (1<<5) /* Interrupt notification */
 
/* Flags for ipc_wait_for_call */
#define IPC_WAIT_NONBLOCKING 1
119,6 → 120,8
* is hung up
*/
#define IPC_M_PHONE_HUNGUP 3
/** Interrupt notification */
#define IPC_M_INTERRUPT 4
 
 
/* Well-known methods */
154,6 → 157,9
link_t dispatched_calls; /* Should be hash table in the future */
 
link_t answers; /**< Answered calls */
 
SPINLOCK_DECLARE(irq_lock);
link_t irq_notifs; /**< Notifications from IRQ handlers */
};
 
typedef enum {
195,7 → 201,7
extern void ipc_phone_init(phone_t *phone);
extern void ipc_phone_connect(phone_t *phone, answerbox_t *box);
extern void ipc_call_free(call_t *call);
extern call_t * ipc_call_alloc(void);
extern call_t * ipc_call_alloc(int flags);
extern void ipc_answerbox_init(answerbox_t *box);
extern void ipc_call_static_init(call_t *call);
extern void task_print_list(void);
204,6 → 210,11
extern int ipc_phone_hangup(phone_t *phone);
extern void ipc_backsend_err(phone_t *phone, call_t *call, __native err);
 
extern int ipc_irq_register(answerbox_t *box, int irq);
extern void ipc_irq_send_notif(int irq);
extern void ipc_irq_unregister(answerbox_t *box, int irq);
 
 
extern answerbox_t *ipc_phone_0;
 
#endif