xref: /linux/drivers/gpu/drm/rockchip/Kconfig (revision d72aa5cf045a69d5fd433cde5dd4e113d9558fd1)
1# SPDX-License-Identifier: GPL-2.0-only
2config DRM_ROCKCHIP
3	tristate "DRM Support for Rockchip"
4	depends on DRM
5	depends on ARCH_ROCKCHIP || COMPILE_TEST
6	depends on ROCKCHIP_IOMMU || !ROCKCHIP_IOMMU
7	depends on OF
8	select DRM_CLIENT_SELECTION
9	select DRM_GEM_DMA_HELPER
10	select DRM_KMS_HELPER
11	select DRM_PANEL
12	select VIDEOMODE_HELPERS
13	select DRM_ANALOGIX_DP if ROCKCHIP_ANALOGIX_DP
14	select DRM_DISPLAY_DP_AUX_BUS if ROCKCHIP_ANALOGIX_DP
15	select DRM_DW_DP if ROCKCHIP_DW_DP
16	select DRM_DW_HDMI if ROCKCHIP_DW_HDMI
17	select DRM_DW_HDMI_QP if ROCKCHIP_DW_HDMI_QP
18	select DRM_DW_MIPI_DSI if ROCKCHIP_DW_MIPI_DSI
19	select DRM_DW_MIPI_DSI2 if ROCKCHIP_DW_MIPI_DSI2
20	select DRM_INNO_HDMI if ROCKCHIP_INNO_HDMI
21	select GENERIC_PHY if ROCKCHIP_DW_MIPI_DSI
22	select GENERIC_PHY_MIPI_DPHY if ROCKCHIP_DW_MIPI_DSI
23	select SND_SOC_HDMI_CODEC if ROCKCHIP_CDN_DP && SND_SOC
24	help
25	  Choose this option if you have a Rockchip soc chipset.
26	  This driver provides kernel mode setting and buffer
27	  management to userspace. This driver does not provide
28	  2D or 3D acceleration; acceleration is performed by other
29	  IP found on the SoC.
30
31if DRM_ROCKCHIP
32
33config ROCKCHIP_VOP
34	bool "Rockchip VOP driver"
35	default y
36	help
37	  This selects support for the VOP driver. You should enable it
38	  on older SoCs.
39
40config ROCKCHIP_VOP2
41	bool "Rockchip VOP2 driver"
42	help
43	  This selects support for the VOP2 driver. The VOP2 hardware is
44	  first found on the RK3568.
45
46config ROCKCHIP_ANALOGIX_DP
47	bool "Rockchip specific extensions for Analogix DP driver"
48	depends on ROCKCHIP_VOP
49	select DRM_BRIDGE_CONNECTOR
50	select DRM_DISPLAY_HELPER
51	select DRM_DISPLAY_DP_HELPER
52	help
53	  This selects support for Rockchip SoC specific extensions
54	  for the Analogix Core DP driver. If you want to enable DP
55	  on RK3288 or RK3399 based SoC, you should select this option.
56
57config ROCKCHIP_CDN_DP
58	bool "Rockchip cdn DP"
59	depends on EXTCON=y || (EXTCON=m && DRM_ROCKCHIP=m)
60	select DRM_DISPLAY_HELPER
61	select DRM_BRIDGE_CONNECTOR
62	select DRM_DISPLAY_DP_HELPER
63	help
64	  This selects support for Rockchip SoC specific extensions
65	  for the cdn DP driver. If you want to enable Dp on
66	  RK3399 based SoC, you should select this
67	  option.
68
69config ROCKCHIP_DW_DP
70	bool "Rockchip specific extensions for Synopsys DW DP"
71	select DRM_BRIDGE_CONNECTOR
72	help
73	  This selects support for Rockchip SoC specific extensions
74	  to enable Synopsys DesignWare Cores based DisplayPort transmit
75	  controller support on Rockchip SoC, If you want to enable DP on
76	  rk3588 based SoC, you should select this option.
77
78config ROCKCHIP_DW_HDMI
79	bool "Rockchip specific extensions for Synopsys DW HDMI"
80	help
81	  This selects support for Rockchip SoC specific extensions
82	  for the Synopsys DesignWare HDMI driver. If you want to
83	  enable HDMI on RK3288 or RK3399 based SoC, you should select
84	  this option.
85
86config ROCKCHIP_DW_HDMI_QP
87	bool "Rockchip specific extensions for Synopsys DW HDMI QP"
88	select DRM_BRIDGE_CONNECTOR
89	help
90	  This selects support for Rockchip SoC specific extensions
91	  for the Synopsys DesignWare HDMI QP driver. If you want to
92	  enable HDMI on RK3588 based SoC, you should select this option.
93
94config ROCKCHIP_DW_MIPI_DSI
95	bool "Rockchip specific extensions for Synopsys DW MIPI DSI"
96	select GENERIC_PHY_MIPI_DPHY
97	help
98	  This selects support for Rockchip SoC specific extensions
99	  for the Synopsys DesignWare dsi driver. If you want to
100	  enable MIPI DSI on RK3288 or RK3399 based SoC, you should
101	  select this option.
102
103config ROCKCHIP_DW_MIPI_DSI2
104	bool "Rockchip specific extensions for Synopsys DW MIPI DSI2"
105	select GENERIC_PHY_MIPI_DPHY
106	help
107	  This selects support for Rockchip SoC specific extensions
108	  for the Synopsys DesignWare DSI2 driver. If you want to
109	  enable MIPI DSI on RK3576 or RK3588 based SoC, you should
110	  select this option.
111
112config ROCKCHIP_INNO_HDMI
113	bool "Rockchip specific extensions for Innosilicon HDMI"
114	select DRM_DISPLAY_HDMI_HELPER
115	select DRM_DISPLAY_HDMI_STATE_HELPER
116	select DRM_DISPLAY_HELPER
117	help
118	  This selects support for Rockchip SoC specific extensions
119	  for the Innosilicon HDMI driver. If you want to enable
120	  HDMI on RK3036 based SoC, you should select this option.
121
122config ROCKCHIP_LVDS
123	bool "Rockchip LVDS support"
124	depends on DRM_ROCKCHIP
125	depends on PINCTRL && OF
126	select DRM_DISPLAY_HELPER
127	select DRM_BRIDGE_CONNECTOR
128	help
129	  Choose this option to enable support for Rockchip LVDS controllers.
130	  Rockchip rk3288 SoC has LVDS TX Controller can be used, and it
131	  support LVDS, rgb, dual LVDS output mode. say Y to enable its
132	  driver.
133
134config ROCKCHIP_RGB
135	bool "Rockchip RGB support"
136	depends on DRM_ROCKCHIP
137	depends on PINCTRL
138	select DRM_DISPLAY_HELPER
139	select DRM_BRIDGE_CONNECTOR
140	help
141	  Choose this option to enable support for Rockchip RGB output.
142	  Some Rockchip CRTCs, like rv1108, can directly output parallel
143	  and serial RGB format to panel or connect to a conversion chip.
144	  say Y to enable its driver.
145
146config ROCKCHIP_RK3066_HDMI
147	bool "Rockchip specific extensions for RK3066 HDMI"
148	depends on DRM_ROCKCHIP
149	select DRM_DISPLAY_HELPER
150	select DRM_BRIDGE_CONNECTOR
151	help
152	  This selects support for Rockchip SoC specific extensions
153	  for the RK3066 HDMI driver. If you want to enable
154	  HDMI on RK3066 based SoC, you should select this option.
155endif
156