[PATCH v2 00/15] video: Add Rockchip VOP2 support

Sascha Hauer s.hauer at pengutronix.de
Fri Sep 27 03:37:33 PDT 2024


This series adds support for the VOP2 controller found on the newer
Rockchip SoCs like RK3566, RK3568 and RK3588. It has been tested on a
RK3568 based ROCK3a board using HDMI and a RK3568 based custom board
using HDMI and RGB output.

The driver has support for a base plane and one or more overlay planes
which makes it possible to have a background image and a transparent
framebuffer console on an overlay.

Before adding the driver we have to add some headers from the Linux DRM
subsystem for easier inclusion of this DRM based driver.

Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
Changes in v2:
- remove unused file rockchip_vop_reg.c
- make vpl deep probe aware
- register overlay framebuffers with base framebuffer name + suffix
- use dev_err_probe where appropriate
- do not register unused windows on RK3566
- use device_get_match_data() instead of dev_get_drvdata()
- register vop2 with device_platform_driver() instead of late_platform_driver()
- remove debugging leftover
- select DRIVER_VIDEO_EDID and DRIVER_VIDEO_DW_HDMI rather than depending on it
- Link to v1: https://lore.barebox.org/20240926-vop2-v1-0-fe0581f2020b@pengutronix.de

---
Sascha Hauer (15):
      clk: rockchip: rk3568: Fix HDMI clocks
      video: add videomode helpers
      media-bus-format: update from kernel
      regmap: add regfield support
      video: add include/video/drm/drm_connector.h
      fb: add fb_rect functions
      video: Add Sitronix st7789v panel driver
      video: add dw-hdmi driver
      video: i.MX ipuv3: switch to upstream hdmi driver
      fb: Accept overlay framebuffers without modes
      fb: print more information on devinfo
      fbconsole: Adjust fbconsole names for overlays
      ARM: ARM64: implement dma_alloc_writecombine()
      vpl: make vpl deep probe aware
      video: Rockchip: Add VOP2 driver

 arch/arm/cpu/mmu_64.c                              |   11 +-
 arch/arm/cpu/mmu_64.h                              |   15 +-
 drivers/base/regmap/internal.h                     |   11 +
 drivers/base/regmap/regmap.c                       |  131 ++
 drivers/clk/rockchip/clk-rk3568.c                  |    8 +-
 drivers/video/Kconfig                              |   18 +
 drivers/video/Makefile                             |    5 +-
 drivers/video/dw-hdmi.c                            | 2286 ++++++++++++++++++++
 drivers/video/{imx-ipu-v3/imx-hdmi.h => dw-hdmi.h} |  245 ++-
 drivers/video/fb.c                                 |   29 +-
 drivers/video/fbconsole.c                          |   22 +-
 drivers/video/imx-ipu-v3/Kconfig                   |    3 +-
 drivers/video/imx-ipu-v3/Makefile                  |    2 +-
 drivers/video/imx-ipu-v3/dw_hdmi-imx.c             |  223 ++
 drivers/video/imx-ipu-v3/imx-hdmi.c                | 1360 ------------
 drivers/video/mode-helpers.c                       |  174 ++
 drivers/video/panel-sitronix-st7789v.c             |  652 ++++++
 drivers/video/rockchip/Kconfig                     |   18 +
 drivers/video/rockchip/Makefile                    |    2 +
 drivers/video/rockchip/dw_hdmi-rockchip.c          |  365 ++++
 drivers/video/rockchip/rockchip_drm_drv.h          |   66 +
 drivers/video/rockchip/rockchip_drm_vop.h          |  424 ++++
 drivers/video/rockchip/rockchip_drm_vop2.c         | 2041 +++++++++++++++++
 drivers/video/rockchip/rockchip_drm_vop2.h         |  541 +++++
 drivers/video/rockchip/rockchip_vop2_reg.c         |  280 +++
 drivers/video/vpl.c                                |    2 +
 include/fb.h                                       |   25 +
 include/linux/hdmi.h                               |  445 ++++
 include/linux/regmap.h                             |   39 +
 include/uapi/drm/drm_mode.h                        |   93 +
 include/video/drm/drm_connector.h                  |  502 +++++
 include/video/drm/drm_modes.h                      |  409 ++++
 include/video/dw_hdmi.h                            |  203 ++
 include/video/media-bus-format.h                   |   55 +-
 include/video/videomode.h                          |   40 +
 include/video/vpl.h                                |    1 +
 36 files changed, 9305 insertions(+), 1441 deletions(-)
---
base-commit: 46cb3f1ac62430d3fa662a4055c3a1c289ec3c86
change-id: 20240926-vop2-7b49f1b4c575

Best regards,
-- 
Sascha Hauer <s.hauer at pengutronix.de>




More information about the barebox mailing list