aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2013-12-06 09:27:49 +0100
committerTakashi Iwai <tiwai@suse.de>2013-12-06 09:27:49 +0100
commitda3f8cfeaef27fbfcf81cb7baa0fdf427ba486cd (patch)
treefc7ee175460339eab13c3f0d7e04ccc471fa5771
parenta87d146bb7e1b299dcb22bfeea23592d42e45216 (diff)
downloadhda-emu-da3f8cfeaef27fbfcf81cb7baa0fdf427ba486cd.tar.gz
Add linux/async.h wrapper
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--include/linux/async.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/include/linux/async.h b/include/linux/async.h
new file mode 100644
index 0000000..0849482
--- /dev/null
+++ b/include/linux/async.h
@@ -0,0 +1,37 @@
+#ifndef __LINUX_ASYNC_H
+#define __LINUX_ASYNC_H
+
+typedef u64 async_cookie_t;
+typedef void (*async_func_t) (void *data, async_cookie_t cookie);
+struct async_domain {
+ int count;
+};
+
+#define ASYNC_DOMAIN(_name) \
+ struct async_domain _name = { .count = 0 }
+#define ASYNC_DOMAIN_EXCLUSIVE(_name) \
+ struct async_domain _name = { .count = 0 }
+
+static inline async_cookie_t async_schedule(async_func_t func, void *data)
+{
+ func(data, 0);
+ return 0;
+}
+
+static inline async_cookie_t async_schedule_domain(async_func_t func, void *data,
+ struct async_domain *domain)
+{
+ func(data, 0);
+ domain->count++;
+ return 0;
+}
+
+static inline void async_unregister_domain(struct async_domain *domain) {}
+static inline void async_synchronize_full(void) {}
+static inline void async_synchronize_full_domain(struct async_domain *domain) {}
+static inline void async_synchronize_cookie(async_cookie_t cookie) {}
+static inline void async_synchronize_cookie_domain(async_cookie_t cookie,
+ struct async_domain *domain) {}
+static inline bool current_is_async(void) { return false; }
+
+#endif /* __LINUX_ASYNC_H */