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