Changeset 5626277 in mainline for generic/include/ipc/ipc.h


Ignore:
Timestamp:
2006-04-29T22:12:40Z (19 years ago)
Author:
Ondrej Palkovsky <ondrap@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
51a7dc1
Parents:
407862e
Message:

Added support for IRQ notifiactions.

  • seems to work correctly on ia32, amd64
  • the mips kbd probably lowers interrupts when the char is read from the port, we will have to find a way how to deal with it.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • generic/include/ipc/ipc.h

    r407862e r5626277  
    4444#define IPC_CALL_FORWARDED      (1<<3) /* Call was forwarded */
    4545#define IPC_CALL_CONN_ME_TO     (1<<4) /* Identify connect_me_to */
     46#define IPC_CALL_NOTIF          (1<<5) /* Interrupt notification */
    4647
    4748/* Flags for ipc_wait_for_call */
     
    120121 */
    121122#define IPC_M_PHONE_HUNGUP      3
     123/** Interrupt notification */
     124#define IPC_M_INTERRUPT         4
    122125
    123126
     
    155158
    156159        link_t answers;          /**< Answered calls */
     160
     161        SPINLOCK_DECLARE(irq_lock);
     162        link_t irq_notifs;       /**< Notifications from IRQ handlers */
    157163};
    158164
     
    196202extern void ipc_phone_connect(phone_t *phone, answerbox_t *box);
    197203extern void ipc_call_free(call_t *call);
    198 extern call_t * ipc_call_alloc(void);
     204extern call_t * ipc_call_alloc(int flags);
    199205extern void ipc_answerbox_init(answerbox_t *box);
    200206extern void ipc_call_static_init(call_t *call);
     
    205211extern void ipc_backsend_err(phone_t *phone, call_t *call, __native err);
    206212
     213extern int ipc_irq_register(answerbox_t *box, int irq);
     214extern void ipc_irq_send_notif(int irq);
     215extern void ipc_irq_unregister(answerbox_t *box, int irq);
     216
     217
    207218extern answerbox_t *ipc_phone_0;
    208219
Note: See TracChangeset for help on using the changeset viewer.