aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/Kconfig2
-rw-r--r--drivers/Makefile1
-rw-r--r--drivers/android/Kconfig37
-rw-r--r--drivers/android/Makefile3
-rw-r--r--drivers/android/binder.c (renamed from drivers/staging/android/binder.c)0
-rw-r--r--drivers/android/binder.h (renamed from drivers/staging/android/binder.h)2
-rw-r--r--drivers/android/binder_trace.h (renamed from drivers/staging/android/binder_trace.h)0
-rw-r--r--drivers/staging/android/Kconfig30
-rw-r--r--drivers/staging/android/Makefile1
-rw-r--r--include/uapi/linux/Kbuild1
-rw-r--r--include/uapi/linux/android/Kbuild2
-rw-r--r--include/uapi/linux/android/binder.h (renamed from drivers/staging/android/uapi/binder.h)0
12 files changed, 47 insertions, 32 deletions
diff --git a/drivers/Kconfig b/drivers/Kconfig
index 1a693d3f9d51..569ff7886dc3 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -182,4 +182,6 @@ source "drivers/ras/Kconfig"
182 182
183source "drivers/thunderbolt/Kconfig" 183source "drivers/thunderbolt/Kconfig"
184 184
185source "drivers/android/Kconfig"
186
185endmenu 187endmenu
diff --git a/drivers/Makefile b/drivers/Makefile
index ebee55537a05..60d19820a4d4 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -161,3 +161,4 @@ obj-$(CONFIG_POWERCAP) += powercap/
161obj-$(CONFIG_MCB) += mcb/ 161obj-$(CONFIG_MCB) += mcb/
162obj-$(CONFIG_RAS) += ras/ 162obj-$(CONFIG_RAS) += ras/
163obj-$(CONFIG_THUNDERBOLT) += thunderbolt/ 163obj-$(CONFIG_THUNDERBOLT) += thunderbolt/
164obj-$(CONFIG_ANDROID) += android/
diff --git a/drivers/android/Kconfig b/drivers/android/Kconfig
new file mode 100644
index 000000000000..bdfc6c6f4f5a
--- /dev/null
+++ b/drivers/android/Kconfig
@@ -0,0 +1,37 @@
1menu "Android"
2
3config ANDROID
4 bool "Android Drivers"
5 ---help---
6 Enable support for various drivers needed on the Android platform
7
8if ANDROID
9
10config ANDROID_BINDER_IPC
11 bool "Android Binder IPC Driver"
12 depends on MMU
13 default n
14 ---help---
15 Binder is used in Android for both communication between processes,
16 and remote method invocation.
17
18 This means one Android process can call a method/routine in another
19 Android process, using Binder to identify, invoke and pass arguments
20 between said processes.
21
22config ANDROID_BINDER_IPC_32BIT
23 bool
24 depends on !64BIT && ANDROID_BINDER_IPC
25 default y
26 ---help---
27 The Binder API has been changed to support both 32 and 64bit
28 applications in a mixed environment.
29
30 Enable this to support an old 32-bit Android user-space (v4.4 and
31 earlier).
32
33 Note that enabling this will break newer Android user-space.
34
35endif # if ANDROID
36
37endmenu
diff --git a/drivers/android/Makefile b/drivers/android/Makefile
new file mode 100644
index 000000000000..3b7e4b072c58
--- /dev/null
+++ b/drivers/android/Makefile
@@ -0,0 +1,3 @@
1ccflags-y += -I$(src) # needed for trace events
2
3obj-$(CONFIG_ANDROID_BINDER_IPC) += binder.o
diff --git a/drivers/staging/android/binder.c b/drivers/android/binder.c
index c69c40d69d5c..c69c40d69d5c 100644
--- a/drivers/staging/android/binder.c
+++ b/drivers/android/binder.c
diff --git a/drivers/staging/android/binder.h b/drivers/android/binder.h
index eb0834656dfe..5dc6a66b0665 100644
--- a/drivers/staging/android/binder.h
+++ b/drivers/android/binder.h
@@ -24,7 +24,7 @@
24#define BINDER_IPC_32BIT 1 24#define BINDER_IPC_32BIT 1
25#endif 25#endif
26 26
27#include "uapi/binder.h" 27#include <uapi/linux/android/binder.h>
28 28
29#endif /* _LINUX_BINDER_H */ 29#endif /* _LINUX_BINDER_H */
30 30
diff --git a/drivers/staging/android/binder_trace.h b/drivers/android/binder_trace.h
index 7f20f3dc8369..7f20f3dc8369 100644
--- a/drivers/staging/android/binder_trace.h
+++ b/drivers/android/binder_trace.h
diff --git a/drivers/staging/android/Kconfig b/drivers/staging/android/Kconfig
index 7a0e28852965..7e012f37792b 100644
--- a/drivers/staging/android/Kconfig
+++ b/drivers/staging/android/Kconfig
@@ -1,37 +1,7 @@
1menu "Android" 1menu "Android"
2 2
3config ANDROID
4 bool "Android Drivers"
5 ---help---
6 Enable support for various drivers needed on the Android platform
7
8if ANDROID 3if ANDROID
9 4
10config ANDROID_BINDER_IPC
11 bool "Android Binder IPC Driver"
12 depends on MMU
13 default n
14 ---help---
15 Binder is used in Android for both communication between processes,
16 and remote method invocation.
17
18 This means one Android process can call a method/routine in another
19 Android process, using Binder to identify, invoke and pass arguments
20 between said processes.
21
22config ANDROID_BINDER_IPC_32BIT
23 bool
24 depends on !64BIT && ANDROID_BINDER_IPC
25 default y
26 ---help---
27 The Binder API has been changed to support both 32 and 64bit
28 applications in a mixed environment.
29
30 Enable this to support an old 32-bit Android user-space (v4.4 and
31 earlier).
32
33 Note that enabling this will break newer Android user-space.
34
35config ASHMEM 5config ASHMEM
36 bool "Enable the Anonymous Shared Memory Subsystem" 6 bool "Enable the Anonymous Shared Memory Subsystem"
37 default n 7 default n
diff --git a/drivers/staging/android/Makefile b/drivers/staging/android/Makefile
index 517ad5ffa429..479b2b86f8c8 100644
--- a/drivers/staging/android/Makefile
+++ b/drivers/staging/android/Makefile
@@ -2,7 +2,6 @@ ccflags-y += -I$(src) # needed for trace events
2 2
3obj-y += ion/ 3obj-y += ion/
4 4
5obj-$(CONFIG_ANDROID_BINDER_IPC) += binder.o
6obj-$(CONFIG_ASHMEM) += ashmem.o 5obj-$(CONFIG_ASHMEM) += ashmem.o
7obj-$(CONFIG_ANDROID_LOGGER) += logger.o 6obj-$(CONFIG_ANDROID_LOGGER) += logger.o
8obj-$(CONFIG_ANDROID_TIMED_OUTPUT) += timed_output.o 7obj-$(CONFIG_ANDROID_TIMED_OUTPUT) += timed_output.o
diff --git a/include/uapi/linux/Kbuild b/include/uapi/linux/Kbuild
index 6cad97485bad..5f17fa7bc153 100644
--- a/include/uapi/linux/Kbuild
+++ b/include/uapi/linux/Kbuild
@@ -1,4 +1,5 @@
1# UAPI Header export list 1# UAPI Header export list
2header-y += android/
2header-y += byteorder/ 3header-y += byteorder/
3header-y += can/ 4header-y += can/
4header-y += caif/ 5header-y += caif/
diff --git a/include/uapi/linux/android/Kbuild b/include/uapi/linux/android/Kbuild
new file mode 100644
index 000000000000..ca011eec252a
--- /dev/null
+++ b/include/uapi/linux/android/Kbuild
@@ -0,0 +1,2 @@
1# UAPI Header export list
2header-y += binder.h
diff --git a/drivers/staging/android/uapi/binder.h b/include/uapi/linux/android/binder.h
index dba4cef3a8d3..dba4cef3a8d3 100644
--- a/drivers/staging/android/uapi/binder.h
+++ b/include/uapi/linux/android/binder.h