diff options
-rw-r--r-- | drivers/Kconfig | 2 | ||||
-rw-r--r-- | drivers/Makefile | 1 | ||||
-rw-r--r-- | drivers/android/Kconfig | 37 | ||||
-rw-r--r-- | drivers/android/Makefile | 3 | ||||
-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/Kconfig | 30 | ||||
-rw-r--r-- | drivers/staging/android/Makefile | 1 | ||||
-rw-r--r-- | include/uapi/linux/Kbuild | 1 | ||||
-rw-r--r-- | include/uapi/linux/android/Kbuild | 2 | ||||
-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 | ||
183 | source "drivers/thunderbolt/Kconfig" | 183 | source "drivers/thunderbolt/Kconfig" |
184 | 184 | ||
185 | source "drivers/android/Kconfig" | ||
186 | |||
185 | endmenu | 187 | endmenu |
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/ | |||
161 | obj-$(CONFIG_MCB) += mcb/ | 161 | obj-$(CONFIG_MCB) += mcb/ |
162 | obj-$(CONFIG_RAS) += ras/ | 162 | obj-$(CONFIG_RAS) += ras/ |
163 | obj-$(CONFIG_THUNDERBOLT) += thunderbolt/ | 163 | obj-$(CONFIG_THUNDERBOLT) += thunderbolt/ |
164 | obj-$(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 @@ | |||
1 | menu "Android" | ||
2 | |||
3 | config ANDROID | ||
4 | bool "Android Drivers" | ||
5 | ---help--- | ||
6 | Enable support for various drivers needed on the Android platform | ||
7 | |||
8 | if ANDROID | ||
9 | |||
10 | config 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 | |||
22 | config 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 | |||
35 | endif # if ANDROID | ||
36 | |||
37 | endmenu | ||
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 @@ | |||
1 | ccflags-y += -I$(src) # needed for trace events | ||
2 | |||
3 | obj-$(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 @@ | |||
1 | menu "Android" | 1 | menu "Android" |
2 | 2 | ||
3 | config ANDROID | ||
4 | bool "Android Drivers" | ||
5 | ---help--- | ||
6 | Enable support for various drivers needed on the Android platform | ||
7 | |||
8 | if ANDROID | 3 | if ANDROID |
9 | 4 | ||
10 | config 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 | |||
22 | config 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 | |||
35 | config ASHMEM | 5 | config 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 | ||
3 | obj-y += ion/ | 3 | obj-y += ion/ |
4 | 4 | ||
5 | obj-$(CONFIG_ANDROID_BINDER_IPC) += binder.o | ||
6 | obj-$(CONFIG_ASHMEM) += ashmem.o | 5 | obj-$(CONFIG_ASHMEM) += ashmem.o |
7 | obj-$(CONFIG_ANDROID_LOGGER) += logger.o | 6 | obj-$(CONFIG_ANDROID_LOGGER) += logger.o |
8 | obj-$(CONFIG_ANDROID_TIMED_OUTPUT) += timed_output.o | 7 | obj-$(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 |
2 | header-y += android/ | ||
2 | header-y += byteorder/ | 3 | header-y += byteorder/ |
3 | header-y += can/ | 4 | header-y += can/ |
4 | header-y += caif/ | 5 | header-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 | ||
2 | header-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 | |||