162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ciconfig DRM_ROCKCHIP
362306a36Sopenharmony_ci	tristate "DRM Support for Rockchip"
462306a36Sopenharmony_ci	depends on DRM && ROCKCHIP_IOMMU
562306a36Sopenharmony_ci	select DRM_GEM_DMA_HELPER
662306a36Sopenharmony_ci	select DRM_KMS_HELPER
762306a36Sopenharmony_ci	select DRM_PANEL
862306a36Sopenharmony_ci	select VIDEOMODE_HELPERS
962306a36Sopenharmony_ci	select DRM_ANALOGIX_DP if ROCKCHIP_ANALOGIX_DP
1062306a36Sopenharmony_ci	select DRM_DW_HDMI if ROCKCHIP_DW_HDMI
1162306a36Sopenharmony_ci	select DRM_DW_MIPI_DSI if ROCKCHIP_DW_MIPI_DSI
1262306a36Sopenharmony_ci	select GENERIC_PHY if ROCKCHIP_DW_MIPI_DSI
1362306a36Sopenharmony_ci	select GENERIC_PHY_MIPI_DPHY if ROCKCHIP_DW_MIPI_DSI
1462306a36Sopenharmony_ci	select SND_SOC_HDMI_CODEC if ROCKCHIP_CDN_DP && SND_SOC
1562306a36Sopenharmony_ci	help
1662306a36Sopenharmony_ci	  Choose this option if you have a Rockchip soc chipset.
1762306a36Sopenharmony_ci	  This driver provides kernel mode setting and buffer
1862306a36Sopenharmony_ci	  management to userspace. This driver does not provide
1962306a36Sopenharmony_ci	  2D or 3D acceleration; acceleration is performed by other
2062306a36Sopenharmony_ci	  IP found on the SoC.
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ciif DRM_ROCKCHIP
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ciconfig ROCKCHIP_VOP
2562306a36Sopenharmony_ci	bool "Rockchip VOP driver"
2662306a36Sopenharmony_ci	default y
2762306a36Sopenharmony_ci	help
2862306a36Sopenharmony_ci	  This selects support for the VOP driver. You should enable it
2962306a36Sopenharmony_ci	  on older SoCs.
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ciconfig ROCKCHIP_VOP2
3262306a36Sopenharmony_ci	bool "Rockchip VOP2 driver"
3362306a36Sopenharmony_ci	help
3462306a36Sopenharmony_ci	  This selects support for the VOP2 driver. The VOP2 hardware is
3562306a36Sopenharmony_ci	  first found on the RK3568.
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ciconfig ROCKCHIP_ANALOGIX_DP
3862306a36Sopenharmony_ci	bool "Rockchip specific extensions for Analogix DP driver"
3962306a36Sopenharmony_ci	depends on ROCKCHIP_VOP
4062306a36Sopenharmony_ci	select DRM_DISPLAY_HELPER
4162306a36Sopenharmony_ci	select DRM_DISPLAY_DP_HELPER
4262306a36Sopenharmony_ci	help
4362306a36Sopenharmony_ci	  This selects support for Rockchip SoC specific extensions
4462306a36Sopenharmony_ci	  for the Analogix Core DP driver. If you want to enable DP
4562306a36Sopenharmony_ci	  on RK3288 or RK3399 based SoC, you should select this option.
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ciconfig ROCKCHIP_CDN_DP
4862306a36Sopenharmony_ci	bool "Rockchip cdn DP"
4962306a36Sopenharmony_ci	depends on EXTCON=y || (EXTCON=m && DRM_ROCKCHIP=m)
5062306a36Sopenharmony_ci	select DRM_DISPLAY_HELPER
5162306a36Sopenharmony_ci	select DRM_DISPLAY_DP_HELPER
5262306a36Sopenharmony_ci	help
5362306a36Sopenharmony_ci	  This selects support for Rockchip SoC specific extensions
5462306a36Sopenharmony_ci	  for the cdn DP driver. If you want to enable Dp on
5562306a36Sopenharmony_ci	  RK3399 based SoC, you should select this
5662306a36Sopenharmony_ci	  option.
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ciconfig ROCKCHIP_DW_HDMI
5962306a36Sopenharmony_ci	bool "Rockchip specific extensions for Synopsys DW HDMI"
6062306a36Sopenharmony_ci	help
6162306a36Sopenharmony_ci	  This selects support for Rockchip SoC specific extensions
6262306a36Sopenharmony_ci	  for the Synopsys DesignWare HDMI driver. If you want to
6362306a36Sopenharmony_ci	  enable HDMI on RK3288 or RK3399 based SoC, you should select
6462306a36Sopenharmony_ci	  this option.
6562306a36Sopenharmony_ci
6662306a36Sopenharmony_ciconfig ROCKCHIP_DW_MIPI_DSI
6762306a36Sopenharmony_ci	bool "Rockchip specific extensions for Synopsys DW MIPI DSI"
6862306a36Sopenharmony_ci	select GENERIC_PHY_MIPI_DPHY
6962306a36Sopenharmony_ci	help
7062306a36Sopenharmony_ci	  This selects support for Rockchip SoC specific extensions
7162306a36Sopenharmony_ci	  for the Synopsys DesignWare dsi driver. If you want to
7262306a36Sopenharmony_ci	  enable MIPI DSI on RK3288 or RK3399 based SoC, you should
7362306a36Sopenharmony_ci	  select this option.
7462306a36Sopenharmony_ci
7562306a36Sopenharmony_ciconfig ROCKCHIP_INNO_HDMI
7662306a36Sopenharmony_ci	bool "Rockchip specific extensions for Innosilicon HDMI"
7762306a36Sopenharmony_ci	help
7862306a36Sopenharmony_ci	  This selects support for Rockchip SoC specific extensions
7962306a36Sopenharmony_ci	  for the Innosilicon HDMI driver. If you want to enable
8062306a36Sopenharmony_ci	  HDMI on RK3036 based SoC, you should select this option.
8162306a36Sopenharmony_ci
8262306a36Sopenharmony_ciconfig ROCKCHIP_LVDS
8362306a36Sopenharmony_ci	bool "Rockchip LVDS support"
8462306a36Sopenharmony_ci	depends on DRM_ROCKCHIP
8562306a36Sopenharmony_ci	depends on PINCTRL && OF
8662306a36Sopenharmony_ci	help
8762306a36Sopenharmony_ci	  Choose this option to enable support for Rockchip LVDS controllers.
8862306a36Sopenharmony_ci	  Rockchip rk3288 SoC has LVDS TX Controller can be used, and it
8962306a36Sopenharmony_ci	  support LVDS, rgb, dual LVDS output mode. say Y to enable its
9062306a36Sopenharmony_ci	  driver.
9162306a36Sopenharmony_ci
9262306a36Sopenharmony_ciconfig ROCKCHIP_RGB
9362306a36Sopenharmony_ci	bool "Rockchip RGB support"
9462306a36Sopenharmony_ci	depends on DRM_ROCKCHIP
9562306a36Sopenharmony_ci	depends on PINCTRL
9662306a36Sopenharmony_ci	help
9762306a36Sopenharmony_ci	  Choose this option to enable support for Rockchip RGB output.
9862306a36Sopenharmony_ci	  Some Rockchip CRTCs, like rv1108, can directly output parallel
9962306a36Sopenharmony_ci	  and serial RGB format to panel or connect to a conversion chip.
10062306a36Sopenharmony_ci	  say Y to enable its driver.
10162306a36Sopenharmony_ci
10262306a36Sopenharmony_ciconfig ROCKCHIP_RK3066_HDMI
10362306a36Sopenharmony_ci	bool "Rockchip specific extensions for RK3066 HDMI"
10462306a36Sopenharmony_ci	depends on DRM_ROCKCHIP
10562306a36Sopenharmony_ci	help
10662306a36Sopenharmony_ci	  This selects support for Rockchip SoC specific extensions
10762306a36Sopenharmony_ci	  for the RK3066 HDMI driver. If you want to enable
10862306a36Sopenharmony_ci	  HDMI on RK3066 based SoC, you should select this option.
10962306a36Sopenharmony_ciendif
110