Linux Audio

Check our new training course

Linux kernel drivers training

May 6-19, 2025
Register
Loading...
Note: File does not exist in v6.9.4.
  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_INTF_ALARM_DEV
 79	bool "Android alarm driver"
 80	depends on RTC_CLASS
 81	default n
 82	---help---
 83	  Provides non-wakeup and rtc backed wakeup alarms based on rtc or
 84	  elapsed realtime, and a non-wakeup alarm on the monotonic clock.
 85	  Also exports the alarm interface to user-space.
 86
 87config SYNC
 88	bool "Synchronization framework"
 89	default n
 90	select ANON_INODES
 91	---help---
 92	  This option enables the framework for synchronization between multiple
 93	  drivers.  Sync implementations can take advantage of hardware
 94	  synchronization built into devices like GPUs.
 95
 96config SW_SYNC
 97	bool "Software synchronization objects"
 98	default n
 99	depends on SYNC
100	---help---
101	  A sync object driver that uses a 32bit counter to coordinate
102	  syncrhronization.  Useful when there is no hardware primitive backing
103	  the synchronization.
104
105config SW_SYNC_USER
106	bool "Userspace API for SW_SYNC"
107	default n
108	depends on SW_SYNC
109	---help---
110	  Provides a user space API to the sw sync object.
111	  *WARNING* improper use of this can result in deadlocking kernel
112	  drivers from userspace.
113
114source "drivers/staging/android/ion/Kconfig"
115
116endif # if ANDROID
117
118endmenu