1#ifndef __DEV__NOTIFY_H__
2#define __DEV__NOTIFY_H__
18#define NOTIFIER_FLAG_ONCE (1 << 0)
19#define NOTIFIER_FLAG_ATOMIC (1 << 1)
20#define NOTIFIER_FLAG_DISABLED (1 << 2)
22#define NOTIFY_HIGHT 1000
23#define NOTIFY_MEDIUM 500
24#define NOTIFY_NORMAL 100
43#define NOTIFY_DEV_HASH_SIZE 64
44#define NOTIFY_DEV_HASH_MASK (NOTIFY_DEV_HASH_SIZE - 1)
void notify_dev_create(kstring name)
int notify_call(char *name, uint32_t event, void *data)
int notify_unregister(kstring name, struct notifier *n)
void(* notify_callback_t)(uint32_t event, void *data, void *context)
int notify_register(char *name, struct notifier *n)
int notify_dev_destroy(kstring name)
#define NOTIFY_DEV_HASH_SIZE
int wait_until_receive_notify(const char *name, uint64_t timeout)
notify_callback_t callback
struct notify_dev * buckets[64]
volatile uint64_t event_received
struct notify_chain chain