summaryrefslogtreecommitdiff
path: root/os/drivers/include
diff options
context:
space:
mode:
Diffstat (limited to 'os/drivers/include')
-rw-r--r--os/drivers/include/device.h10
-rw-r--r--os/drivers/include/macro_util.h20
2 files changed, 30 insertions, 0 deletions
diff --git a/os/drivers/include/device.h b/os/drivers/include/device.h
new file mode 100644
index 00000000..ee3a675d
--- /dev/null
+++ b/os/drivers/include/device.h
@@ -0,0 +1,10 @@
+#ifndef __DEVICE_H__
+#define __DEVICE_H__
+
+struct device {
+ void *devptr;
+ volatile void *data;
+ void *config;
+};
+
+#endif/*__DEVICE_H__*/
diff --git a/os/drivers/include/macro_util.h b/os/drivers/include/macro_util.h
new file mode 100644
index 00000000..0c447476
--- /dev/null
+++ b/os/drivers/include/macro_util.h
@@ -0,0 +1,20 @@
+#ifndef __DD_COMMON_H__
+#define __DD_COMMON_H__
+
+#include <stddef.h>
+
+#define Z_STRINGIFY(x) #x
+#define STRINGIFY(s) Z_STRINGIFY(s)
+
+/* concatenate the values of the arguments into one */
+#define _DO_CONCAT(x, y) x ## y
+#define _CONCAT(x, y) _DO_CONCAT(x, y)
+
+#define OFFSETOF(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
+
+#define CONTAINER_OF(ptr, type, member) ({ \
+ const typeof( ((type *)0)->member ) *__mptr = (ptr); \
+ (type *)((char *)__mptr - OFFSETOF(type,member));})
+
+#endif/*__DD_COMMON_H__*/
+