linux-sh.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/3] R-Car Display Unit DRM driver
@ 2013-03-14 14:35 Laurent Pinchart
  2013-03-14 14:35 ` [PATCH v2 1/3] r8a7779: Add Display Unit clock support Laurent Pinchart
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Laurent Pinchart @ 2013-03-14 14:35 UTC (permalink / raw)
  To: dri-devel, linux-sh; +Cc: Simon Horman

Hello,

Here's the second version of the Renesas R-Car Display Unit (DU) DRM driver.

The DU features two superposition processors (modeled as CRTCs) and eight
planes that can be shared between the superposition processors.

The driver supports the superposition processors, all eight planes and all
hardware supported formats except 8-bit indexed color mode and 32-bit RGB666
mode (that would be [31:0] x:R:x:G:x:B:x 8:6:2:6:2:6:2 little endian, not
supported by DRM at the moment).

On the output side only sync master non-interlaced modes are currently
supported. Both the VGA and the LVDS outputs have been tested.

Platform data are subject to change with the common display framework. This is
why I haven't implemented DT bindings yet.

Changes since v1:

 - Use drm_encoder_cleanup() directly as .destroy handlers
 - Enable alpha blending support
 - Don't re-reserve hardware plane at each update
 - Fix planes allocation for multiplanar formats
 - Add DRM PRIME support
 - Fix race condition between page flip request and handler
 - Add configurable z-order support for planes
 - Support configurable color keying for planes
 - Update plane format after releasing hardware planes
 - Fix register access for global registers
 - Fix plane index wrap-around for multi-planar overlays

Please note that this version depends on the GEM CMA DRM PRIME patches I have
previously sent to the dri-devel mailing list.

I've included necessary arch/ modifications to allow easy testing. The r8a7779
clock patch should already be on its way to mainline, the Marzen board code
will be resubmitted separately through the ARM tree after the DU driver gets
pulled in the DRM tree.

Laurent Pinchart (2):
  drm: Renesas R-Car Display Unit DRM driver
  ARM: shmobile: marzen: Add Display Unit support

Phil Edworthy (1):
  r8a7779: Add Display Unit clock support

 arch/arm/configs/marzen_defconfig       |   2 +
 arch/arm/mach-shmobile/board-marzen.c   |  65 +++++
 arch/arm/mach-shmobile/clock-r8a7779.c  |   4 +-
 drivers/gpu/drm/Kconfig                 |   2 +
 drivers/gpu/drm/Makefile                |   1 +
 drivers/gpu/drm/rcar-du/Kconfig         |   9 +
 drivers/gpu/drm/rcar-du/Makefile        |   8 +
 drivers/gpu/drm/rcar-du/rcar_du_crtc.c  | 499 ++++++++++++++++++++++++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_crtc.h  |  48 +++
 drivers/gpu/drm/rcar-du/rcar_du_drv.c   | 270 +++++++++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_drv.h   |  59 ++++
 drivers/gpu/drm/rcar-du/rcar_du_kms.c   | 163 +++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_kms.h   |  33 +++
 drivers/gpu/drm/rcar-du/rcar_du_lvds.c  | 242 ++++++++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_lvds.h  |  25 ++
 drivers/gpu/drm/rcar-du/rcar_du_plane.c | 444 ++++++++++++++++++++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_plane.h |  61 ++++
 drivers/gpu/drm/rcar-du/rcar_du_regs.h  | 443 ++++++++++++++++++++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_vga.c   | 188 ++++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_vga.h   |  24 ++
 include/linux/platform_data/rcar-du.h   |  51 ++++
 21 files changed, 2640 insertions(+), 1 deletion(-)
 create mode 100644 drivers/gpu/drm/rcar-du/Kconfig
 create mode 100644 drivers/gpu/drm/rcar-du/Makefile
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_crtc.c
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_crtc.h
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_drv.c
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_drv.h
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_kms.c
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_kms.h
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_lvds.c
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_lvds.h
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_plane.c
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_plane.h
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_regs.h
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_vga.c
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_vga.h
 create mode 100644 include/linux/platform_data/rcar-du.h

-- 
Regards,

Laurent Pinchart


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2013-03-27 10:44 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-14 14:35 [PATCH v2 0/3] R-Car Display Unit DRM driver Laurent Pinchart
2013-03-14 14:35 ` [PATCH v2 1/3] r8a7779: Add Display Unit clock support Laurent Pinchart
2013-03-14 14:35 ` [PATCH v2 2/3] drm: Renesas R-Car Display Unit DRM driver Laurent Pinchart
2013-03-14 14:35 ` [PATCH v2 3/3] ARM: shmobile: marzen: Add Display Unit support Laurent Pinchart
2013-03-14 17:34   ` Sergei Shtylyov
2013-03-14 20:11     ` Laurent Pinchart
2013-03-14 22:11       ` Sergei Shtylyov
2013-03-15  1:36         ` Laurent Pinchart
2013-03-15 12:54           ` Sergei Shtylyov
2013-03-15 12:55   ` Sergei Shtylyov
2013-03-15 13:04     ` Laurent Pinchart
2013-03-27  4:01   ` Simon Horman
2013-03-27  9:49     ` Laurent Pinchart
2013-03-27 10:44       ` Simon Horman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).