xref: /linux/drivers/android/Kconfig (revision 5e024582f494c6ff5eb2bec5183fd1eb35462500)
1# SPDX-License-Identifier: GPL-2.0
2menu "Android"
3
4config ANDROID_BINDER_IPC
5	bool "Android Binder IPC Driver"
6	depends on MMU
7	default n
8	help
9	  Binder is used in Android for both communication between processes,
10	  and remote method invocation.
11
12	  This means one Android process can call a method/routine in another
13	  Android process, using Binder to identify, invoke and pass arguments
14	  between said processes.
15
16config ANDROID_BINDERFS
17	bool "Android Binderfs filesystem"
18	depends on ANDROID_BINDER_IPC
19	default n
20	help
21	  Binderfs is a pseudo-filesystem for the Android Binder IPC driver
22	  which can be mounted per-ipc namespace allowing to run multiple
23	  instances of Android.
24	  Each binderfs mount initially only contains a binder-control device.
25	  It can be used to dynamically allocate new binder IPC devices via
26	  ioctls.
27
28config ANDROID_BINDER_DEVICES
29	string "Android Binder devices"
30	depends on ANDROID_BINDER_IPC
31	default "binder,hwbinder,vndbinder"
32	help
33	  Default value for the binder.devices parameter.
34
35	  The binder.devices parameter is a comma-separated list of strings
36	  that specifies the names of the binder device nodes that will be
37	  created. Each binder device has its own context manager, and is
38	  therefore logically separated from the other devices.
39
40config ANDROID_BINDER_IPC_SELFTEST
41	bool "Android Binder IPC Driver Selftest"
42	depends on ANDROID_BINDER_IPC
43	help
44	  This feature allows binder selftest to run.
45
46	  Binder selftest checks the allocation and free of binder buffers
47	  exhaustively with combinations of various buffer sizes and
48	  alignments.
49
50config ANDROID_BINDER_ALLOC_KUNIT_TEST
51	tristate "KUnit Tests for Android Binder Alloc" if !KUNIT_ALL_TESTS
52	depends on ANDROID_BINDER_IPC && KUNIT
53	default KUNIT_ALL_TESTS
54	help
55	  This feature builds the binder alloc KUnit tests.
56
57	  Each test case runs using a pared-down binder_alloc struct and
58	  test-specific freelist, which allows this KUnit module to be loaded
59	  for testing without interfering with a running system.
60
61endmenu
62