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 select VIDEOBUF2_DMA_SG 100 help 101 Dummy config option used to enable hidden media configs. 102 These are normally selected implicitly when a module 103 that relies on it is configured. 104 105config GKI_HIDDEN_VIRTUAL_CONFIGS 106 bool "Hidden Virtual configs needed for GKI" 107 select HVC_DRIVER 108 help 109 Dummy config option used to enable hidden virtual device configs. 110 These are normally selected implicitly when a module 111 that relies on it is configured. 112 113# LEGACY_WEXT_ALLCONFIG Discussed upstream, soundly rejected as a unique 114# problem for GKI to solve. It should be noted that these extensions are 115# in-effect deprecated and generally unsupported and we should pressure 116# the SOC vendors to drop any modules that require these extensions. 117config GKI_LEGACY_WEXT_ALLCONFIG 118 bool "Hidden wireless extension configs needed for GKI" 119 select WIRELESS_EXT 120 select WEXT_CORE 121 select WEXT_PROC 122 select WEXT_SPY 123 select WEXT_PRIV 124 help 125 Dummy config option used to enable all the hidden legacy wireless 126 extensions to the core wireless network functionality used by 127 add-in modules. 128 129 If you are not building a kernel to be used for a variety of 130 out-of-kernel built wireless modules, say N here. 131 132config GKI_HIDDEN_USB_CONFIGS 133 bool "Hiddel USB configurations needed for GKI" 134 select USB_PHY 135 help 136 Dummy config option used to enable all USB related hidden configs. 137 These configurations are usually only selected by another config 138 option or a combination of them. 139 140 If you are not building a kernel to be used for a variety of 141 out-of-kernel build USB drivers, say N here. 142 143config GKI_HIDDEN_SOC_BUS_CONFIGS 144 bool "Hidden SoC bus configuration needed for GKI" 145 select SOC_BUS 146 help 147 Dummy config option used to enable SOC_BUS hidden Kconfig. 148 The configuration is required for SoCs to register themselves to the bus. 149 150 If you are not building a kernel to be used for a variety of SoCs and 151 out-of-tree drivers, say N here. 152 153config GKI_HIDDEN_RPMSG_CONFIGS 154 bool "Hidden RPMSG configuration needed for GKI" 155 select RPMSG 156 help 157 Dummy config option used to enable the hidden RPMSG config. 158 This configuration is usually only selected by another config 159 option or a combination of them. 160 161 If you are not building a kernel to be used for a variety of 162 out-of-kernel build RPMSG drivers, say N here. 163 164config GKI_HIDDEN_GPU_CONFIGS 165 bool "Hidden GPU configuration needed for GKI" 166 select TRACE_GPU_MEM 167 help 168 Dummy config option used to enable the hidden GPU config. 169 These are normally selected implicitly when a module 170 that relies on it is configured. 171 172config GKI_HIDDEN_IRQ_CONFIGS 173 bool "Hidden IRQ configuration needed for GKI" 174 select GENERIC_IRQ_CHIP 175 select IRQ_DOMAIN_HIERARCHY 176 select IRQ_FASTEOI_HIERARCHY_HANDLERS 177 help 178 Dummy config option used to enable GENERIC_IRQ_CHIP hidden 179 config, required by various SoC platforms. This is usually 180 selected by ARCH_*. 181 182config GKI_HIDDEN_HYPERVISOR_CONFIGS 183 bool "Hidden hypervisor configuration needed for GKI" 184 select SYS_HYPERVISOR 185 help 186 Dummy config option used to enable the SYS_HYPERVISOR hidden 187 config, required by various SoC platforms. This is usually 188 selected by XEN or S390. 189 190config GKI_HIDDEN_NET_CONFIGS 191 bool "Hidden networking configuration needed for GKI" 192 select PAGE_POOL 193 select NET_PTP_CLASSIFY 194 select NET_DEVLINK 195 select NETFILTER_FAMILY_BRIDGE 196 help 197 Dummy config option used to enable the networking hidden 198 config, required by various SoC platforms. 199 200config GKI_HIDDEN_PHY_CONFIGS 201 bool "Hidden PHY configuration needed for GKI" 202 select GENERIC_PHY_MIPI_DPHY 203 help 204 Dummy config option used to enable the hidden PHY configs, 205 required by various SoC platforms. 206 207config GKI_HIDDEN_MM_CONFIGS 208 bool "Hidden MM configuration needed for GKI" 209 select PAGE_REPORTING 210 select BALLOON_COMPACTION 211 select MEMORY_BALLOON 212 help 213 Dummy config option used to enable hidden MM configs, 214 currently required for VIRTIO_BALLOON 215 216config GKI_HIDDEN_ETHERNET_CONFIGS 217 bool "Hidden Ethernet configuration needed for GKI" 218 select PHYLINK 219 help 220 Dummy config option used to enable the hidden Ethernet PHYLINK 221 configs, required by various ethernet devices. 222 223config GKI_HIDDEN_DMA_CONFIGS 224 bool "Hidden DMA configuration needed for GKI" 225 select ASYNC_TX_ENABLE_CHANNEL_SWITCH 226 help 227 Dummy config option used to enable the hidden DMA configs, 228 required by various SoC platforms. 229 230# Atrocities needed for 231# a) building GKI modules in separate tree, or 232# b) building drivers that are not modularizable 233# 234# All of these should be reworked into an upstream solution 235# if possible. 236# 237config GKI_HACKS_TO_FIX 238 bool "GKI Dummy config options" 239 select GKI_HIDDEN_CRYPTO_CONFIGS 240 select GKI_HIDDEN_DRM_CONFIGS 241 select GKI_HIDDEN_REGMAP_CONFIGS 242 select GKI_HIDDEN_SND_CONFIGS 243 select GKI_HIDDEN_SND_SOC_CONFIGS 244 select GKI_HIDDEN_MMC_CONFIGS 245 select GKI_HIDDEN_GPIO_CONFIGS 246 select GKI_HIDDEN_QCOM_CONFIGS 247 select GKI_LEGACY_WEXT_ALLCONFIG 248 select GKI_HIDDEN_MEDIA_CONFIGS 249 select GKI_HIDDEN_VIRTUAL_CONFIGS 250 select GKI_HIDDEN_USB_CONFIGS 251 select GKI_HIDDEN_SOC_BUS_CONFIGS 252 select GKI_HIDDEN_RPMSG_CONFIGS 253 select GKI_HIDDEN_GPU_CONFIGS 254 select GKI_HIDDEN_IRQ_CONFIGS 255 select GKI_HIDDEN_HYPERVISOR_CONFIGS 256 select GKI_HIDDEN_NET_CONFIGS 257 select GKI_HIDDEN_PHY_CONFIGS 258 select GKI_HIDDEN_MM_CONFIGS 259 select GKI_HIDDEN_ETHERNET_CONFIGS 260 select GKI_HIDDEN_DMA_CONFIGS 261 262 help 263 Dummy config option used to enable core functionality used by 264 modules that may not be selectable in this config. 265 266 Unless you are building a GKI kernel to be used with modules 267 built from a different config, say N here. 268