1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2c8afe684SRob Clark 3c8afe684SRob Clarkconfig DRM_MSM 4c8afe684SRob Clark tristate "MSM DRM" 505b8b6ddSGeert Uytterhoeven depends on DRM 6b3ed524fSChristian König depends on ARCH_QCOM || SOC_IMX5 || COMPILE_TEST 7afece15aSArnd Bergmann depends on COMMON_CLK 8e319a1b9SArnd Bergmann depends on IOMMU_SUPPORT 92063ca42SJean Delvare depends on OF 1096ab215bSArnd Bergmann depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n 1126c0b26dSBrian Masney depends on QCOM_OCMEM || QCOM_OCMEM=n 125ea4dba6SArnd Bergmann depends on QCOM_LLCC || QCOM_LLCC=n 135ea4dba6SArnd Bergmann depends on QCOM_COMMAND_DB || QCOM_COMMAND_DB=n 1424a96719SArnd Bergmann depends on PM 15b145c6e6SJordan Crouse select IOMMU_IO_PGTABLE 16bdab8e8bSArnd Bergmann select QCOM_MDT_LOADER if ARCH_QCOM 17b7bbd640SRob Clark select REGULATOR 18fe96a73aSThomas Zimmermann select DRM_CLIENT_SELECTION 191e0b9b44SGeert Uytterhoeven select DRM_DISPLAY_DP_AUX_BUS 207fe302aeSGeert Uytterhoeven select DRM_DISPLAY_DP_HELPER 2105b8b6ddSGeert Uytterhoeven select DRM_DISPLAY_HELPER 229da7ec9bSDmitry Baryshkov select DRM_BRIDGE_CONNECTOR 23a6397e63SRob Clark select DRM_EXEC 24*111fdd21SRob Clark select DRM_GPUVM 25c8afe684SRob Clark select DRM_KMS_HELPER 263e87599bSRob Clark select DRM_PANEL 2763885c16SRob Clark select DRM_BRIDGE 2863885c16SRob Clark select DRM_PANEL_BRIDGE 291d8a5ca4SRob Clark select DRM_SCHED 30cd8a064fSThomas Zimmermann select FB_SYSMEM_HELPERS if DRM_FBDEV_EMULATION 31c8afe684SRob Clark select SHMEM 32c8afe684SRob Clark select TMPFS 33424953cfSArnd Bergmann select QCOM_SCM 34c0fec7f5SJordan Crouse select WANT_DEV_COREDUMP 35f1427016SSrinivas Kandagatla select SND_SOC_HDMI_CODEC if SND_SOC 36f0a42bb5SRob Clark select SYNC_FILE 37ac20fa0aSRob Clark select PM_OPP 38f5b1a878SAkhil P Oommen select NVMEM 39c11fa120SAkhil P Oommen select PM_GENERIC_DOMAINS 40204226deSRob Clark select TRACE_GPU_MEM 41c8afe684SRob Clark help 42c8afe684SRob Clark DRM/KMS driver for MSM/snapdragon. 43c8afe684SRob Clark 44b02872dfSJordan Crouseconfig DRM_MSM_GPU_STATE 45b02872dfSJordan Crouse bool 46b02872dfSJordan Crouse depends on DRM_MSM && (DEBUG_FS || DEV_COREDUMP) 47b02872dfSJordan Crouse default y 48b02872dfSJordan Crouse 496a8bd08dSRob Clarkconfig DRM_MSM_GPU_SUDO 506a8bd08dSRob Clark bool "Enable SUDO flag on submits" 516a8bd08dSRob Clark depends on DRM_MSM && EXPERT 526a8bd08dSRob Clark default n 536a8bd08dSRob Clark help 546a8bd08dSRob Clark Enable userspace that has CAP_SYS_RAWIO to submit GPU commands 556a8bd08dSRob Clark that are run from RB instead of IB1. This essentially gives 566a8bd08dSRob Clark userspace kernel level access, but is useful for firmware 576a8bd08dSRob Clark debugging. 586a8bd08dSRob Clark 596a8bd08dSRob Clark Only use this if you are a driver developer. This should *not* 606a8bd08dSRob Clark be enabled for production kernels. If unsure, say N. 616a8bd08dSRob Clark 62b587f413SDmitry Baryshkovconfig DRM_MSM_VALIDATE_XML 63b587f413SDmitry Baryshkov bool "Validate XML register files against schema" 64b587f413SDmitry Baryshkov depends on DRM_MSM && EXPERT 65b587f413SDmitry Baryshkov depends on $(success,$(PYTHON3) -c "import lxml") 66b587f413SDmitry Baryshkov help 67b587f413SDmitry Baryshkov Validate XML files with register definitions against rules-fd schema. 68b587f413SDmitry Baryshkov This option is mostly targeting DRM MSM developers. If unsure, say N. 69b587f413SDmitry Baryshkov 70dc43e923SDmitry Baryshkovconfig DRM_MSM_MDSS 71dc43e923SDmitry Baryshkov bool 72dc43e923SDmitry Baryshkov depends on DRM_MSM 73dc43e923SDmitry Baryshkov default n 74dc43e923SDmitry Baryshkov 75dc43e923SDmitry Baryshkovconfig DRM_MSM_MDP4 76dc43e923SDmitry Baryshkov bool "Enable MDP4 support in MSM DRM driver" 77424953cfSArnd Bergmann depends on DRM_MSM 78feb46f02SRob Clark default y 79feb46f02SRob Clark help 80dc43e923SDmitry Baryshkov Compile in support for the Mobile Display Processor v4 (MDP4) in 81dc43e923SDmitry Baryshkov the MSM DRM driver. It is the older display controller found in 82dc43e923SDmitry Baryshkov devices using APQ8064/MSM8960/MSM8x60 platforms. 83dc43e923SDmitry Baryshkov 84dc43e923SDmitry Baryshkovconfig DRM_MSM_MDP5 85dc43e923SDmitry Baryshkov bool "Enable MDP5 support in MSM DRM driver" 86dc43e923SDmitry Baryshkov depends on DRM_MSM 87dc43e923SDmitry Baryshkov select DRM_MSM_MDSS 88dc43e923SDmitry Baryshkov default y 89dc43e923SDmitry Baryshkov help 90dc43e923SDmitry Baryshkov Compile in support for the Mobile Display Processor v5 (MDP5) in 91dc43e923SDmitry Baryshkov the MSM DRM driver. It is the display controller found in devices 92dc43e923SDmitry Baryshkov using e.g. APQ8016/MSM8916/APQ8096/MSM8996/MSM8974/SDM6x0 platforms. 93dc43e923SDmitry Baryshkov 94dc43e923SDmitry Baryshkovconfig DRM_MSM_DPU 95dc43e923SDmitry Baryshkov bool "Enable DPU support in MSM DRM driver" 96dc43e923SDmitry Baryshkov depends on DRM_MSM 97dc43e923SDmitry Baryshkov select DRM_MSM_MDSS 988a8a3120SDmitry Baryshkov select DRM_DISPLAY_DSC_HELPER 99dc43e923SDmitry Baryshkov default y 100dc43e923SDmitry Baryshkov help 101dc43e923SDmitry Baryshkov Compile in support for the Display Processing Unit in 102dc43e923SDmitry Baryshkov the MSM DRM driver. It is the display controller found in devices 103dc43e923SDmitry Baryshkov using e.g. SDM845 and newer platforms. 104feb46f02SRob Clark 105c943b494SChandan Uddarajuconfig DRM_MSM_DP 106c943b494SChandan Uddaraju bool "Enable DisplayPort support in MSM DRM driver" 107c943b494SChandan Uddaraju depends on DRM_MSM 10898a8920eSDmitry Baryshkov select DRM_DISPLAY_HDMI_AUDIO_HELPER 10953d22794SJackie Liu select RATIONAL 11014975cffSChandan Uddaraju default y 111c943b494SChandan Uddaraju help 112c943b494SChandan Uddaraju Compile in support for DP driver in MSM DRM driver. DP external 113c943b494SChandan Uddaraju display support is enabled through this config option. It can 114c943b494SChandan Uddaraju be primary or secondary display on device. 115c943b494SChandan Uddaraju 116a689554bSHai Liconfig DRM_MSM_DSI 117a689554bSHai Li bool "Enable DSI support in MSM DRM driver" 118a689554bSHai Li depends on DRM_MSM 119a689554bSHai Li select DRM_PANEL 120a689554bSHai Li select DRM_MIPI_DSI 121ca097d4dSDmitry Baryshkov select DRM_DISPLAY_DSC_HELPER 122a689554bSHai Li default y 123a689554bSHai Li help 124a689554bSHai Li Choose this option if you have a need for MIPI DSI connector 125a689554bSHai Li support. 126a689554bSHai Li 1271bf4d7c5SHai Liconfig DRM_MSM_DSI_28NM_PHY 1281bf4d7c5SHai Li bool "Enable DSI 28nm PHY driver in MSM DRM" 1291bf4d7c5SHai Li depends on DRM_MSM_DSI 1301bf4d7c5SHai Li default y 1311bf4d7c5SHai Li help 1321bf4d7c5SHai Li Choose this option if the 28nm DSI PHY is used on the platform. 1331bf4d7c5SHai Li 1341bf4d7c5SHai Liconfig DRM_MSM_DSI_20NM_PHY 1351bf4d7c5SHai Li bool "Enable DSI 20nm PHY driver in MSM DRM" 1361bf4d7c5SHai Li depends on DRM_MSM_DSI 1371bf4d7c5SHai Li default y 1381bf4d7c5SHai Li help 1391bf4d7c5SHai Li Choose this option if the 20nm DSI PHY is used on the platform. 140225380b3SArchit Taneja 141225380b3SArchit Tanejaconfig DRM_MSM_DSI_28NM_8960_PHY 142225380b3SArchit Taneja bool "Enable DSI 28nm 8960 PHY driver in MSM DRM" 143225380b3SArchit Taneja depends on DRM_MSM_DSI 144225380b3SArchit Taneja default y 145225380b3SArchit Taneja help 146225380b3SArchit Taneja Choose this option if the 28nm DSI PHY 8960 variant is used on the 147225380b3SArchit Taneja platform. 148f079f6d9SArchit Taneja 149f079f6d9SArchit Tanejaconfig DRM_MSM_DSI_14NM_PHY 150f079f6d9SArchit Taneja bool "Enable DSI 14nm PHY driver in MSM DRM (used by MSM8996/APQ8096)" 151f079f6d9SArchit Taneja depends on DRM_MSM_DSI 152f079f6d9SArchit Taneja default y 153f079f6d9SArchit Taneja help 154f079f6d9SArchit Taneja Choose this option if DSI PHY on 8996 is used on the platform. 155973e02dbSArchit Taneja 156973e02dbSArchit Tanejaconfig DRM_MSM_DSI_10NM_PHY 157973e02dbSArchit Taneja bool "Enable DSI 10nm PHY driver in MSM DRM (used by SDM845)" 158973e02dbSArchit Taneja depends on DRM_MSM_DSI 159973e02dbSArchit Taneja default y 160973e02dbSArchit Taneja help 161973e02dbSArchit Taneja Choose this option if DSI PHY on SDM845 is used on the platform. 1621ef7c99dSJonathan Marek 1631ef7c99dSJonathan Marekconfig DRM_MSM_DSI_7NM_PHY 1648b034e67SNeil Armstrong bool "Enable DSI 7nm/5nm/4nm PHY driver in MSM DRM" 1651ef7c99dSJonathan Marek depends on DRM_MSM_DSI 1661ef7c99dSJonathan Marek default y 1671ef7c99dSJonathan Marek help 1688b034e67SNeil Armstrong Choose this option if DSI PHY on SM8150/SM8250/SM8350/SM8450/SM8550/SC7280 1692f9ae4e3SDmitry Baryshkov is used on the platform. 170dc43e923SDmitry Baryshkov 171dc43e923SDmitry Baryshkovconfig DRM_MSM_HDMI 172dc43e923SDmitry Baryshkov bool "Enable HDMI support in MSM DRM driver" 173dc43e923SDmitry Baryshkov depends on DRM_MSM 174dc43e923SDmitry Baryshkov default y 175384d2b03SDmitry Baryshkov select DRM_DISPLAY_HDMI_HELPER 176384d2b03SDmitry Baryshkov select DRM_DISPLAY_HDMI_STATE_HELPER 177dc43e923SDmitry Baryshkov help 178dc43e923SDmitry Baryshkov Compile in support for the HDMI output MSM DRM driver. It can 179dc43e923SDmitry Baryshkov be a primary or a secondary display on device. Note that this is used 180dc43e923SDmitry Baryshkov only for the direct HDMI output. If the device outputs HDMI data 181e0e86f25SColin Ian King through some kind of DSI-to-HDMI bridge, this option can be disabled. 182dc43e923SDmitry Baryshkov 183dc43e923SDmitry Baryshkovconfig DRM_MSM_HDMI_HDCP 184dc43e923SDmitry Baryshkov bool "Enable HDMI HDCP support in MSM DRM driver" 185dc43e923SDmitry Baryshkov depends on DRM_MSM && DRM_MSM_HDMI 186dc43e923SDmitry Baryshkov default y 187dc43e923SDmitry Baryshkov help 188dc43e923SDmitry Baryshkov Choose this option to enable HDCP state machine 189