Kconfig revision 2a2f434d743209cda09c68acd63cbcae8e6d17c6
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
35config 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
47config 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
64config ANDROID_TIMED_OUTPUT
65	bool "Timed output class driver"
66	default y
67
68config ANDROID_TIMED_GPIO
69	tristate "Android timed gpio driver"
70	depends on GPIOLIB && ANDROID_TIMED_OUTPUT
71	default n
72
73config ANDROID_LOW_MEMORY_KILLER
74	bool "Android Low Memory Killer"
75	---help---
76	  Registers processes to be killed when memory is low
77
78config 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
87config 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
96config 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
106config 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
115config 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
124source "drivers/staging/android/ion/Kconfig"
125
126source "drivers/staging/android/fiq_debugger/Kconfig"
127
128endif # if ANDROID
129
130endmenu
131