aboutsummaryrefslogtreecommitdiff
path: root/drivers/staging/android/ashmem.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/android/ashmem.h')
-rw-r--r--drivers/staging/android/ashmem.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/staging/android/ashmem.h b/drivers/staging/android/ashmem.h
index c9b2ebaa441a..ff7328f669f7 100644
--- a/drivers/staging/android/ashmem.h
+++ b/drivers/staging/android/ashmem.h
@@ -32,6 +32,13 @@ struct ashmem_pin {
size_t len; /* length forward from offset, in bytes, page-aligned */
};
+#ifdef CONFIG_COMPAT
+struct compat_ashmem_pin {
+ compat_size_t offset; /* offset into region, in bytes, page-aligned */
+ compat_size_t len; /* length forward from offset, in bytes, page-aligned */
+};
+#endif
+
#define __ASHMEMIOC 0x77
#define ASHMEM_SET_NAME _IOW(__ASHMEMIOC, 1, char[ASHMEM_NAME_LEN])
@@ -45,4 +52,12 @@ struct ashmem_pin {
#define ASHMEM_GET_PIN_STATUS _IO(__ASHMEMIOC, 9)
#define ASHMEM_PURGE_ALL_CACHES _IO(__ASHMEMIOC, 10)
+/* support of 32bit userspace on 64bit platforms */
+#ifdef CONFIG_COMPAT
+#define COMPAT_ASHMEM_SET_SIZE _IOW(__ASHMEMIOC, 3, compat_size_t)
+#define COMPAT_ASHMEM_SET_PROT_MASK _IOW(__ASHMEMIOC, 5, unsigned int)
+#define COMPAT_ASHMEM_PIN _IOW(__ASHMEMIOC, 7, struct compat_ashmem_pin)
+#define COMPAT_ASHMEM_UNPIN _IOW(__ASHMEMIOC, 8, struct compat_ashmem_pin)
+#endif
+
#endif /* _LINUX_ASHMEM_H */