OSDN Git Service

android: support 32-bit binder in 64-bit kernel
[android-x86/kernel.git] / drivers / staging / android / Kconfig
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 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
36         bool "Enable the Anonymous Shared Memory Subsystem"
37         default n
38         depends on SHMEM
39         ---help---
40           The ashmem subsystem is a new shared memory allocator, similar to
41           POSIX SHM but with different behavior and sporting a simpler
42           file-based API.
43
44           It is, in theory, a good memory allocator for low-memory devices,
45           because it can discard shared memory units when under memory pressure.
46
47 config ANDROID_LOGGER
48         tristate "Android log driver"
49         default n
50         ---help---
51           This adds support for system-wide logging using four log buffers.
52
53           These are:
54
55               1: main
56               2: events
57               3: radio
58               4: system
59
60           Log reading and writing is performed via normal Linux reads and
61           optimized writes. This optimization avoids logging having too
62           much overhead in the system.
63
64 config ANDROID_TIMED_OUTPUT
65         bool "Timed output class driver"
66         default y
67
68 config ANDROID_TIMED_GPIO
69         tristate "Android timed gpio driver"
70         depends on GPIOLIB && ANDROID_TIMED_OUTPUT
71         default n
72
73 config ANDROID_LOW_MEMORY_KILLER
74         bool "Android Low Memory Killer"
75         ---help---
76           Registers processes to be killed when memory is low
77
78 config ANDROID_LOW_MEMORY_KILLER_AUTODETECT_OOM_ADJ_VALUES
79         bool "Android Low Memory Killer: detect oom_adj values"
80         depends on ANDROID_LOW_MEMORY_KILLER
81         default y
82         ---help---
83           Detect oom_adj values written to
84           /sys/module/lowmemorykiller/parameters/adj and convert them
85           to oom_score_adj values.
86
87 config ANDROID_INTF_ALARM_DEV
88         tristate "Android alarm driver"
89         depends on RTC_CLASS
90         default n
91         ---help---
92           Provides non-wakeup and rtc backed wakeup alarms based on rtc or
93           elapsed realtime, and a non-wakeup alarm on the monotonic clock.
94           Also exports the alarm interface to user-space.
95
96 config SYNC
97         bool "Synchronization framework"
98         default n
99         select ANON_INODES
100         select DMA_SHARED_BUFFER
101         ---help---
102           This option enables the framework for synchronization between multiple
103           drivers.  Sync implementations can take advantage of hardware
104           synchronization built into devices like GPUs.
105
106 config SW_SYNC
107         bool "Software synchronization objects"
108         default n
109         depends on SYNC
110         ---help---
111           A sync object driver that uses a 32bit counter to coordinate
112           syncrhronization.  Useful when there is no hardware primitive backing
113           the synchronization.
114
115 config SW_SYNC_USER
116         bool "Userspace API for SW_SYNC"
117         default n
118         depends on SW_SYNC
119         ---help---
120           Provides a user space API to the sw sync object.
121           *WARNING* improper use of this can result in deadlocking kernel
122           drivers from userspace.
123
124 config EFI_BOOTLOADER_CONTROL
125         tristate "EFI Bootloader Control module"
126         depends on EFI_VARS
127         default n
128         help
129           This driver installs a reboot hook, such that if reboot() is
130           invoked with a string argument NNN, "bootonce-NNN" is copied to
131           the EFI variable, to be read by the bootloader. If the string
132           matches one of the boot labels defined in its configuration,
133           the bootloader will boot once to that label.
134
135 source "drivers/staging/android/ion/Kconfig"
136
137 endif # if ANDROID
138
139 endmenu