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