xref: /linux/drivers/gpu/drm/msm/Kconfig (revision 8d2b0853add1d7534dc0794e3c8e0b9e8c4ec640)
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 OF
10	depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n
11	depends on QCOM_OCMEM || QCOM_OCMEM=n
12	depends on QCOM_LLCC || QCOM_LLCC=n
13	depends on QCOM_COMMAND_DB || QCOM_COMMAND_DB=n
14	depends on PM
15	select IOMMU_IO_PGTABLE
16	select QCOM_MDT_LOADER if ARCH_QCOM
17	select REGULATOR
18	select DRM_EXEC
19	select DRM_GPUVM
20	select DRM_SCHED
21	select SHMEM
22	select TMPFS
23	select QCOM_SCM
24	select QCOM_UBWC_CONFIG
25	select WANT_DEV_COREDUMP
26	select SND_SOC_HDMI_CODEC if SND_SOC
27	select SYNC_FILE
28	select PM_OPP
29	select NVMEM
30	select PM_GENERIC_DOMAINS
31	select TRACE_GPU_MEM
32	help
33	  DRM/KMS driver for MSM/snapdragon.
34
35config DRM_MSM_GPU_STATE
36	bool
37	depends on DRM_MSM && (DEBUG_FS || DEV_COREDUMP)
38	default y
39
40config DRM_MSM_GPU_SUDO
41	bool "Enable SUDO flag on submits"
42	depends on DRM_MSM && EXPERT
43	default n
44	help
45	  Enable userspace that has CAP_SYS_RAWIO to submit GPU commands
46	  that are run from RB instead of IB1.  This essentially gives
47	  userspace kernel level access, but is useful for firmware
48	  debugging.
49
50	  Only use this if you are a driver developer.  This should *not*
51	  be enabled for production kernels.  If unsure, say N.
52
53config DRM_MSM_VALIDATE_XML
54	bool "Validate XML register files against schema"
55	depends on DRM_MSM && EXPERT
56	depends on $(success,$(PYTHON3) -c "import lxml")
57	help
58	  Validate XML files with register definitions against rules-fd schema.
59	  This option is mostly targeting DRM MSM developers. If unsure, say N.
60
61config DRM_MSM_KMS
62	def_bool n
63	depends on DRM_MSM
64	select DRM_BRIDGE
65	select DRM_BRIDGE_CONNECTOR
66	select DRM_CLIENT_SELECTION
67	select DRM_DISPLAY_HELPER
68	select DRM_KMS_HELPER
69	select DRM_PANEL
70	select DRM_PANEL_BRIDGE
71
72config DRM_MSM_KMS_FBDEV
73	def_bool DRM_FBDEV_EMULATION
74	depends on DRM_MSM_KMS
75	select FB_SYSMEM_HELPERS
76
77config DRM_MSM_MDSS
78	bool
79	depends on DRM_MSM
80	default n
81
82config DRM_MSM_MDP4
83	bool "Enable MDP4 support in MSM DRM driver"
84	depends on DRM_MSM
85	select DRM_MSM_KMS
86	default y
87	help
88	  Compile in support for the Mobile Display Processor v4 (MDP4) in
89	  the MSM DRM driver. It is the older display controller found in
90	  devices using APQ8064/MSM8960/MSM8x60 platforms.
91
92config DRM_MSM_MDP5
93	bool "Enable MDP5 support in MSM DRM driver"
94	depends on DRM_MSM
95	select DRM_MSM_MDSS
96	select DRM_MSM_KMS
97	default y
98	help
99	  Compile in support for the Mobile Display Processor v5 (MDP5) in
100	  the MSM DRM driver. It is the display controller found in devices
101	  using e.g. APQ8016/MSM8916/APQ8096/MSM8996/MSM8974/SDM6x0 platforms.
102
103config DRM_MSM_DPU
104	bool "Enable DPU support in MSM DRM driver"
105	depends on DRM_MSM
106	select DRM_MSM_MDSS
107	select DRM_MSM_KMS
108	select DRM_DISPLAY_DSC_HELPER
109	default y
110	help
111	  Compile in support for the Display Processing Unit in
112	  the MSM DRM driver. It is the display controller found in devices
113	  using e.g. SDM845 and newer platforms.
114
115config DRM_MSM_DP
116	bool "Enable DisplayPort support in MSM DRM driver"
117	depends on DRM_MSM
118	depends on DRM_MSM_KMS
119	select DRM_DISPLAY_HDMI_AUDIO_HELPER
120	select RATIONAL
121	select DRM_DISPLAY_DP_AUX_BUS
122	select DRM_DISPLAY_DP_HELPER
123	default y
124	help
125	  Compile in support for DP driver in MSM DRM driver. DP external
126	  display support is enabled through this config option. It can
127	  be primary or secondary display on device.
128
129config DRM_MSM_DSI
130	bool "Enable DSI support in MSM DRM driver"
131	depends on DRM_MSM
132	depends on DRM_MSM_KMS
133	select DRM_PANEL
134	select DRM_MIPI_DSI
135	select DRM_DISPLAY_DSC_HELPER
136	default y
137	help
138	  Choose this option if you have a need for MIPI DSI connector
139	  support.
140
141config DRM_MSM_DSI_28NM_PHY
142	bool "Enable DSI 28nm PHY driver in MSM DRM"
143	depends on DRM_MSM_DSI
144	default y
145	help
146	  Choose this option if the 28nm DSI PHY is used on the platform.
147
148config DRM_MSM_DSI_20NM_PHY
149	bool "Enable DSI 20nm PHY driver in MSM DRM"
150	depends on DRM_MSM_DSI
151	default y
152	help
153	  Choose this option if the 20nm DSI PHY is used on the platform.
154
155config DRM_MSM_DSI_28NM_8960_PHY
156	bool "Enable DSI 28nm 8960 PHY driver in MSM DRM"
157	depends on DRM_MSM_DSI
158	default y
159	help
160	  Choose this option if the 28nm DSI PHY 8960 variant is used on the
161	  platform.
162
163config DRM_MSM_DSI_14NM_PHY
164	bool "Enable DSI 14nm PHY driver in MSM DRM (used by MSM8996/APQ8096)"
165	depends on DRM_MSM_DSI
166	default y
167	help
168	  Choose this option if DSI PHY on 8996 is used on the platform.
169
170config DRM_MSM_DSI_10NM_PHY
171	bool "Enable DSI 10nm PHY driver in MSM DRM (used by SDM845)"
172	depends on DRM_MSM_DSI
173	default y
174	help
175	  Choose this option if DSI PHY on SDM845 is used on the platform.
176
177config DRM_MSM_DSI_7NM_PHY
178	bool "Enable DSI 7nm/5nm/4nm PHY driver in MSM DRM"
179	depends on DRM_MSM_DSI
180	default y
181	help
182	  Choose this option if DSI PHY on SM8150/SM8250/SM8350/SM8450/SM8550/SC7280
183	  is used on the platform.
184
185config DRM_MSM_HDMI
186	bool "Enable HDMI support in MSM DRM driver"
187	depends on DRM_MSM
188	depends on DRM_MSM_KMS
189	default y
190	select DRM_DISPLAY_HDMI_HELPER
191	select DRM_DISPLAY_HDMI_STATE_HELPER
192	help
193	  Compile in support for the HDMI output MSM DRM driver. It can
194	  be a primary or a secondary display on device. Note that this is used
195	  only for the direct HDMI output. If the device outputs HDMI data
196	  through some kind of DSI-to-HDMI bridge, this option can be disabled.
197
198config DRM_MSM_HDMI_HDCP
199	bool "Enable HDMI HDCP support in MSM DRM driver"
200	depends on DRM_MSM && DRM_MSM_HDMI
201	default y
202	help
203	  Choose this option to enable HDCP state machine
204