summaryrefslogtreecommitdiffstats
path: root/drivers/staging/csr/oska/alloc.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/csr/oska/alloc.h')
-rw-r--r--drivers/staging/csr/oska/alloc.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/drivers/staging/csr/oska/alloc.h b/drivers/staging/csr/oska/alloc.h
new file mode 100644
index 000000000000..0f106016e1f7
--- /dev/null
+++ b/drivers/staging/csr/oska/alloc.h
@@ -0,0 +1,41 @@
+/*
+ * OSKA Linux implementation -- memory allocation
+ *
+ * Copyright (C) 2007 Cambridge Silicon Radio Ltd.
+ *
+ * Refer to LICENSE.txt included with this source code for details on
+ * the license terms.
+ */
+#ifndef __OSKA_LINUX_ALLOC_H
+#define __OSKA_LINUX_ALLOC_H
+
+#include <linux/kernel.h>
+#include <linux/slab.h>
+#include <linux/vmalloc.h>
+
+static inline void *os_alloc(size_t size)
+{
+ return kzalloc(size, GFP_ATOMIC);
+}
+
+static inline void *os_alloc_nonzeroed(size_t size)
+{
+ return kmalloc(size, GFP_KERNEL);
+}
+
+static inline void os_free(void *ptr)
+{
+ kfree(ptr);
+}
+
+static inline void *os_alloc_big(size_t size)
+{
+ return vmalloc(size);
+}
+
+static inline void os_free_big(void *ptr)
+{
+ vfree(ptr);
+}
+
+#endif /* #ifndef __OSKA_LINUX_ALLOC_H */