1# SPDX-License-Identifier: GPL-2.0-only 2 3config DRM_MSM 4 tristate "MSM DRM" 5 depends on DRM 6 depends on ARCH_QCOM || SOC_IMX5 || COMPILE_TEST 7 depends on COMMON_CLK 8 depends on IOMMU_SUPPORT 9 depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n 10 depends on QCOM_OCMEM || QCOM_OCMEM=n 11 depends on QCOM_LLCC || QCOM_LLCC=n 12 depends on QCOM_COMMAND_DB || QCOM_COMMAND_DB=n 13 depends on PM 14 select IOMMU_IO_PGTABLE 15 select QCOM_MDT_LOADER if ARCH_QCOM 16 select REGULATOR 17 select DRM_DISPLAY_DP_AUX_BUS 18 select DRM_DISPLAY_DP_HELPER 19 select DRM_DISPLAY_HELPER 20 select DRM_EXEC 21 select DRM_KMS_HELPER 22 select DRM_PANEL 23 select DRM_BRIDGE 24 select DRM_PANEL_BRIDGE 25 select DRM_SCHED 26 select FB_SYSMEM_HELPERS if DRM_FBDEV_EMULATION 27 select SHMEM 28 select TMPFS 29 select QCOM_SCM 30 select WANT_DEV_COREDUMP 31 select SND_SOC_HDMI_CODEC if SND_SOC 32 select SYNC_FILE 33 select PM_OPP 34 select NVMEM 35 select PM_GENERIC_DOMAINS 36 select TRACE_GPU_MEM 37 help 38 DRM/KMS driver for MSM/snapdragon. 39 40config DRM_MSM_GPU_STATE 41 bool 42 depends on DRM_MSM && (DEBUG_FS || DEV_COREDUMP) 43 default y 44 45config DRM_MSM_GPU_SUDO 46 bool "Enable SUDO flag on submits" 47 depends on DRM_MSM && EXPERT 48 default n 49 help 50 Enable userspace that has CAP_SYS_RAWIO to submit GPU commands 51 that are run from RB instead of IB1. This essentially gives 52 userspace kernel level access, but is useful for firmware 53 debugging. 54 55 Only use this if you are a driver developer. This should *not* 56 be enabled for production kernels. If unsure, say N. 57 58config DRM_MSM_VALIDATE_XML 59 bool "Validate XML register files against schema" 60 depends on DRM_MSM && EXPERT 61 depends on $(success,$(PYTHON3) -c "import lxml") 62 help 63 Validate XML files with register definitions against rules-fd schema. 64 This option is mostly targeting DRM MSM developers. If unsure, say N. 65 66config DRM_MSM_MDSS 67 bool 68 depends on DRM_MSM 69 default n 70 71config DRM_MSM_MDP4 72 bool "Enable MDP4 support in MSM DRM driver" 73 depends on DRM_MSM 74 default y 75 help 76 Compile in support for the Mobile Display Processor v4 (MDP4) in 77 the MSM DRM driver. It is the older display controller found in 78 devices using APQ8064/MSM8960/MSM8x60 platforms. 79 80config DRM_MSM_MDP5 81 bool "Enable MDP5 support in MSM DRM driver" 82 depends on DRM_MSM 83 select DRM_MSM_MDSS 84 default y 85 help 86 Compile in support for the Mobile Display Processor v5 (MDP5) in 87 the MSM DRM driver. It is the display controller found in devices 88 using e.g. APQ8016/MSM8916/APQ8096/MSM8996/MSM8974/SDM6x0 platforms. 89 90config DRM_MSM_DPU 91 bool "Enable DPU support in MSM DRM driver" 92 depends on DRM_MSM 93 select DRM_MSM_MDSS 94 select DRM_DISPLAY_DSC_HELPER 95 default y 96 help 97 Compile in support for the Display Processing Unit in 98 the MSM DRM driver. It is the display controller found in devices 99 using e.g. SDM845 and newer platforms. 100 101config DRM_MSM_DP 102 bool "Enable DisplayPort support in MSM DRM driver" 103 depends on DRM_MSM 104 select RATIONAL 105 default y 106 help 107 Compile in support for DP driver in MSM DRM driver. DP external 108 display support is enabled through this config option. It can 109 be primary or secondary display on device. 110 111config DRM_MSM_DSI 112 bool "Enable DSI support in MSM DRM driver" 113 depends on DRM_MSM 114 select DRM_PANEL 115 select DRM_MIPI_DSI 116 select DRM_DISPLAY_DSC_HELPER 117 default y 118 help 119 Choose this option if you have a need for MIPI DSI connector 120 support. 121 122config DRM_MSM_DSI_28NM_PHY 123 bool "Enable DSI 28nm PHY driver in MSM DRM" 124 depends on DRM_MSM_DSI 125 default y 126 help 127 Choose this option if the 28nm DSI PHY is used on the platform. 128 129config DRM_MSM_DSI_20NM_PHY 130 bool "Enable DSI 20nm PHY driver in MSM DRM" 131 depends on DRM_MSM_DSI 132 default y 133 help 134 Choose this option if the 20nm DSI PHY is used on the platform. 135 136config DRM_MSM_DSI_28NM_8960_PHY 137 bool "Enable DSI 28nm 8960 PHY driver in MSM DRM" 138 depends on DRM_MSM_DSI 139 default y 140 help 141 Choose this option if the 28nm DSI PHY 8960 variant is used on the 142 platform. 143 144config DRM_MSM_DSI_14NM_PHY 145 bool "Enable DSI 14nm PHY driver in MSM DRM (used by MSM8996/APQ8096)" 146 depends on DRM_MSM_DSI 147 default y 148 help 149 Choose this option if DSI PHY on 8996 is used on the platform. 150 151config DRM_MSM_DSI_10NM_PHY 152 bool "Enable DSI 10nm PHY driver in MSM DRM (used by SDM845)" 153 depends on DRM_MSM_DSI 154 default y 155 help 156 Choose this option if DSI PHY on SDM845 is used on the platform. 157 158config DRM_MSM_DSI_7NM_PHY 159 bool "Enable DSI 7nm/5nm/4nm PHY driver in MSM DRM" 160 depends on DRM_MSM_DSI 161 default y 162 help 163 Choose this option if DSI PHY on SM8150/SM8250/SM8350/SM8450/SM8550/SC7280 164 is used on the platform. 165 166config DRM_MSM_HDMI 167 bool "Enable HDMI support in MSM DRM driver" 168 depends on DRM_MSM 169 default y 170 help 171 Compile in support for the HDMI output MSM DRM driver. It can 172 be a primary or a secondary display on device. Note that this is used 173 only for the direct HDMI output. If the device outputs HDMI data 174 through some kind of DSI-to-HDMI bridge, this option can be disabled. 175 176config DRM_MSM_HDMI_HDCP 177 bool "Enable HDMI HDCP support in MSM DRM driver" 178 depends on DRM_MSM && DRM_MSM_HDMI 179 default y 180 help 181 Choose this option to enable HDCP state machine 182