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 14*a1ee4bb2SDaniel Baluta depends on QCOM_SMEM || QCOM_SMEM=n 1524a96719SArnd Bergmann depends on PM 16b145c6e6SJordan Crouse select IOMMU_IO_PGTABLE 17bdab8e8bSArnd Bergmann select QCOM_MDT_LOADER if ARCH_QCOM 18b7bbd640SRob Clark select REGULATOR 19a6397e63SRob Clark select DRM_EXEC 20111fdd21SRob Clark select DRM_GPUVM 211d8a5ca4SRob Clark select DRM_SCHED 22c8afe684SRob Clark select SHMEM 23c8afe684SRob Clark select TMPFS 24424953cfSArnd Bergmann select QCOM_SCM 250be72be0SSumit Garg select QCOM_PAS 26*a1ee4bb2SDaniel Baluta select QCOM_UBWC_CONFIG if ARCH_QCOM && QCOM_SMEM 27c0fec7f5SJordan Crouse select WANT_DEV_COREDUMP 28f1427016SSrinivas Kandagatla select SND_SOC_HDMI_CODEC if SND_SOC 29f0a42bb5SRob Clark select SYNC_FILE 30ac20fa0aSRob Clark select PM_OPP 31f5b1a878SAkhil P Oommen select NVMEM 32c11fa120SAkhil P Oommen select PM_GENERIC_DOMAINS 33204226deSRob Clark select TRACE_GPU_MEM 34c8afe684SRob Clark help 35c8afe684SRob Clark DRM/KMS driver for MSM/snapdragon. 36c8afe684SRob Clark 37b02872dfSJordan Crouseconfig DRM_MSM_GPU_STATE 38b02872dfSJordan Crouse bool 39b02872dfSJordan Crouse depends on DRM_MSM && (DEBUG_FS || DEV_COREDUMP) 40b02872dfSJordan Crouse default y 41b02872dfSJordan Crouse 426a8bd08dSRob Clarkconfig DRM_MSM_GPU_SUDO 436a8bd08dSRob Clark bool "Enable SUDO flag on submits" 446a8bd08dSRob Clark depends on DRM_MSM && EXPERT 456a8bd08dSRob Clark default n 466a8bd08dSRob Clark help 476a8bd08dSRob Clark Enable userspace that has CAP_SYS_RAWIO to submit GPU commands 486a8bd08dSRob Clark that are run from RB instead of IB1. This essentially gives 496a8bd08dSRob Clark userspace kernel level access, but is useful for firmware 506a8bd08dSRob Clark debugging. 516a8bd08dSRob Clark 526a8bd08dSRob Clark Only use this if you are a driver developer. This should *not* 536a8bd08dSRob Clark be enabled for production kernels. If unsure, say N. 546a8bd08dSRob Clark 55b587f413SDmitry Baryshkovconfig DRM_MSM_VALIDATE_XML 56b587f413SDmitry Baryshkov bool "Validate XML register files against schema" 57b587f413SDmitry Baryshkov depends on DRM_MSM && EXPERT 58b587f413SDmitry Baryshkov depends on $(success,$(PYTHON3) -c "import lxml") 59b587f413SDmitry Baryshkov help 60b587f413SDmitry Baryshkov Validate XML files with register definitions against rules-fd schema. 61b587f413SDmitry Baryshkov This option is mostly targeting DRM MSM developers. If unsure, say N. 62b587f413SDmitry Baryshkov 6398290b0aSDmitry Baryshkovconfig DRM_MSM_KMS 6498290b0aSDmitry Baryshkov def_bool n 6598290b0aSDmitry Baryshkov depends on DRM_MSM 6627c35473SDmitry Baryshkov select DRM_BRIDGE 6727c35473SDmitry Baryshkov select DRM_BRIDGE_CONNECTOR 6827c35473SDmitry Baryshkov select DRM_CLIENT_SELECTION 6927c35473SDmitry Baryshkov select DRM_DISPLAY_HELPER 7027c35473SDmitry Baryshkov select DRM_KMS_HELPER 7127c35473SDmitry Baryshkov select DRM_PANEL 7227c35473SDmitry Baryshkov select DRM_PANEL_BRIDGE 7398290b0aSDmitry Baryshkov 7498290b0aSDmitry Baryshkovconfig DRM_MSM_KMS_FBDEV 7598290b0aSDmitry Baryshkov def_bool DRM_FBDEV_EMULATION 7698290b0aSDmitry Baryshkov depends on DRM_MSM_KMS 7727c35473SDmitry Baryshkov select FB_SYSMEM_HELPERS 7898290b0aSDmitry Baryshkov 79dc43e923SDmitry Baryshkovconfig DRM_MSM_MDSS 80dc43e923SDmitry Baryshkov bool 81dc43e923SDmitry Baryshkov depends on DRM_MSM 82dc43e923SDmitry Baryshkov default n 83dc43e923SDmitry Baryshkov 84dc43e923SDmitry Baryshkovconfig DRM_MSM_MDP4 85dc43e923SDmitry Baryshkov bool "Enable MDP4 support in MSM DRM driver" 86424953cfSArnd Bergmann depends on DRM_MSM 8798290b0aSDmitry Baryshkov select DRM_MSM_KMS 88feb46f02SRob Clark default y 89feb46f02SRob Clark help 90dc43e923SDmitry Baryshkov Compile in support for the Mobile Display Processor v4 (MDP4) in 91dc43e923SDmitry Baryshkov the MSM DRM driver. It is the older display controller found in 92dc43e923SDmitry Baryshkov devices using APQ8064/MSM8960/MSM8x60 platforms. 93dc43e923SDmitry Baryshkov 94dc43e923SDmitry Baryshkovconfig DRM_MSM_MDP5 95dc43e923SDmitry Baryshkov bool "Enable MDP5 support in MSM DRM driver" 96dc43e923SDmitry Baryshkov depends on DRM_MSM 97dc43e923SDmitry Baryshkov select DRM_MSM_MDSS 9898290b0aSDmitry Baryshkov select DRM_MSM_KMS 99dc43e923SDmitry Baryshkov default y 100dc43e923SDmitry Baryshkov help 101dc43e923SDmitry Baryshkov Compile in support for the Mobile Display Processor v5 (MDP5) in 102dc43e923SDmitry Baryshkov the MSM DRM driver. It is the display controller found in devices 103dc43e923SDmitry Baryshkov using e.g. APQ8016/MSM8916/APQ8096/MSM8996/MSM8974/SDM6x0 platforms. 104dc43e923SDmitry Baryshkov 105dc43e923SDmitry Baryshkovconfig DRM_MSM_DPU 106dc43e923SDmitry Baryshkov bool "Enable DPU support in MSM DRM driver" 107dc43e923SDmitry Baryshkov depends on DRM_MSM 108dc43e923SDmitry Baryshkov select DRM_MSM_MDSS 10998290b0aSDmitry Baryshkov select DRM_MSM_KMS 1108a8a3120SDmitry Baryshkov select DRM_DISPLAY_DSC_HELPER 111dc43e923SDmitry Baryshkov default y 112dc43e923SDmitry Baryshkov help 113dc43e923SDmitry Baryshkov Compile in support for the Display Processing Unit in 114dc43e923SDmitry Baryshkov the MSM DRM driver. It is the display controller found in devices 115dc43e923SDmitry Baryshkov using e.g. SDM845 and newer platforms. 116feb46f02SRob Clark 117c943b494SChandan Uddarajuconfig DRM_MSM_DP 118c943b494SChandan Uddaraju bool "Enable DisplayPort support in MSM DRM driver" 119c943b494SChandan Uddaraju depends on DRM_MSM 12098290b0aSDmitry Baryshkov depends on DRM_MSM_KMS 12198a8920eSDmitry Baryshkov select DRM_DISPLAY_HDMI_AUDIO_HELPER 12253d22794SJackie Liu select RATIONAL 12327c35473SDmitry Baryshkov select DRM_DISPLAY_DP_AUX_BUS 12427c35473SDmitry Baryshkov select DRM_DISPLAY_DP_HELPER 12514975cffSChandan Uddaraju default y 126c943b494SChandan Uddaraju help 127c943b494SChandan Uddaraju Compile in support for DP driver in MSM DRM driver. DP external 128c943b494SChandan Uddaraju display support is enabled through this config option. It can 129c943b494SChandan Uddaraju be primary or secondary display on device. 130c943b494SChandan Uddaraju 131a689554bSHai Liconfig DRM_MSM_DSI 132a689554bSHai Li bool "Enable DSI support in MSM DRM driver" 133a689554bSHai Li depends on DRM_MSM 13498290b0aSDmitry Baryshkov depends on DRM_MSM_KMS 135a689554bSHai Li select DRM_PANEL 136a689554bSHai Li select DRM_MIPI_DSI 137ca097d4dSDmitry Baryshkov select DRM_DISPLAY_DSC_HELPER 138a689554bSHai Li default y 139a689554bSHai Li help 140a689554bSHai Li Choose this option if you have a need for MIPI DSI connector 141a689554bSHai Li support. 142a689554bSHai Li 1431bf4d7c5SHai Liconfig DRM_MSM_DSI_28NM_PHY 1441bf4d7c5SHai Li bool "Enable DSI 28nm PHY driver in MSM DRM" 1451bf4d7c5SHai Li depends on DRM_MSM_DSI 1461bf4d7c5SHai Li default y 1471bf4d7c5SHai Li help 1481bf4d7c5SHai Li Choose this option if the 28nm DSI PHY is used on the platform. 1491bf4d7c5SHai Li 1501bf4d7c5SHai Liconfig DRM_MSM_DSI_20NM_PHY 1511bf4d7c5SHai Li bool "Enable DSI 20nm PHY driver in MSM DRM" 1521bf4d7c5SHai Li depends on DRM_MSM_DSI 1531bf4d7c5SHai Li default y 1541bf4d7c5SHai Li help 1551bf4d7c5SHai Li Choose this option if the 20nm DSI PHY is used on the platform. 156225380b3SArchit Taneja 157225380b3SArchit Tanejaconfig DRM_MSM_DSI_28NM_8960_PHY 158225380b3SArchit Taneja bool "Enable DSI 28nm 8960 PHY driver in MSM DRM" 159225380b3SArchit Taneja depends on DRM_MSM_DSI 160225380b3SArchit Taneja default y 161225380b3SArchit Taneja help 162225380b3SArchit Taneja Choose this option if the 28nm DSI PHY 8960 variant is used on the 163225380b3SArchit Taneja platform. 164f079f6d9SArchit Taneja 165f079f6d9SArchit Tanejaconfig DRM_MSM_DSI_14NM_PHY 166f079f6d9SArchit Taneja bool "Enable DSI 14nm PHY driver in MSM DRM (used by MSM8996/APQ8096)" 167f079f6d9SArchit Taneja depends on DRM_MSM_DSI 168f079f6d9SArchit Taneja default y 169f079f6d9SArchit Taneja help 170f079f6d9SArchit Taneja Choose this option if DSI PHY on 8996 is used on the platform. 171973e02dbSArchit Taneja 172973e02dbSArchit Tanejaconfig DRM_MSM_DSI_10NM_PHY 173973e02dbSArchit Taneja bool "Enable DSI 10nm PHY driver in MSM DRM (used by SDM845)" 174973e02dbSArchit Taneja depends on DRM_MSM_DSI 175973e02dbSArchit Taneja default y 176973e02dbSArchit Taneja help 177973e02dbSArchit Taneja Choose this option if DSI PHY on SDM845 is used on the platform. 1781ef7c99dSJonathan Marek 1791ef7c99dSJonathan Marekconfig DRM_MSM_DSI_7NM_PHY 1808b034e67SNeil Armstrong bool "Enable DSI 7nm/5nm/4nm PHY driver in MSM DRM" 1811ef7c99dSJonathan Marek depends on DRM_MSM_DSI 1821ef7c99dSJonathan Marek default y 1831ef7c99dSJonathan Marek help 1848b034e67SNeil Armstrong Choose this option if DSI PHY on SM8150/SM8250/SM8350/SM8450/SM8550/SC7280 1852f9ae4e3SDmitry Baryshkov is used on the platform. 186dc43e923SDmitry Baryshkov 187dc43e923SDmitry Baryshkovconfig DRM_MSM_HDMI 188dc43e923SDmitry Baryshkov bool "Enable HDMI support in MSM DRM driver" 189dc43e923SDmitry Baryshkov depends on DRM_MSM 19098290b0aSDmitry Baryshkov depends on DRM_MSM_KMS 191dc43e923SDmitry Baryshkov default y 192384d2b03SDmitry Baryshkov select DRM_DISPLAY_HDMI_HELPER 193384d2b03SDmitry Baryshkov select DRM_DISPLAY_HDMI_STATE_HELPER 194dc43e923SDmitry Baryshkov help 195dc43e923SDmitry Baryshkov Compile in support for the HDMI output MSM DRM driver. It can 196dc43e923SDmitry Baryshkov be a primary or a secondary display on device. Note that this is used 197dc43e923SDmitry Baryshkov only for the direct HDMI output. If the device outputs HDMI data 198e0e86f25SColin Ian King through some kind of DSI-to-HDMI bridge, this option can be disabled. 199dc43e923SDmitry Baryshkov 200dc43e923SDmitry Baryshkovconfig DRM_MSM_HDMI_HDCP 201dc43e923SDmitry Baryshkov bool "Enable HDMI HDCP support in MSM DRM driver" 202dc43e923SDmitry Baryshkov depends on DRM_MSM && DRM_MSM_HDMI 203dc43e923SDmitry Baryshkov default y 204dc43e923SDmitry Baryshkov help 205dc43e923SDmitry Baryshkov Choose this option to enable HDCP state machine 206