Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

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