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_CMA_HELPER 5 select DRM_KMS_CMA_HELPER 6 select DRM_MIPI_DSI 7 select SND_PCM_ELD 8 select VIDEOMODE_HELPERS 9 select WANT_DEV_COREDUMP 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_REGMAP_CONFIGS 16 bool "Hidden Regmap configs needed for GKI" 17 select REGMAP_IRQ 18 select REGMAP_MMIO 19 help 20 Dummy config option used to enable hidden regmap configs. 21 These are normally selected implicitly when a module 22 that relies on it is configured. 23 24config GKI_HIDDEN_CRYPTO_CONFIGS 25 bool "Hidden CRYPTO configs needed for GKI" 26 select CRYPTO_ENGINE 27 help 28 Dummy config option used to enable hidden CRYPTO configs. 29 These are normally selected implicitly when a module 30 that relies on it is configured. 31 32config GKI_HIDDEN_SND_CONFIGS 33 bool "Hidden SND configs needed for GKI" 34 select SND_VMASTER 35 help 36 Dummy config option used to enable hidden SND configs. 37 These are normally selected implicitly when a module 38 that relies on it is configured. 39 40config GKI_HIDDEN_SND_SOC_CONFIGS 41 bool "Hidden SND_SOC configs needed for GKI" 42 select SND_SOC_GENERIC_DMAENGINE_PCM if (SND_SOC && SND) 43 select SND_PCM_IEC958 44 select SND_SOC_COMPRESS if (SND_SOC && SND) 45 help 46 Dummy config option used to enable hidden SND_SOC configs. 47 These are normally selected implicitly when a module 48 that relies on it is configured. 49 50config GKI_HIDDEN_MMC_CONFIGS 51 bool "Hidden MMC configs needed for GKI" 52 select MMC_SDHCI_IO_ACCESSORS if (MMC_SDHCI) 53 help 54 Dummy config option used to enable hidden MMC configs. 55 These are normally selected implicitly when a module 56 that relies on it is configured. 57 58config GKI_HIDDEN_GPIO_CONFIGS 59 bool "Hidden GPIO configs needed for GKI" 60 select PINCTRL_SINGLE if (PINCTRL && OF && HAS_IOMEM) 61 select GPIO_PL061 if (HAS_IOMEM && ARM_AMBA && GPIOLIB) 62 help 63 Dummy config option used to enable hidden GPIO configs. 64 These are normally selected implicitly when a module 65 that relies on it is configured. 66 67config GKI_HIDDEN_QCOM_CONFIGS 68 bool "Hidden QCOM configs needed for GKI" 69 select QCOM_SMEM_STATE 70 select QCOM_SCM if (ARM64) 71 select PINCTRL_MSM if (PINCTRL && ARCH_QCOM) 72 help 73 Dummy config option used to enable hidden QCOM configs. 74 These are normally selected implicitly when a module 75 that relies on it is configured. 76 77config GKI_QCOM_CLKS_CONFIGS 78 bool "QCOM clk drivers needed for GKI due to powerdomain restrictions" 79 select COMMON_CLK_QCOM if (ARCH_QCOM) 80 select QCOM_CLK_RPMH if (ARCH_QCOM) 81 select SDM_GPUCC_845 if (ARCH_QCOM) 82 select QCOM_RPMHPD if (ARCH_QCOM) 83 help 84 This config option selects various QCOM clk drivers that 85 cannot be built as a module currently due to power-domain 86 deferred probing limitations. 87 See https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e01afc32502555beb2057ddd74401be38475d851 88 89config GKI_HIDDEN_MEDIA_CONFIGS 90 bool "Hidden Media configs needed for GKI" 91 select VIDEOBUF2_CORE 92 select MEDIA_SUPPORT 93 help 94 Dummy config option used to enable hidden media configs. 95 These are normally selected implicitly when a module 96 that relies on it is configured. 97 98# LEGACY_WEXT_ALLCONFIG Discussed upstream, soundly rejected as a unique 99# problem for GKI to solve. It should be noted that these extensions are 100# in-effect deprecated and generally unsupported and we should pressure 101# the SOC vendors to drop any modules that require these extensions. 102config GKI_LEGACY_WEXT_ALLCONFIG 103 bool "Hidden wireless extension configs needed for GKI" 104 select WIRELESS_EXT 105 select WEXT_CORE 106 select WEXT_PROC 107 select WEXT_SPY 108 select WEXT_PRIV 109 help 110 Dummy config option used to enable all the hidden legacy wireless 111 extensions to the core wireless network functionality used by 112 add-in modules. 113 114 If you are not building a kernel to be used for a variety of 115 out-of-kernel built wireless modules, say N here. 116 117# Atrocities needed for 118# a) building GKI modules in separate tree, or 119# b) building drivers that are not modularizable 120# 121# All of these should be reworked into an upstream solution 122# if possible. 123# 124config GKI_HACKS_TO_FIX 125 bool "GKI Dummy config options" 126 select GKI_HIDDEN_CRYPTO_CONFIGS 127 select GKI_HIDDEN_DRM_CONFIGS 128 select GKI_HIDDEN_REGMAP_CONFIGS 129 select GKI_HIDDEN_SND_CONFIGS 130 select GKI_HIDDEN_SND_SOC_CONFIGS 131 select GKI_HIDDEN_MMC_CONFIGS 132 select GKI_HIDDEN_GPIO_CONFIGS 133 select GKI_HIDDEN_QCOM_CONFIGS 134 select GKI_LEGACY_WEXT_ALLCONFIG 135 select GKI_HIDDEN_MEDIA_CONFIGS 136 select GKI_QCOM_CLKS_CONFIGS 137 help 138 Dummy config option used to enable core functionality used by 139 modules that may not be selectable in this config. 140 141 Unless you are building a GKI kernel to be used with modules 142 built from a different config, say N here. 143