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