Changeset 98e4507 in mainline for kernel/generic/include/ipc/event.h


Ignore:
Timestamp:
2011-05-20T01:13:40Z (13 years ago)
Author:
Petr Koupy <petr.koupy@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
5c460cc
Parents:
a0bb65af (diff), 326bf65 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge mainline changes.

File:
1 edited

Legend:

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

    ra0bb65af r98e4507  
    4141#include <ipc/ipc.h>
    4242
     43typedef void (*event_callback_t)(void);
     44
    4345/** Event notification structure. */
    4446typedef struct {
     
    5153        /** Counter. */
    5254        size_t counter;
     55       
     56        /** Masked flag. */
     57        bool masked;
     58        /** Unmask callback. */
     59        event_callback_t unmask_callback;
    5360} event_t;
    5461
    5562extern void event_init(void);
     63extern void event_cleanup_answerbox(answerbox_t *);
     64extern void event_set_unmask_callback(event_type_t, event_callback_t);
     65
     66#define event_notify_0(e, m) \
     67        event_notify((e), (m), 0, 0, 0, 0, 0)
     68#define event_notify_1(e, m, a1) \
     69        event_notify((e), (m), (a1), 0, 0, 0, 0)
     70#define event_notify_2(e, m, a1, a2) \
     71        event_notify((e), (m), (a1), (a2), 0, 0, 0)
     72#define event_notify_3(e, m, a1, a2, a3) \
     73        event_notify((e), (m), (a1), (a2), (a3), 0, 0)
     74#define event_notify_4(e, m, a1, a2, a3, a4) \
     75        event_notify((e), (m), (a1), (a2), (a3), (a4), 0)
     76#define event_notify_5(e, m, a1, a2, a3, a4, a5) \
     77        event_notify((e), (m), (a1), (a2), (a3), (a4), (a5))
     78
     79extern int event_notify(event_type_t, bool, sysarg_t, sysarg_t, sysarg_t,
     80    sysarg_t, sysarg_t);
     81
    5682extern sysarg_t sys_event_subscribe(sysarg_t, sysarg_t);
    57 extern bool event_is_subscribed(event_type_t);
    58 extern void event_cleanup_answerbox(answerbox_t *);
    59 
    60 #define event_notify_0(e) \
    61         event_notify((e), 0, 0, 0, 0, 0)
    62 #define event_notify_1(e, a1) \
    63         event_notify((e), (a1), 0, 0, 0, 0)
    64 #define event_notify_2(e, a1, a2) \
    65         event_notify((e), (a1), (a2), 0, 0, 0)
    66 #define event_notify_3(e, a1, a2, a3) \
    67         event_notify((e), (a1), (a2), (a3), 0, 0)
    68 #define event_notify_4(e, a1, a2, a3, a4) \
    69         event_notify((e), (a1), (a2), (a3), (a4), 0)
    70 #define event_notify_5(e, a1, a2, a3, a4, a5) \
    71         event_notify((e), (a1), (a2), (a3), (a4), (a5))
    72 
    73 extern void event_notify(event_type_t, sysarg_t, sysarg_t, sysarg_t,
    74     sysarg_t, sysarg_t);
     83extern sysarg_t sys_event_unmask(sysarg_t);
    7584
    7685#endif
Note: See TracChangeset for help on using the changeset viewer.