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 996ab215bSArnd Bergmann depends on OF 1026c0b26dSBrian Masney depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n 115ea4dba6SArnd Bergmann depends on QCOM_OCMEM || QCOM_OCMEM=n 125ea4dba6SArnd Bergmann depends on QCOM_LLCC || QCOM_LLCC=n 1324a96719SArnd Bergmann depends on QCOM_COMMAND_DB || QCOM_COMMAND_DB=n 14b145c6e6SJordan Crouse depends on PM 15bdab8e8bSArnd Bergmann select IOMMU_IO_PGTABLE 16b7bbd640SRob Clark select QCOM_MDT_LOADER if ARCH_QCOM 171e0b9b44SGeert Uytterhoeven select REGULATOR 187fe302aeSGeert Uytterhoeven select DRM_CLIENT_SELECTION 1905b8b6ddSGeert Uytterhoeven select DRM_DISPLAY_DP_AUX_BUS 20*9da7ec9bSDmitry Baryshkov select DRM_DISPLAY_DP_HELPER 21a6397e63SRob Clark select DRM_DISPLAY_HELPER 22c8afe684SRob Clark select DRM_BRIDGE_CONNECTOR 233e87599bSRob Clark select DRM_EXEC 2463885c16SRob Clark select DRM_KMS_HELPER 2563885c16SRob Clark select DRM_PANEL 261d8a5ca4SRob Clark select DRM_BRIDGE 27cd8a064fSThomas Zimmermann select DRM_PANEL_BRIDGE 28c8afe684SRob Clark select DRM_SCHED 29c8afe684SRob Clark select FB_SYSMEM_HELPERS if DRM_FBDEV_EMULATION 30424953cfSArnd Bergmann select SHMEM 31c0fec7f5SJordan Crouse select TMPFS 32f1427016SSrinivas Kandagatla select QCOM_SCM 33f0a42bb5SRob Clark select WANT_DEV_COREDUMP 34ac20fa0aSRob Clark select SND_SOC_HDMI_CODEC if SND_SOC 35f5b1a878SAkhil P Oommen select SYNC_FILE 36c11fa120SAkhil P Oommen select PM_OPP 37204226deSRob Clark select NVMEM 38c8afe684SRob Clark select PM_GENERIC_DOMAINS 39c8afe684SRob Clark select TRACE_GPU_MEM 40c8afe684SRob Clark help 41b02872dfSJordan Crouse DRM/KMS driver for MSM/snapdragon. 42b02872dfSJordan Crouse 43b02872dfSJordan Crouseconfig DRM_MSM_GPU_STATE 44b02872dfSJordan Crouse bool 45b02872dfSJordan Crouse depends on DRM_MSM && (DEBUG_FS || DEV_COREDUMP) 466a8bd08dSRob Clark default y 476a8bd08dSRob Clark 486a8bd08dSRob Clarkconfig DRM_MSM_GPU_SUDO 496a8bd08dSRob Clark bool "Enable SUDO flag on submits" 506a8bd08dSRob Clark depends on DRM_MSM && EXPERT 516a8bd08dSRob Clark default n 526a8bd08dSRob Clark help 536a8bd08dSRob Clark Enable userspace that has CAP_SYS_RAWIO to submit GPU commands 546a8bd08dSRob Clark that are run from RB instead of IB1. This essentially gives 556a8bd08dSRob Clark userspace kernel level access, but is useful for firmware 566a8bd08dSRob Clark debugging. 576a8bd08dSRob Clark 586a8bd08dSRob Clark Only use this if you are a driver developer. This should *not* 59b587f413SDmitry Baryshkov be enabled for production kernels. If unsure, say N. 60b587f413SDmitry Baryshkov 61b587f413SDmitry Baryshkovconfig DRM_MSM_VALIDATE_XML 62b587f413SDmitry Baryshkov bool "Validate XML register files against schema" 63b587f413SDmitry Baryshkov depends on DRM_MSM && EXPERT 64b587f413SDmitry Baryshkov depends on $(success,$(PYTHON3) -c "import lxml") 65b587f413SDmitry Baryshkov help 66b587f413SDmitry Baryshkov Validate XML files with register definitions against rules-fd schema. 67dc43e923SDmitry Baryshkov This option is mostly targeting DRM MSM developers. If unsure, say N. 68dc43e923SDmitry Baryshkov 69dc43e923SDmitry Baryshkovconfig DRM_MSM_MDSS 70dc43e923SDmitry Baryshkov bool 71dc43e923SDmitry Baryshkov depends on DRM_MSM 72dc43e923SDmitry Baryshkov default n 73dc43e923SDmitry Baryshkov 74424953cfSArnd Bergmannconfig DRM_MSM_MDP4 75feb46f02SRob Clark bool "Enable MDP4 support in MSM DRM driver" 76feb46f02SRob Clark depends on DRM_MSM 77dc43e923SDmitry Baryshkov default y 78dc43e923SDmitry Baryshkov help 79dc43e923SDmitry Baryshkov Compile in support for the Mobile Display Processor v4 (MDP4) in 80dc43e923SDmitry Baryshkov the MSM DRM driver. It is the older display controller found in 81dc43e923SDmitry Baryshkov devices using APQ8064/MSM8960/MSM8x60 platforms. 82dc43e923SDmitry Baryshkov 83dc43e923SDmitry Baryshkovconfig DRM_MSM_MDP5 84dc43e923SDmitry Baryshkov bool "Enable MDP5 support in MSM DRM driver" 85dc43e923SDmitry Baryshkov depends on DRM_MSM 86dc43e923SDmitry Baryshkov select DRM_MSM_MDSS 87dc43e923SDmitry Baryshkov default y 88dc43e923SDmitry Baryshkov help 89dc43e923SDmitry Baryshkov Compile in support for the Mobile Display Processor v5 (MDP5) in 90dc43e923SDmitry Baryshkov the MSM DRM driver. It is the display controller found in devices 91dc43e923SDmitry Baryshkov using e.g. APQ8016/MSM8916/APQ8096/MSM8996/MSM8974/SDM6x0 platforms. 92dc43e923SDmitry Baryshkov 93dc43e923SDmitry Baryshkovconfig DRM_MSM_DPU 94dc43e923SDmitry Baryshkov bool "Enable DPU support in MSM DRM driver" 95dc43e923SDmitry Baryshkov depends on DRM_MSM 96dc43e923SDmitry Baryshkov select DRM_MSM_MDSS 97dc43e923SDmitry Baryshkov select DRM_DISPLAY_DSC_HELPER 98dc43e923SDmitry Baryshkov default y 99dc43e923SDmitry Baryshkov help 100feb46f02SRob Clark Compile in support for the Display Processing Unit in 101c943b494SChandan Uddaraju the MSM DRM driver. It is the display controller found in devices 102c943b494SChandan Uddaraju using e.g. SDM845 and newer platforms. 103c943b494SChandan Uddaraju 10453d22794SJackie Liuconfig DRM_MSM_DP 10514975cffSChandan Uddaraju bool "Enable DisplayPort support in MSM DRM driver" 106c943b494SChandan Uddaraju depends on DRM_MSM 107c943b494SChandan Uddaraju select RATIONAL 108c943b494SChandan Uddaraju default y 109c943b494SChandan Uddaraju help 110c943b494SChandan Uddaraju Compile in support for DP driver in MSM DRM driver. DP external 111a689554bSHai Li display support is enabled through this config option. It can 112a689554bSHai Li be primary or secondary display on device. 113a689554bSHai Li 114a689554bSHai Liconfig DRM_MSM_DSI 115a689554bSHai Li bool "Enable DSI support in MSM DRM driver" 116a689554bSHai Li depends on DRM_MSM 117a689554bSHai Li select DRM_PANEL 118a689554bSHai Li select DRM_MIPI_DSI 119a689554bSHai Li select DRM_DISPLAY_DSC_HELPER 120a689554bSHai Li default y 1211bf4d7c5SHai Li help 1221bf4d7c5SHai Li Choose this option if you have a need for MIPI DSI connector 1231bf4d7c5SHai Li support. 1241bf4d7c5SHai Li 1251bf4d7c5SHai Liconfig DRM_MSM_DSI_28NM_PHY 1261bf4d7c5SHai Li bool "Enable DSI 28nm PHY driver in MSM DRM" 1271bf4d7c5SHai Li depends on DRM_MSM_DSI 1281bf4d7c5SHai Li default y 1291bf4d7c5SHai Li help 1301bf4d7c5SHai Li Choose this option if the 28nm DSI PHY is used on the platform. 1311bf4d7c5SHai Li 1321bf4d7c5SHai Liconfig DRM_MSM_DSI_20NM_PHY 1331bf4d7c5SHai Li bool "Enable DSI 20nm PHY driver in MSM DRM" 134225380b3SArchit Taneja depends on DRM_MSM_DSI 135225380b3SArchit Taneja default y 136225380b3SArchit Taneja help 137225380b3SArchit Taneja Choose this option if the 20nm DSI PHY is used on the platform. 138225380b3SArchit Taneja 139225380b3SArchit Tanejaconfig DRM_MSM_DSI_28NM_8960_PHY 140225380b3SArchit Taneja bool "Enable DSI 28nm 8960 PHY driver in MSM DRM" 141225380b3SArchit Taneja depends on DRM_MSM_DSI 142f079f6d9SArchit Taneja default y 143f079f6d9SArchit Taneja help 144f079f6d9SArchit Taneja Choose this option if the 28nm DSI PHY 8960 variant is used on the 145f079f6d9SArchit Taneja platform. 146f079f6d9SArchit Taneja 147f079f6d9SArchit Tanejaconfig DRM_MSM_DSI_14NM_PHY 148f079f6d9SArchit Taneja bool "Enable DSI 14nm PHY driver in MSM DRM (used by MSM8996/APQ8096)" 149973e02dbSArchit Taneja depends on DRM_MSM_DSI 150973e02dbSArchit Taneja default y 151973e02dbSArchit Taneja help 152973e02dbSArchit Taneja Choose this option if DSI PHY on 8996 is used on the platform. 153973e02dbSArchit Taneja 154973e02dbSArchit Tanejaconfig DRM_MSM_DSI_10NM_PHY 155973e02dbSArchit Taneja bool "Enable DSI 10nm PHY driver in MSM DRM (used by SDM845)" 1561ef7c99dSJonathan Marek depends on DRM_MSM_DSI 1571ef7c99dSJonathan Marek default y 1588b034e67SNeil Armstrong help 1591ef7c99dSJonathan Marek Choose this option if DSI PHY on SDM845 is used on the platform. 1601ef7c99dSJonathan Marek 1611ef7c99dSJonathan Marekconfig DRM_MSM_DSI_7NM_PHY 1628b034e67SNeil Armstrong bool "Enable DSI 7nm/5nm/4nm PHY driver in MSM DRM" 1632f9ae4e3SDmitry Baryshkov depends on DRM_MSM_DSI 164dc43e923SDmitry Baryshkov default y 165dc43e923SDmitry Baryshkov help 166dc43e923SDmitry Baryshkov Choose this option if DSI PHY on SM8150/SM8250/SM8350/SM8450/SM8550/SC7280 167dc43e923SDmitry Baryshkov is used on the platform. 168dc43e923SDmitry Baryshkov 169dc43e923SDmitry Baryshkovconfig DRM_MSM_HDMI 170dc43e923SDmitry Baryshkov bool "Enable HDMI support in MSM DRM driver" 171dc43e923SDmitry Baryshkov depends on DRM_MSM 172dc43e923SDmitry Baryshkov default y 173e0e86f25SColin Ian King help 174dc43e923SDmitry Baryshkov Compile in support for the HDMI output MSM DRM driver. It can 175dc43e923SDmitry Baryshkov be a primary or a secondary display on device. Note that this is used 176dc43e923SDmitry Baryshkov only for the direct HDMI output. If the device outputs HDMI data 177dc43e923SDmitry Baryshkov through some kind of DSI-to-HDMI bridge, this option can be disabled. 178dc43e923SDmitry Baryshkov 179dc43e923SDmitry Baryshkovconfig DRM_MSM_HDMI_HDCP 180dc43e923SDmitry Baryshkov bool "Enable HDMI HDCP support in MSM DRM driver" 181 depends on DRM_MSM && DRM_MSM_HDMI 182 default y 183 help 184 Choose this option to enable HDCP state machine 185