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