hc
2023-11-06 1622ff3442ff6aecc1f538cda437379d1f6a4a93
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
config GKI_HIDDEN_DRM_CONFIGS
   bool "Hidden DRM configs needed for GKI"
   select DRM_KMS_HELPER if (HAS_IOMEM && DRM)
   select DRM_GEM_CMA_HELPER
   select DRM_MIPI_DSI
   select DRM_TTM if (HAS_IOMEM && DRM)
   select VIDEOMODE_HELPERS
   help
     Dummy config option used to enable hidden DRM configs.
     These are normally selected implicitly when including a
     DRM module, but for GKI, the modules are built out-of-tree.
 
config GKI_HIDDEN_REGMAP_CONFIGS
   bool "Hidden Regmap configs needed for GKI"
   select REGMAP_IRQ
   help
     Dummy config option used to enable hidden regmap configs.
     These are normally selected implicitly when a module
     that relies on it is configured.
 
config GKI_HIDDEN_CRYPTO_CONFIGS
   bool "Hidden CRYPTO configs needed for GKI"
   select CRYPTO_ENGINE
   help
     Dummy config option used to enable hidden CRYPTO configs.
     These are normally selected implicitly when a module
     that relies on it is configured.
 
config GKI_HIDDEN_SND_CONFIGS
   bool "Hidden SND configs needed for GKI"
   select SND_VMASTER
   select SND_PCM_ELD
   select SND_JACK
   select SND_JACK_INPUT_DEV
   help
     Dummy config option used to enable hidden SND configs.
     These are normally selected implicitly when a module
     that relies on it is configured.
 
config GKI_HIDDEN_SND_SOC_CONFIGS
   bool "Hidden SND_SOC configs needed for GKI"
   select SND_SOC_GENERIC_DMAENGINE_PCM if (SND_SOC && SND)
   select SND_SOC_COMPRESS if (SND_SOC && SND)
   help
     Dummy config option used to enable hidden SND_SOC configs.
     These are normally selected implicitly when a module
     that relies on it is configured.
 
config GKI_HIDDEN_GPIO_CONFIGS
   bool "Hidden GPIO configs needed for GKI"
   select PINCTRL_SINGLE if (PINCTRL && OF && HAS_IOMEM)
   select GPIO_PL061 if (HAS_IOMEM && ARM_AMBA && GPIOLIB)
   help
     Dummy config option used to enable hidden GPIO configs.
     These are normally selected implicitly when a module
     that relies on it is configured.
 
config GKI_HIDDEN_VIRTUAL_CONFIGS
   bool "Hidden Virtual configs needed for GKI"
   select HVC_DRIVER
   help
     Dummy config option used to enable hidden virtual device configs.
     These are normally selected implicitly when a module
     that relies on it is configured.
 
# LEGACY_WEXT_ALLCONFIG Discussed upstream, soundly rejected as a unique
# problem for GKI to solve.  It should be noted that these extensions are
# in-effect deprecated and generally unsupported and we should pressure
# the SOC vendors to drop any modules that require these extensions.
config GKI_LEGACY_WEXT_ALLCONFIG
   bool "Hidden wireless extension configs needed for GKI"
   select WIRELESS_EXT
   select WEXT_CORE
   select WEXT_PROC
   select WEXT_SPY
   select WEXT_PRIV
   help
     Dummy config option used to enable all the hidden legacy wireless
     extensions to the core wireless network functionality used by
     add-in modules.
 
     If you are not building a kernel to be used for a variety of
     out-of-kernel built wireless modules, say N here.
 
config GKI_HIDDEN_SOC_PM_CONFIGS
   bool "Hidden SOC Power Management configs for GKI"
   select PM_GENERIC_DOMAINS if PM
   help
     Dummy config option used to enable all the hidden SOC specific power
     management add-in modules.
 
config GKI_HIDDEN_VIDEOBUF2_CONFIGS
   bool "Hidden v4l2 configs for GKI"
   select V4L2_MEM2MEM_DEV if VIDEO_V4L2
   select VIDEOBUF2_CORE if VIDEO_V4L2
   select VIDEOBUF2_V4L2 if VIDEO_V4L2
   select VIDEOBUF2_VMALLOC if VIDEO_V4L2
   select VIDEOBUF2_MEMOPS if VIDEO_V4L2
   help
     Dummy config option used to enable all the hidden v4l2 media module.
 
config GKI_HIDDEN_USB_CONFIGS
   bool "Hiddel USB configurations needed for GKI"
   select USB_PHY
   help
     Dummy config option used to enable all USB related hidden configs.
     These configurations are usually only selected by another config
     option or a combination of them.
 
     If you are not building a kernel to be used for a variety of
     out-of-kernel build USB drivers, say N here.
 
config GKI_HIDDEN_SOC_BUS_CONFIGS
   bool "Hidden SoC bus configuration needed for GKI"
   select SOC_BUS
     help
       Dummy config option used to enable SOC_BUS hidden Kconfig.
       The configuration is required for SoCs to register themselves to the bus.
 
       If you are not building a kernel to be used for a variety of SoCs and
       out-of-tree drivers, say N here.
 
config GKI_HIDDEN_GPU_CONFIGS
   bool "Hidden GPU configuration needed for GKI"
   select TRACE_GPU_MEM
   help
     Dummy config option used to enable the hidden GPU config.
     These are normally selected implicitly when a module
     that relies on it is configured.
 
config GKI_HIDDEN_IRQ_CONFIGS
   bool "Hidden IRQ configuration needed for GKI"
   select GENERIC_IRQ_CHIP
   help
     Dummy config option used to enable GENERIC_IRQ_CHIP hidden
     config, required by various SoC platforms. This is usually
     selected by ARCH_*.
 
# Atrocities needed for
# a) building GKI modules in separate tree, or
# b) building drivers that are not modularizable
#
# All of these should be reworked into an upstream solution
# if possible.
#
config GKI_HACKS_TO_FIX
   bool "GKI Dummy config options"
   select GKI_HIDDEN_CRYPTO_CONFIGS
   select GKI_HIDDEN_DRM_CONFIGS
   select GKI_HIDDEN_REGMAP_CONFIGS
   select GKI_HIDDEN_SND_CONFIGS
   select GKI_HIDDEN_SND_SOC_CONFIGS
   select GKI_HIDDEN_GPIO_CONFIGS
   select GKI_LEGACY_WEXT_ALLCONFIG
   select GKI_HIDDEN_VIRTUAL_CONFIGS
   select GKI_HIDDEN_SOC_PM_CONFIGS
   select GKI_HIDDEN_VIDEOBUF2_CONFIGS
   select GKI_HIDDEN_USB_CONFIGS
   select GKI_HIDDEN_SOC_BUS_CONFIGS
   select GKI_HIDDEN_GPU_CONFIGS
   select GKI_HIDDEN_IRQ_CONFIGS
   help
     Dummy config option used to enable core functionality used by
     modules that may not be selectable in this config.
 
     Unless you are building a GKI kernel to be used with modules
     built from a different config, say N here.