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