Linux-libre 3.14.34-gnu
[librecmc/linux-libre.git] / drivers / staging / android / Kconfig
1 menu "Android"
2
3 config ANDROID
4         bool "Android Drivers"
5         default N
6         ---help---
7           Enable support for various drivers needed on the Android platform
8
9 if ANDROID
10
11 config ANDROID_BINDER_IPC
12         bool "Android Binder IPC Driver"
13         depends on MMU
14         default n
15         ---help---
16           Binder is used in Android for both communication between processes,
17           and remote method invocation.
18
19           This means one Android process can call a method/routine in another
20           Android process, using Binder to identify, invoke and pass arguments
21           between said processes.
22
23 config ASHMEM
24         bool "Enable the Anonymous Shared Memory Subsystem"
25         default n
26         depends on SHMEM
27         ---help---
28           The ashmem subsystem is a new shared memory allocator, similar to
29           POSIX SHM but with different behavior and sporting a simpler
30           file-based API.
31
32           It is, in theory, a good memory allocator for low-memory devices,
33           because it can discard shared memory units when under memory pressure.
34
35 config ANDROID_LOGGER
36         tristate "Android log driver"
37         default n
38         ---help---
39           This adds support for system-wide logging using four log buffers.
40
41           These are:
42
43               1: main
44               2: events
45               3: radio
46               4: system
47
48           Log reading and writing is performed via normal Linux reads and
49           optimized writes. This optimization avoids logging having too
50           much overhead in the system.
51
52 config ANDROID_TIMED_OUTPUT
53         bool "Timed output class driver"
54         default y
55
56 config ANDROID_TIMED_GPIO
57         tristate "Android timed gpio driver"
58         depends on GPIOLIB && ANDROID_TIMED_OUTPUT
59         default n
60
61 config ANDROID_LOW_MEMORY_KILLER
62         bool "Android Low Memory Killer"
63         default N
64         ---help---
65           Registers processes to be killed when memory is low
66
67 config ANDROID_INTF_ALARM_DEV
68         bool "Android alarm driver"
69         depends on RTC_CLASS
70         default n
71         ---help---
72           Provides non-wakeup and rtc backed wakeup alarms based on rtc or
73           elapsed realtime, and a non-wakeup alarm on the monotonic clock.
74           Also exports the alarm interface to user-space.
75
76 config SYNC
77         bool "Synchronization framework"
78         default n
79         select ANON_INODES
80         ---help---
81           This option enables the framework for synchronization between multiple
82           drivers.  Sync implementations can take advantage of hardware
83           synchronization built into devices like GPUs.
84
85 config SW_SYNC
86         bool "Software synchronization objects"
87         default n
88         depends on SYNC
89         ---help---
90           A sync object driver that uses a 32bit counter to coordinate
91           syncrhronization.  Useful when there is no hardware primitive backing
92           the synchronization.
93
94 config SW_SYNC_USER
95         bool "Userspace API for SW_SYNC"
96         default n
97         depends on SW_SYNC
98         ---help---
99           Provides a user space API to the sw sync object.
100           *WARNING* improper use of this can result in deadlocking kernel
101           drivers from userspace.
102
103 source "drivers/staging/android/ion/Kconfig"
104
105 endif # if ANDROID
106
107 endmenu