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