[PATCH 00/22] R-Car DU: Add Gen3 support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

This patch series adds support for the Display Unit found in the R-Car Gen3
SoC series.

The third generation differs significantly from the previous ones in that the
DU has lost its ability to source data from memory. It must instead use an
external hardware composer named VSP to read planes from memory and blend
them.

The VSP has a V4L2 driver in mainline that can be used in conjunction with the
DU through the live sources API (submitted previously as an RFC). However, as
VSP usage is mandatory in Gen3 and as no native DU planes are available, we
have decided that forcing userspace to use both KMS and V4L2 to display any
content wouldn't be very friendly. Instead the VSP driver has been extended to
make the device directly controllable by the DU driver ([1]) and this patch
series builds on top of it.

[1] http://www.spinics.net/lists/linux-media/msg93575.html

Koji Matsuoka (4):
  drm: rcar-du: Fix compile warning on 64-bit platforms
  drm: rcar-du: Enable compilation on ARM64
  drm: rcar-du: Support up to 4 CRTCs
  drm: rcar-du: lvds: Add R-Car Gen3 support

Laurent Pinchart (18):
  drm: rcar-du: Don't update planes on disabled CRTCs
  drm: rcar-du: Add support for the R8A7793 DU
  drm: rcar-du: Add support for the R8A7794 DU
  drm: rcar-du: Compute plane DDCR4 register value directly
  drm: rcar-du: Refactor plane setup
  drm: rcar-du: Add VSP1 support to the planes allocator
  drm: rcar-du: Add VSP1 compositor support
  drm: rcar-du: Restart the DU group when a plane source changes
  drm: rcar-du: Move plane allocator to rcar_du_plane.c
  drm: rcar-du: Expose the VSP1 compositor through KMS planes
  drm: rcar-du: Use the VSP atomic update API
  drm: rcar-du: Drop LVDS double dependency on OF
  drm: rcar-du: Output the DISP signal on the DISP pin
  drm: rcar-du: Output the DISP signal on the ODDF pin
  drm: rcar-du: Add R8A7795 device support
  drm: rcar-du: lvds: Avoid duplication of clock clamp code
  drm: rcar-du: lvds: Fix PLL frequency-related configuration
  drm: rcar-du: lvds: Rename PLLEN bit to PLLON

 .../devicetree/bindings/video/renesas,du.txt       |  22 +-
 drivers/gpu/drm/rcar-du/Kconfig                    |  15 +-
 drivers/gpu/drm/rcar-du/Makefile                   |   2 +
 drivers/gpu/drm/rcar-du/rcar_du_crtc.c             |  63 ++-
 drivers/gpu/drm/rcar-du/rcar_du_crtc.h             |   2 +
 drivers/gpu/drm/rcar-du/rcar_du_drv.c              |  58 ++-
 drivers/gpu/drm/rcar-du/rcar_du_drv.h              |  12 +-
 drivers/gpu/drm/rcar-du/rcar_du_encoder.c          |   6 +-
 drivers/gpu/drm/rcar-du/rcar_du_group.c            |  73 +++-
 drivers/gpu/drm/rcar-du/rcar_du_group.h            |   4 +
 drivers/gpu/drm/rcar-du/rcar_du_hdmienc.c          |   7 +-
 drivers/gpu/drm/rcar-du/rcar_du_kms.c              | 273 ++----------
 drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.c          | 142 +++++--
 drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.h          |   6 +
 drivers/gpu/drm/rcar-du/rcar_du_plane.c            | 465 ++++++++++++++++++---
 drivers/gpu/drm/rcar-du/rcar_du_plane.h            |  21 +-
 drivers/gpu/drm/rcar-du/rcar_du_regs.h             |  21 +-
 drivers/gpu/drm/rcar-du/rcar_du_vsp.c              | 373 +++++++++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_vsp.h              |  76 ++++
 drivers/gpu/drm/rcar-du/rcar_lvds_regs.h           |  26 +-
 20 files changed, 1263 insertions(+), 404 deletions(-)
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_vsp.c
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_vsp.h

-- 
Regards,

Laurent Pinchart

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux