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