• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1config GKI_HIDDEN_DRM_CONFIGS
2	bool "Hidden DRM configs needed for GKI"
3	select DRM_KMS_HELPER if (HAS_IOMEM && DRM)
4	select DRM_GEM_SHMEM_HELPER if (DRM)
5	select DRM_GEM_CMA_HELPER
6	select DRM_KMS_CMA_HELPER
7	select DRM_MIPI_DSI
8	select DRM_TTM if (HAS_IOMEM && DRM)
9	select VIDEOMODE_HELPERS
10	select WANT_DEV_COREDUMP
11	select INTERVAL_TREE
12	help
13	  Dummy config option used to enable hidden DRM configs.
14	  These are normally selected implicitly when including a
15	  DRM module, but for GKI, the modules are built out-of-tree.
16
17config GKI_HIDDEN_REGMAP_CONFIGS
18	bool "Hidden Regmap configs needed for GKI"
19	select REGMAP_IRQ
20	select REGMAP_MMIO
21	help
22	  Dummy config option used to enable hidden regmap configs.
23	  These are normally selected implicitly when a module
24	  that relies on it is configured.
25
26config GKI_HIDDEN_CRYPTO_CONFIGS
27	bool "Hidden CRYPTO configs needed for GKI"
28	select CRYPTO_ENGINE
29	help
30	  Dummy config option used to enable hidden CRYPTO configs.
31	  These are normally selected implicitly when a module
32	  that relies on it is configured.
33
34config GKI_HIDDEN_SND_CONFIGS
35	bool "Hidden SND configs needed for GKI"
36	select SND_VMASTER
37	select SND_PCM_ELD
38	select SND_JACK
39	select SND_JACK_INPUT_DEV
40	select SND_INTEL_NHLT if (ACPI)
41	help
42	  Dummy config option used to enable hidden SND configs.
43	  These are normally selected implicitly when a module
44	  that relies on it is configured.
45
46config GKI_HIDDEN_SND_SOC_CONFIGS
47	bool "Hidden SND_SOC configs needed for GKI"
48	select SND_SOC_GENERIC_DMAENGINE_PCM if (SND_SOC && SND)
49	select SND_PCM_IEC958
50	select SND_SOC_COMPRESS if (SND_SOC && SND)
51	select SND_SOC_TOPOLOGY if (SND_SOC && SND)
52	select DMADEVICES
53	select DMA_VIRTUAL_CHANNELS
54	help
55	  Dummy config option used to enable hidden SND_SOC configs.
56	  These are normally selected implicitly when a module
57	  that relies on it is configured.
58
59config GKI_HIDDEN_MMC_CONFIGS
60	bool "Hidden MMC configs needed for GKI"
61	select MMC_SDHCI_IO_ACCESSORS if (MMC_SDHCI)
62	help
63	  Dummy config option used to enable hidden MMC configs.
64	  These are normally selected implicitly when a module
65	  that relies on it is configured.
66
67config GKI_HIDDEN_GPIO_CONFIGS
68	bool "Hidden GPIO configs needed for GKI"
69	select PINCTRL_SINGLE if (PINCTRL && OF && HAS_IOMEM)
70	select GPIO_PL061 if (HAS_IOMEM && ARM_AMBA && GPIOLIB)
71	help
72	  Dummy config option used to enable hidden GPIO configs.
73	  These are normally selected implicitly when a module
74	  that relies on it is configured.
75
76config GKI_HIDDEN_QCOM_CONFIGS
77	bool "Hidden QCOM configs needed for GKI"
78	select QCOM_SMEM_STATE
79	select QCOM_GDSC if (ARCH_QCOM)
80	select IOMMU_IO_PGTABLE_LPAE if (ARCH_QCOM)
81
82	help
83	  Dummy config option used to enable hidden QCOM configs.
84	  These are normally selected implicitly when a module
85	  that relies on it is configured.
86
87config GKI_HIDDEN_MEDIA_CONFIGS
88	bool "Hidden Media configs needed for GKI"
89	select VIDEOBUF2_CORE
90	select V4L2_MEM2MEM_DEV
91	select MEDIA_CONTROLLER
92	select MEDIA_CONTROLLER_REQUEST_API
93	select MEDIA_SUPPORT
94	select FRAME_VECTOR
95	select CEC_CORE
96	select CEC_NOTIFIER
97	select CEC_PIN
98	select VIDEOBUF2_DMA_CONTIG
99	help
100	  Dummy config option used to enable hidden media configs.
101	  These are normally selected implicitly when a module
102	  that relies on it is configured.
103
104config GKI_HIDDEN_VIRTUAL_CONFIGS
105	bool "Hidden Virtual configs needed for GKI"
106	select HVC_DRIVER
107	help
108	  Dummy config option used to enable hidden virtual device configs.
109	  These are normally selected implicitly when a module
110	  that relies on it is configured.
111
112# LEGACY_WEXT_ALLCONFIG Discussed upstream, soundly rejected as a unique
113# problem for GKI to solve.  It should be noted that these extensions are
114# in-effect deprecated and generally unsupported and we should pressure
115# the SOC vendors to drop any modules that require these extensions.
116config GKI_LEGACY_WEXT_ALLCONFIG
117	bool "Hidden wireless extension configs needed for GKI"
118	select WIRELESS_EXT
119	select WEXT_CORE
120	select WEXT_PROC
121	select WEXT_SPY
122	select WEXT_PRIV
123	help
124	  Dummy config option used to enable all the hidden legacy wireless
125	  extensions to the core wireless network functionality used by
126	  add-in modules.
127
128	  If you are not building a kernel to be used for a variety of
129	  out-of-kernel built wireless modules, say N here.
130
131config GKI_HIDDEN_USB_CONFIGS
132	bool "Hiddel USB configurations needed for GKI"
133	select USB_PHY
134	help
135	  Dummy config option used to enable all USB related hidden configs.
136	  These configurations are usually only selected by another config
137	  option or a combination of them.
138
139	  If you are not building a kernel to be used for a variety of
140	  out-of-kernel build USB drivers, say N here.
141
142config GKI_HIDDEN_SOC_BUS_CONFIGS
143	bool "Hidden SoC bus configuration needed for GKI"
144	select SOC_BUS
145	  help
146	    Dummy config option used to enable SOC_BUS hidden Kconfig.
147	    The configuration is required for SoCs to register themselves to the bus.
148
149	    If you are not building a kernel to be used for a variety of SoCs and
150	    out-of-tree drivers, say N here.
151
152config GKI_HIDDEN_RPMSG_CONFIGS
153	bool "Hidden RPMSG configuration needed for GKI"
154	select RPMSG
155	help
156	  Dummy config option used to enable the hidden RPMSG config.
157	  This configuration is usually only selected by another config
158	  option or a combination of them.
159
160	  If you are not building a kernel to be used for a variety of
161	  out-of-kernel build RPMSG drivers, say N here.
162
163config GKI_HIDDEN_GPU_CONFIGS
164	bool "Hidden GPU configuration needed for GKI"
165	select TRACE_GPU_MEM
166	select MMU_NOTIFIER
167	select HMM_MIRROR
168	help
169	  Dummy config option used to enable the hidden GPU config.
170	  These are normally selected implicitly when a module
171	  that relies on it is configured.
172
173config GKI_HIDDEN_IRQ_CONFIGS
174	bool "Hidden IRQ configuration needed for GKI"
175	select GENERIC_IRQ_CHIP
176	select IRQ_DOMAIN_HIERARCHY
177	select IRQ_FASTEOI_HIERARCHY_HANDLERS
178	help
179	  Dummy config option used to enable GENERIC_IRQ_CHIP hidden
180	  config, required by various SoC platforms. This is usually
181	  selected by ARCH_*.
182
183config GKI_HIDDEN_HYPERVISOR_CONFIGS
184	bool "Hidden hypervisor configuration needed for GKI"
185	select SYS_HYPERVISOR
186	help
187	  Dummy config option used to enable the SYS_HYPERVISOR hidden
188	  config, required by various SoC platforms. This is usually
189	  selected by XEN or S390.
190
191config GKI_HIDDEN_NET_CONFIGS
192	bool "Hidden networking configuration needed for GKI"
193	select PAGE_POOL
194	select NET_PTP_CLASSIFY
195	help
196	  Dummy config option used to enable the networking hidden
197	  config, required by various SoC platforms.
198
199config GKI_HIDDEN_PHY_CONFIGS
200	bool "Hidden PHY configuration needed for GKI"
201	select GENERIC_PHY_MIPI_DPHY
202	help
203	  Dummy config option used to enable the hidden PHY configs,
204	  required by various SoC platforms.
205
206config GKI_HIDDEN_MM_CONFIGS
207	bool "Hidden MM configuration needed for GKI"
208	select PAGE_REPORTING
209	select BALLOON_COMPACTION
210	select MEMORY_BALLOON
211	help
212	  Dummy config option used to enable hidden MM configs,
213	  currently required for VIRTIO_BALLOON
214
215config GKI_HIDDEN_DMA_CONFIGS
216	bool "Hidden DMA configuration needed for GKI"
217	select ASYNC_TX_ENABLE_CHANNEL_SWITCH
218	help
219	  Dummy config option used to enable the hidden DMA configs,
220	  required by various SoC platforms.
221
222config GKI_HIDDEN_ETHERNET_CONFIGS
223	bool "Hidden Ethernet configuration needed for GKI"
224	select PHYLINK
225	help
226	  Dummy config option used to enable the hidden Ethernet PHYLINK
227	  configs, required by various ethernet devices.
228
229# Atrocities needed for
230# a) building GKI modules in separate tree, or
231# b) building drivers that are not modularizable
232#
233# All of these should be reworked into an upstream solution
234# if possible.
235#
236config GKI_HACKS_TO_FIX
237	bool "GKI Dummy config options"
238	select GKI_HIDDEN_CRYPTO_CONFIGS
239	select GKI_HIDDEN_DRM_CONFIGS
240	select GKI_HIDDEN_REGMAP_CONFIGS
241	select GKI_HIDDEN_SND_CONFIGS
242	select GKI_HIDDEN_SND_SOC_CONFIGS
243	select GKI_HIDDEN_MMC_CONFIGS
244	select GKI_HIDDEN_GPIO_CONFIGS
245	select GKI_HIDDEN_QCOM_CONFIGS
246	select GKI_LEGACY_WEXT_ALLCONFIG
247	select GKI_HIDDEN_MEDIA_CONFIGS
248	select GKI_HIDDEN_VIRTUAL_CONFIGS
249	select GKI_HIDDEN_USB_CONFIGS
250	select GKI_HIDDEN_SOC_BUS_CONFIGS
251	select GKI_HIDDEN_RPMSG_CONFIGS
252	select GKI_HIDDEN_GPU_CONFIGS
253	select GKI_HIDDEN_IRQ_CONFIGS
254	select GKI_HIDDEN_HYPERVISOR_CONFIGS
255	select GKI_HIDDEN_NET_CONFIGS
256	select GKI_HIDDEN_PHY_CONFIGS
257	select GKI_HIDDEN_MM_CONFIGS
258	select GKI_HIDDEN_DMA_CONFIGS
259	select GKI_HIDDEN_ETHERNET_CONFIGS
260	help
261	  Dummy config option used to enable core functionality used by
262	  modules that may not be selectable in this config.
263
264	  Unless you are building a GKI kernel to be used with modules
265	  built from a different config, say N here.
266