hc
2024-08-19 a51341d8c7882adfad4f167bc7c3ca616908b53d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# SPDX-License-Identifier: GPL-2.0
menu "Android"
 
config ANDROID
   bool "Android Drivers"
   help
     Enable support for various drivers needed on the Android platform
 
if ANDROID
 
config ANDROID_BINDER_IPC
   bool "Android Binder IPC Driver"
   depends on MMU
   default n
   help
     Binder is used in Android for both communication between processes,
     and remote method invocation.
 
     This means one Android process can call a method/routine in another
     Android process, using Binder to identify, invoke and pass arguments
     between said processes.
 
config ANDROID_BINDERFS
   bool "Android Binderfs filesystem"
   depends on ANDROID_BINDER_IPC
   default n
   help
     Binderfs is a pseudo-filesystem for the Android Binder IPC driver
     which can be mounted per-ipc namespace allowing to run multiple
     instances of Android.
     Each binderfs mount initially only contains a binder-control device.
     It can be used to dynamically allocate new binder IPC devices via
     ioctls.
 
config ANDROID_BINDER_DEVICES
   string "Android Binder devices"
   depends on ANDROID_BINDER_IPC
   default "binder,hwbinder,vndbinder"
   help
     Default value for the binder.devices parameter.
 
     The binder.devices parameter is a comma-separated list of strings
     that specifies the names of the binder device nodes that will be
     created. Each binder device has its own context manager, and is
     therefore logically separated from the other devices.
 
config ANDROID_BINDER_IPC_SELFTEST
   bool "Android Binder IPC Driver Selftest"
   depends on ANDROID_BINDER_IPC
   help
     This feature allows binder selftest to run.
 
     Binder selftest checks the allocation and free of binder buffers
     exhaustively with combinations of various buffer sizes and
     alignments.
 
config ANDROID_DEBUG_SYMBOLS
   bool "Android Debug Symbols"
   help
     Enables export of debug symbols that are useful for offline debugging
     of a kernel. These symbols would be used in vendor modules to find
     addresses of the core kernel symbols for vendor extensions.
 
     This driver is statically compiled into kernel and maintains all the
     required symbol addresses for vendor modules and provides necessary
     interface vendor modules.
 
config ANDROID_VENDOR_HOOKS
   bool "Android Vendor Hooks"
   depends on TRACEPOINTS
   help
     Enable vendor hooks implemented as tracepoints
 
     Allow vendor modules to attach to tracepoint "hooks" defined via
     DECLARE_HOOK or DECLARE_RESTRICTED_HOOK.
 
config ANDROID_KABI_RESERVE
   bool "Android KABI reserve padding"
   default y if !NO_GKI
   help
     This option enables the padding that the Android GKI kernel adds
     to many different kernel structures to support an in-kernel stable ABI
     over the lifespan of support for the kernel.
 
     Only disable this option if you have a system that needs the Android
     kernel drivers, but is NOT an Android GKI kernel image. If disabled
     it has the possibility to make the kernel static and runtime image
     slightly smaller but will NOT be supported by the Google Android
     kernel team.
 
     If even slightly unsure, say Y.
 
config ANDROID_VENDOR_OEM_DATA
   bool "Android vendor and OEM data padding"
   default y if !NO_GKI
   help
     This option enables the padding that the Android GKI kernel adds
     to many different kernel structures to support an in-kernel stable ABI
     over the lifespan of support for the kernel as well as OEM additional
     fields that are needed by some of the Android kernel tracepoints. The
     macros enabled by this option are used to enable padding in vendor modules
     used for the above specified purposes.
 
     Only disable this option if you have a system that needs the Android
     kernel drivers, but is NOT an Android GKI kernel image and you do NOT
     use the Android kernel tracepoints. If disabled it has the possibility
     to make the kernel static and runtime image slightly smaller but will
     NOT be supported by the Google Android kernel team.
 
     If even slightly unsure, say Y.
 
endif # if ANDROID
 
endmenu