xref: /linux/drivers/gpu/drm/rockchip/Kconfig (revision cd98e73492102a2ff54923f08c37a2780979ac4c)
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_DISPLAY_HELPER
50	select DRM_DISPLAY_DP_HELPER
51	help
52	  This selects support for Rockchip SoC specific extensions
53	  for the Analogix Core DP driver. If you want to enable DP
54	  on RK3288 or RK3399 based SoC, you should select this option.
55
56config ROCKCHIP_CDN_DP
57	bool "Rockchip cdn DP"
58	depends on EXTCON=y || (EXTCON=m && DRM_ROCKCHIP=m)
59	select DRM_DISPLAY_HELPER
60	select DRM_BRIDGE_CONNECTOR
61	select DRM_DISPLAY_DP_HELPER
62	help
63	  This selects support for Rockchip SoC specific extensions
64	  for the cdn DP driver. If you want to enable Dp on
65	  RK3399 based SoC, you should select this
66	  option.
67
68config ROCKCHIP_DW_DP
69	bool "Rockchip specific extensions for Synopsys DW DP"
70	help
71	  This selects support for Rockchip SoC specific extensions
72	  to enable Synopsys DesignWare Cores based DisplayPort transmit
73	  controller support on Rockchip SoC, If you want to enable DP on
74	  rk3588 based SoC, you should select this option.
75
76config ROCKCHIP_DW_HDMI
77	bool "Rockchip specific extensions for Synopsys DW HDMI"
78	help
79	  This selects support for Rockchip SoC specific extensions
80	  for the Synopsys DesignWare HDMI driver. If you want to
81	  enable HDMI on RK3288 or RK3399 based SoC, you should select
82	  this option.
83
84config ROCKCHIP_DW_HDMI_QP
85	bool "Rockchip specific extensions for Synopsys DW HDMI QP"
86	select DRM_BRIDGE_CONNECTOR
87	help
88	  This selects support for Rockchip SoC specific extensions
89	  for the Synopsys DesignWare HDMI QP driver. If you want to
90	  enable HDMI on RK3588 based SoC, you should select this option.
91
92config ROCKCHIP_DW_MIPI_DSI
93	bool "Rockchip specific extensions for Synopsys DW MIPI DSI"
94	select GENERIC_PHY_MIPI_DPHY
95	help
96	  This selects support for Rockchip SoC specific extensions
97	  for the Synopsys DesignWare dsi driver. If you want to
98	  enable MIPI DSI on RK3288 or RK3399 based SoC, you should
99	  select this option.
100
101config ROCKCHIP_DW_MIPI_DSI2
102	bool "Rockchip specific extensions for Synopsys DW MIPI DSI2"
103	select GENERIC_PHY_MIPI_DPHY
104	help
105	  This selects support for Rockchip SoC specific extensions
106	  for the Synopsys DesignWare DSI2 driver. If you want to
107	  enable MIPI DSI on RK3576 or RK3588 based SoC, you should
108	  select this option.
109
110config ROCKCHIP_INNO_HDMI
111	bool "Rockchip specific extensions for Innosilicon HDMI"
112	select DRM_DISPLAY_HDMI_HELPER
113	select DRM_DISPLAY_HDMI_STATE_HELPER
114	select DRM_DISPLAY_HELPER
115	help
116	  This selects support for Rockchip SoC specific extensions
117	  for the Innosilicon HDMI driver. If you want to enable
118	  HDMI on RK3036 based SoC, you should select this option.
119
120config ROCKCHIP_LVDS
121	bool "Rockchip LVDS support"
122	depends on DRM_ROCKCHIP
123	depends on PINCTRL && OF
124	select DRM_DISPLAY_HELPER
125	select DRM_BRIDGE_CONNECTOR
126	help
127	  Choose this option to enable support for Rockchip LVDS controllers.
128	  Rockchip rk3288 SoC has LVDS TX Controller can be used, and it
129	  support LVDS, rgb, dual LVDS output mode. say Y to enable its
130	  driver.
131
132config ROCKCHIP_RGB
133	bool "Rockchip RGB support"
134	depends on DRM_ROCKCHIP
135	depends on PINCTRL
136	select DRM_DISPLAY_HELPER
137	select DRM_BRIDGE_CONNECTOR
138	help
139	  Choose this option to enable support for Rockchip RGB output.
140	  Some Rockchip CRTCs, like rv1108, can directly output parallel
141	  and serial RGB format to panel or connect to a conversion chip.
142	  say Y to enable its driver.
143
144config ROCKCHIP_RK3066_HDMI
145	bool "Rockchip specific extensions for RK3066 HDMI"
146	depends on DRM_ROCKCHIP
147	help
148	  This selects support for Rockchip SoC specific extensions
149	  for the RK3066 HDMI driver. If you want to enable
150	  HDMI on RK3066 based SoC, you should select this option.
151endif
152