xref: /linux/drivers/gpu/drm/msm/Kconfig (revision b587f413ca47530b41aadc6f6bda6fc76153f77f)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2c8afe684SRob Clark
3c8afe684SRob Clarkconfig DRM_MSM
4c8afe684SRob Clark	tristate "MSM DRM"
5c8afe684SRob Clark	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 QCOM_AOSS_QMP || QCOM_AOSS_QMP=n
1026c0b26dSBrian Masney	depends on QCOM_OCMEM || QCOM_OCMEM=n
115ea4dba6SArnd Bergmann	depends on QCOM_LLCC || QCOM_LLCC=n
125ea4dba6SArnd Bergmann	depends on QCOM_COMMAND_DB || QCOM_COMMAND_DB=n
1324a96719SArnd Bergmann	depends on PM
14b145c6e6SJordan Crouse	select IOMMU_IO_PGTABLE
15bdab8e8bSArnd Bergmann	select QCOM_MDT_LOADER if ARCH_QCOM
16b7bbd640SRob Clark	select REGULATOR
17f5d01644SDmitry Baryshkov	select DRM_DP_AUX_BUS
181e0f6642SThomas Zimmermann	select DRM_DISPLAY_DP_HELPER
191e0f6642SThomas Zimmermann	select DRM_DISPLAY_HELPER
20a6397e63SRob Clark	select DRM_EXEC
21c8afe684SRob Clark	select DRM_KMS_HELPER
223e87599bSRob Clark	select DRM_PANEL
2363885c16SRob Clark	select DRM_BRIDGE
2463885c16SRob Clark	select DRM_PANEL_BRIDGE
251d8a5ca4SRob Clark	select DRM_SCHED
26cd8a064fSThomas Zimmermann	select FB_SYSMEM_HELPERS if DRM_FBDEV_EMULATION
27c8afe684SRob Clark	select SHMEM
28c8afe684SRob Clark	select TMPFS
29424953cfSArnd Bergmann	select QCOM_SCM
30c0fec7f5SJordan Crouse	select WANT_DEV_COREDUMP
31f1427016SSrinivas Kandagatla	select SND_SOC_HDMI_CODEC if SND_SOC
32f0a42bb5SRob Clark	select SYNC_FILE
33ac20fa0aSRob Clark	select PM_OPP
34f5b1a878SAkhil P Oommen	select NVMEM
35c11fa120SAkhil P Oommen	select PM_GENERIC_DOMAINS
36c8afe684SRob Clark	help
37c8afe684SRob Clark	  DRM/KMS driver for MSM/snapdragon.
38c8afe684SRob Clark
39b02872dfSJordan Crouseconfig DRM_MSM_GPU_STATE
40b02872dfSJordan Crouse	bool
41b02872dfSJordan Crouse	depends on DRM_MSM && (DEBUG_FS || DEV_COREDUMP)
42b02872dfSJordan Crouse	default y
43b02872dfSJordan Crouse
446a8bd08dSRob Clarkconfig DRM_MSM_GPU_SUDO
456a8bd08dSRob Clark	bool "Enable SUDO flag on submits"
466a8bd08dSRob Clark	depends on DRM_MSM && EXPERT
476a8bd08dSRob Clark	default n
486a8bd08dSRob Clark	help
496a8bd08dSRob Clark	  Enable userspace that has CAP_SYS_RAWIO to submit GPU commands
506a8bd08dSRob Clark	  that are run from RB instead of IB1.  This essentially gives
516a8bd08dSRob Clark	  userspace kernel level access, but is useful for firmware
526a8bd08dSRob Clark	  debugging.
536a8bd08dSRob Clark
546a8bd08dSRob Clark	  Only use this if you are a driver developer.  This should *not*
556a8bd08dSRob Clark	  be enabled for production kernels.  If unsure, say N.
566a8bd08dSRob Clark
57*b587f413SDmitry Baryshkovconfig DRM_MSM_VALIDATE_XML
58*b587f413SDmitry Baryshkov	bool "Validate XML register files against schema"
59*b587f413SDmitry Baryshkov	depends on DRM_MSM && EXPERT
60*b587f413SDmitry Baryshkov	depends on $(success,$(PYTHON3) -c "import lxml")
61*b587f413SDmitry Baryshkov	help
62*b587f413SDmitry Baryshkov	  Validate XML files with register definitions against rules-fd schema.
63*b587f413SDmitry Baryshkov	  This option is mostly targeting DRM MSM developers. If unsure, say N.
64*b587f413SDmitry Baryshkov
65dc43e923SDmitry Baryshkovconfig DRM_MSM_MDSS
66dc43e923SDmitry Baryshkov	bool
67dc43e923SDmitry Baryshkov	depends on DRM_MSM
68dc43e923SDmitry Baryshkov	default n
69dc43e923SDmitry Baryshkov
70dc43e923SDmitry Baryshkovconfig DRM_MSM_MDP4
71dc43e923SDmitry Baryshkov	bool "Enable MDP4 support in MSM DRM driver"
72424953cfSArnd Bergmann	depends on DRM_MSM
73feb46f02SRob Clark	default y
74feb46f02SRob Clark	help
75dc43e923SDmitry Baryshkov	  Compile in support for the Mobile Display Processor v4 (MDP4) in
76dc43e923SDmitry Baryshkov	  the MSM DRM driver. It is the older display controller found in
77dc43e923SDmitry Baryshkov	  devices using APQ8064/MSM8960/MSM8x60 platforms.
78dc43e923SDmitry Baryshkov
79dc43e923SDmitry Baryshkovconfig DRM_MSM_MDP5
80dc43e923SDmitry Baryshkov	bool "Enable MDP5 support in MSM DRM driver"
81dc43e923SDmitry Baryshkov	depends on DRM_MSM
82dc43e923SDmitry Baryshkov	select DRM_MSM_MDSS
83dc43e923SDmitry Baryshkov	default y
84dc43e923SDmitry Baryshkov	help
85dc43e923SDmitry Baryshkov	  Compile in support for the Mobile Display Processor v5 (MDP5) in
86dc43e923SDmitry Baryshkov	  the MSM DRM driver. It is the display controller found in devices
87dc43e923SDmitry Baryshkov	  using e.g. APQ8016/MSM8916/APQ8096/MSM8996/MSM8974/SDM6x0 platforms.
88dc43e923SDmitry Baryshkov
89dc43e923SDmitry Baryshkovconfig DRM_MSM_DPU
90dc43e923SDmitry Baryshkov	bool "Enable DPU support in MSM DRM driver"
91dc43e923SDmitry Baryshkov	depends on DRM_MSM
92dc43e923SDmitry Baryshkov	select DRM_MSM_MDSS
93dc43e923SDmitry Baryshkov	default y
94dc43e923SDmitry Baryshkov	help
95dc43e923SDmitry Baryshkov	  Compile in support for the Display Processing Unit in
96dc43e923SDmitry Baryshkov	  the MSM DRM driver. It is the display controller found in devices
97dc43e923SDmitry Baryshkov	  using e.g. SDM845 and newer platforms.
98feb46f02SRob Clark
99c943b494SChandan Uddarajuconfig DRM_MSM_DP
100c943b494SChandan Uddaraju	bool "Enable DisplayPort support in MSM DRM driver"
101c943b494SChandan Uddaraju	depends on DRM_MSM
10253d22794SJackie Liu	select RATIONAL
10314975cffSChandan Uddaraju	default y
104c943b494SChandan Uddaraju	help
105c943b494SChandan Uddaraju	  Compile in support for DP driver in MSM DRM driver. DP external
106c943b494SChandan Uddaraju	  display support is enabled through this config option. It can
107c943b494SChandan Uddaraju	  be primary or secondary display on device.
108c943b494SChandan Uddaraju
109a689554bSHai Liconfig DRM_MSM_DSI
110a689554bSHai Li	bool "Enable DSI support in MSM DRM driver"
111a689554bSHai Li	depends on DRM_MSM
112a689554bSHai Li	select DRM_PANEL
113a689554bSHai Li	select DRM_MIPI_DSI
114a689554bSHai Li	default y
115a689554bSHai Li	help
116a689554bSHai Li	  Choose this option if you have a need for MIPI DSI connector
117a689554bSHai Li	  support.
118a689554bSHai Li
1191bf4d7c5SHai Liconfig DRM_MSM_DSI_28NM_PHY
1201bf4d7c5SHai Li	bool "Enable DSI 28nm PHY driver in MSM DRM"
1211bf4d7c5SHai Li	depends on DRM_MSM_DSI
1221bf4d7c5SHai Li	default y
1231bf4d7c5SHai Li	help
1241bf4d7c5SHai Li	  Choose this option if the 28nm DSI PHY is used on the platform.
1251bf4d7c5SHai Li
1261bf4d7c5SHai Liconfig DRM_MSM_DSI_20NM_PHY
1271bf4d7c5SHai Li	bool "Enable DSI 20nm PHY driver in MSM DRM"
1281bf4d7c5SHai Li	depends on DRM_MSM_DSI
1291bf4d7c5SHai Li	default y
1301bf4d7c5SHai Li	help
1311bf4d7c5SHai Li	  Choose this option if the 20nm DSI PHY is used on the platform.
132225380b3SArchit Taneja
133225380b3SArchit Tanejaconfig DRM_MSM_DSI_28NM_8960_PHY
134225380b3SArchit Taneja	bool "Enable DSI 28nm 8960 PHY driver in MSM DRM"
135225380b3SArchit Taneja	depends on DRM_MSM_DSI
136225380b3SArchit Taneja	default y
137225380b3SArchit Taneja	help
138225380b3SArchit Taneja	  Choose this option if the 28nm DSI PHY 8960 variant is used on the
139225380b3SArchit Taneja	  platform.
140f079f6d9SArchit Taneja
141f079f6d9SArchit Tanejaconfig DRM_MSM_DSI_14NM_PHY
142f079f6d9SArchit Taneja	bool "Enable DSI 14nm PHY driver in MSM DRM (used by MSM8996/APQ8096)"
143f079f6d9SArchit Taneja	depends on DRM_MSM_DSI
144f079f6d9SArchit Taneja	default y
145f079f6d9SArchit Taneja	help
146f079f6d9SArchit Taneja	  Choose this option if DSI PHY on 8996 is used on the platform.
147973e02dbSArchit Taneja
148973e02dbSArchit Tanejaconfig DRM_MSM_DSI_10NM_PHY
149973e02dbSArchit Taneja	bool "Enable DSI 10nm PHY driver in MSM DRM (used by SDM845)"
150973e02dbSArchit Taneja	depends on DRM_MSM_DSI
151973e02dbSArchit Taneja	default y
152973e02dbSArchit Taneja	help
153973e02dbSArchit Taneja	  Choose this option if DSI PHY on SDM845 is used on the platform.
1541ef7c99dSJonathan Marek
1551ef7c99dSJonathan Marekconfig DRM_MSM_DSI_7NM_PHY
1568b034e67SNeil Armstrong	bool "Enable DSI 7nm/5nm/4nm PHY driver in MSM DRM"
1571ef7c99dSJonathan Marek	depends on DRM_MSM_DSI
1581ef7c99dSJonathan Marek	default y
1591ef7c99dSJonathan Marek	help
1608b034e67SNeil Armstrong	  Choose this option if DSI PHY on SM8150/SM8250/SM8350/SM8450/SM8550/SC7280
1612f9ae4e3SDmitry Baryshkov	  is used on the platform.
162dc43e923SDmitry Baryshkov
163dc43e923SDmitry Baryshkovconfig DRM_MSM_HDMI
164dc43e923SDmitry Baryshkov	bool "Enable HDMI support in MSM DRM driver"
165dc43e923SDmitry Baryshkov	depends on DRM_MSM
166dc43e923SDmitry Baryshkov	default y
167dc43e923SDmitry Baryshkov	help
168dc43e923SDmitry Baryshkov	  Compile in support for the HDMI output MSM DRM driver. It can
169dc43e923SDmitry Baryshkov	  be a primary or a secondary display on device. Note that this is used
170dc43e923SDmitry Baryshkov	  only for the direct HDMI output. If the device outputs HDMI data
171e0e86f25SColin Ian King	  through some kind of DSI-to-HDMI bridge, this option can be disabled.
172dc43e923SDmitry Baryshkov
173dc43e923SDmitry Baryshkovconfig DRM_MSM_HDMI_HDCP
174dc43e923SDmitry Baryshkov	bool "Enable HDMI HDCP support in MSM DRM driver"
175dc43e923SDmitry Baryshkov	depends on DRM_MSM && DRM_MSM_HDMI
176dc43e923SDmitry Baryshkov	default y
177dc43e923SDmitry Baryshkov	help
178dc43e923SDmitry Baryshkov	  Choose this option to enable HDCP state machine
179