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