All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements
@ 2025-07-11 16:32 Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 1/8] drm: renesas: rz-du: Drop DU_MCR0_DPI_OE macro Biju Das
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

This patch series for enhancing RZ/G2L DU driver.
All the patches are cherry-picked from mainline.

Biju Das (6):
  drm: renesas: rz-du: Drop DU_MCR0_DPI_OE macro
  drm: renesas: rz-du: rzg2l_du_encoder: Fix max dot clock for DPI
  drm: renesas: rz-du: Add Kconfig dependency between RZG2L_DU and
    RZG2L_MIPI_DSI
  drm: renesas: rz-du: Drop bpp variable from struct
    rzg2l_du_format_info
  drm: renesas: Add zpos, alpha and blend properties to RZ/G2L DU
  drm: renesas: rz-du: rzg2l_mipi_dsi: Update the comment in
    rzg2l_mipi_dsi_start_video()

Kieran Bingham (1):
  drm: renesas: Extend RZ/G2L supported KMS formats

Laurent Pinchart (1):
  drm: renesas: rz-du: Support dmabuf import

 drivers/gpu/drm/renesas/rz-du/Kconfig         |  15 ++-
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c |   8 +-
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_drv.c  |   1 +
 .../gpu/drm/renesas/rz-du/rzg2l_du_encoder.c  |  18 +++
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c  | 120 +++++++++++++++++-
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.h  |   1 -
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c  |   9 ++
 .../gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c    |   2 +-
 8 files changed, 153 insertions(+), 21 deletions(-)

-- 
2.43.0



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

* [PATCH 6.1.y-cip 1/8] drm: renesas: rz-du: Drop DU_MCR0_DPI_OE macro
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
@ 2025-07-11 16:32 ` Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 2/8] drm: renesas: rz-du: rzg2l_du_encoder: Fix max dot clock for DPI Biju Das
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

commit e22c857aed59ed3f5f3e144039ef095521f15179 upstream.

The DPI_OE bit is removed from the latest RZ/G2UL and RZ/G2L hardware
manual. So, drop this macro.

Fixes: b330f1480172 ("drm: renesas: rz-du: Add RZ/G2UL DU Support")
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241022082433.32513-2-biju.das.jz@bp.renesas.com
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c
index c4c1474d487e..6e7aac6219be 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c
@@ -28,7 +28,6 @@
 #include "rzg2l_du_vsp.h"
 
 #define DU_MCR0			0x00
-#define DU_MCR0_DPI_OE		BIT(0)
 #define DU_MCR0_DI_EN		BIT(8)
 
 #define DU_DITR0		0x10
@@ -217,14 +216,9 @@ static void rzg2l_du_crtc_put(struct rzg2l_du_crtc *rcrtc)
 
 static void rzg2l_du_start_stop(struct rzg2l_du_crtc *rcrtc, bool start)
 {
-	struct rzg2l_du_crtc_state *rstate = to_rzg2l_crtc_state(rcrtc->crtc.state);
 	struct rzg2l_du_device *rcdu = rcrtc->dev;
-	u32 val = DU_MCR0_DI_EN;
 
-	if (rstate->outputs & BIT(RZG2L_DU_OUTPUT_DPAD0))
-		val |= DU_MCR0_DPI_OE;
-
-	writel(start ? val : 0, rcdu->mmio + DU_MCR0);
+	writel(start ? DU_MCR0_DI_EN : 0, rcdu->mmio + DU_MCR0);
 }
 
 static void rzg2l_du_crtc_start(struct rzg2l_du_crtc *rcrtc)
-- 
2.43.0



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

* [PATCH 6.1.y-cip 2/8] drm: renesas: rz-du: rzg2l_du_encoder: Fix max dot clock for DPI
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 1/8] drm: renesas: rz-du: Drop DU_MCR0_DPI_OE macro Biju Das
@ 2025-07-11 16:32 ` Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 3/8] drm: renesas: rz-du: Add Kconfig dependency between RZG2L_DU and RZG2L_MIPI_DSI Biju Das
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

commit 68573a561362cc11d4dbfdcf97127fbf0e118896 upstream.

As per the RZ/G2UL hardware manual Table 33.4 Clock List, the maximum
dot clock for the DPI interface is 83.5 MHz. Add mode_valid callback
to reject modes greater than 83.5 MHz.

Suggested-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241022082433.32513-3-biju.das.jz@bp.renesas.com
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
 .../gpu/drm/renesas/rz-du/rzg2l_du_encoder.c   | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_encoder.c b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_encoder.c
index 339cbaaea0b5..564ab4cb3d37 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_encoder.c
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_encoder.c
@@ -10,6 +10,7 @@
 #include <linux/export.h>
 #include <linux/of.h>
 
+#include <drm/drm_atomic_helper.h>
 #include <drm/drm_bridge.h>
 #include <drm/drm_bridge_connector.h>
 #include <drm/drm_panel.h>
@@ -24,6 +25,22 @@
 static const struct drm_encoder_funcs rzg2l_du_encoder_funcs = {
 };
 
+static enum drm_mode_status
+rzg2l_du_encoder_mode_valid(struct drm_encoder *encoder,
+			    const struct drm_display_mode *mode)
+{
+	struct rzg2l_du_encoder *renc = to_rzg2l_encoder(encoder);
+
+	if (renc->output == RZG2L_DU_OUTPUT_DPAD0 && mode->clock > 83500)
+		return MODE_CLOCK_HIGH;
+
+	return MODE_OK;
+}
+
+static const struct drm_encoder_helper_funcs rzg2l_du_encoder_helper_funcs = {
+	.mode_valid = rzg2l_du_encoder_mode_valid,
+};
+
 int rzg2l_du_encoder_init(struct rzg2l_du_device  *rcdu,
 			  enum rzg2l_du_output output,
 			  struct device_node *enc_node)
@@ -48,6 +65,7 @@ int rzg2l_du_encoder_init(struct rzg2l_du_device  *rcdu,
 		return PTR_ERR(renc);
 
 	renc->output = output;
+	drm_encoder_helper_add(&renc->base, &rzg2l_du_encoder_helper_funcs);
 
 	/* Attach the bridge to the encoder. */
 	ret = drm_bridge_attach(&renc->base, bridge, NULL,
-- 
2.43.0



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

* [PATCH 6.1.y-cip 3/8] drm: renesas: rz-du: Add Kconfig dependency between RZG2L_DU and RZG2L_MIPI_DSI
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 1/8] drm: renesas: rz-du: Drop DU_MCR0_DPI_OE macro Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 2/8] drm: renesas: rz-du: rzg2l_du_encoder: Fix max dot clock for DPI Biju Das
@ 2025-07-11 16:32 ` Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 4/8] drm: renesas: rz-du: Support dmabuf import Biju Das
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

commit 7e6cb7290b4a92a6af096b137b84bf285801a5d6 upstream.

Add Kconfig dependency between RZG2L_DU and RZG2L_MIPI_DSI, so that
DSI module has functional dependency on DU. It is similar way that
the R-Car MIPI DSI encoder is handled.

While at it drop ARCH_RENESAS dependency as DRM_RZG2L_DU depend on
ARCH_RZG2L.

Suggested-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240827163727.108405-1-biju.das.jz@bp.renesas.com
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
 drivers/gpu/drm/renesas/rz-du/Kconfig | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/renesas/rz-du/Kconfig b/drivers/gpu/drm/renesas/rz-du/Kconfig
index 8ec14271ebba..a9488f873436 100644
--- a/drivers/gpu/drm/renesas/rz-du/Kconfig
+++ b/drivers/gpu/drm/renesas/rz-du/Kconfig
@@ -11,10 +11,15 @@ config DRM_RZG2L_DU
 	  Choose this option if you have an RZ/G2L alike chipset.
 	  If M is selected the module will be called rzg2l-du-drm.
 
-config DRM_RZG2L_MIPI_DSI
-	tristate "RZ/G2L MIPI DSI Encoder Support"
-	depends on DRM && DRM_BRIDGE && OF
-	depends on ARCH_RENESAS || COMPILE_TEST
-	select DRM_MIPI_DSI
+config DRM_RZG2L_USE_MIPI_DSI
+	bool "RZ/G2L MIPI DSI Encoder Support"
+	depends on DRM_BRIDGE && OF
+	depends on DRM_RZG2L_DU || COMPILE_TEST
+	default DRM_RZG2L_DU
 	help
 	  Enable support for the RZ/G2L Display Unit embedded MIPI DSI encoders.
+
+config DRM_RZG2L_MIPI_DSI
+	def_tristate DRM_RZG2L_DU
+	depends on DRM_RZG2L_USE_MIPI_DSI
+	select DRM_MIPI_DSI
-- 
2.43.0



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

* [PATCH 6.1.y-cip 4/8] drm: renesas: rz-du: Support dmabuf import
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
                   ` (2 preceding siblings ...)
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 3/8] drm: renesas: rz-du: Add Kconfig dependency between RZG2L_DU and RZG2L_MIPI_DSI Biju Das
@ 2025-07-11 16:32 ` Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 5/8] drm: renesas: rz-du: Drop bpp variable from struct rzg2l_du_format_info Biju Das
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>

commit 66c302563985756f8154c4783b7a31e7137eb0fa upstream.

The rz-du driver uses GEM DMA helpers, but does not implement the
drm_driver .gem_prime_import_sg_table operation. This  prevents
importing dmabufs. Fix it by implementing the missing operation using
the DRM_GEM_DMA_DRIVER_OPS_WITH_DUMB_CREATE() helper macro.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Tested-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> # RZ/V2H + DSI
Tested-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250321104615.31809-1-laurent.pinchart+renesas@ideasonboard.com
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_drv.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_drv.c b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_drv.c
index 6312effe8719..0259e3f280ad 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_drv.c
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_drv.c
@@ -82,6 +82,7 @@ static const struct drm_driver rzg2l_du_driver = {
 	.prime_handle_to_fd	= drm_gem_prime_handle_to_fd,
 	.prime_fd_to_handle	= drm_gem_prime_fd_to_handle,
 	.gem_prime_mmap		= drm_gem_prime_mmap,
+	DRM_GEM_DMA_DRIVER_OPS_WITH_DUMB_CREATE(rzg2l_du_dumb_create),
 	.fops			= &rzg2l_du_fops,
 	.name			= "rzg2l-du",
 	.desc			= "Renesas RZ/G2L Display Unit",
-- 
2.43.0



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

* [PATCH 6.1.y-cip 5/8] drm: renesas: rz-du: Drop bpp variable from struct rzg2l_du_format_info
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
                   ` (3 preceding siblings ...)
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 4/8] drm: renesas: rz-du: Support dmabuf import Biju Das
@ 2025-07-11 16:32 ` Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 6/8] drm: renesas: Extend RZ/G2L supported KMS formats Biju Das
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

commit 2f31808bc75072a819c7dbf28bf273d2940f360b upstream.

Drop the unused variable bpp from struct rzg2l_du_format_info.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Link: https://lore.kernel.org/r/20250330102357.56010-2-biju.das.jz@bp.renesas.com
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c | 3 ---
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.h | 1 -
 2 files changed, 4 deletions(-)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
index b99217b4e05d..a875023cbf13 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
@@ -38,19 +38,16 @@ static const struct rzg2l_du_format_info rzg2l_du_format_infos[] = {
 	{
 		.fourcc = DRM_FORMAT_XRGB8888,
 		.v4l2 = V4L2_PIX_FMT_XBGR32,
-		.bpp = 32,
 		.planes = 1,
 		.hsub = 1,
 	}, {
 		.fourcc = DRM_FORMAT_ARGB8888,
 		.v4l2 = V4L2_PIX_FMT_ABGR32,
-		.bpp = 32,
 		.planes = 1,
 		.hsub = 1,
 	}, {
 		.fourcc = DRM_FORMAT_RGB888,
 		.v4l2 = V4L2_PIX_FMT_BGR24,
-		.bpp = 24,
 		.planes = 1,
 		.hsub = 1,
 	}
diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.h b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.h
index 876e97cfbf45..e2c599f115c6 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.h
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.h
@@ -23,7 +23,6 @@ struct sg_table;
 struct rzg2l_du_format_info {
 	u32 fourcc;
 	u32 v4l2;
-	unsigned int bpp;
 	unsigned int planes;
 	unsigned int hsub;
 };
-- 
2.43.0



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

* [PATCH 6.1.y-cip 6/8] drm: renesas: Extend RZ/G2L supported KMS formats
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
                   ` (4 preceding siblings ...)
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 5/8] drm: renesas: rz-du: Drop bpp variable from struct rzg2l_du_format_info Biju Das
@ 2025-07-11 16:32 ` Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 7/8] drm: renesas: Add zpos, alpha and blend properties to RZ/G2L DU Biju Das
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

From: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>

commit bc3faba1f96983f0aa9a6b2e800457e7e3b9a051 upstream.

The RZ/G2L driver utilises the VSPD to read data from input sources.

The rzg2l_du_kms component lists a restricted subset of the capabilities
of the VSPD which prevents additional formats from being used for
display planes.

The supported display plane formats are mapped in rzg2l_du_vsp_formats[].

Extend the rzg2l_du_format_infos[] table with the corresponding mappings
between the supported DRM formats and the formats exposed by the VSP in
rzg2l_du_vsp_formats, maintaining the same ordering in both tables.

The RPF module on VSPD supports various format conversion and send the
image data to BRS(Blend ROP Sub Unit) for further processing.

Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Tested-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tested-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Link: https://lore.kernel.org/r/20250330102357.56010-3-biju.das.jz@bp.renesas.com
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c | 117 ++++++++++++++++++-
 1 file changed, 113 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
index a875023cbf13..2174118df792 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
@@ -36,13 +36,37 @@
 
 static const struct rzg2l_du_format_info rzg2l_du_format_infos[] = {
 	{
-		.fourcc = DRM_FORMAT_XRGB8888,
-		.v4l2 = V4L2_PIX_FMT_XBGR32,
+		.fourcc = DRM_FORMAT_RGB332,
+		.v4l2 = V4L2_PIX_FMT_RGB332,
 		.planes = 1,
 		.hsub = 1,
 	}, {
-		.fourcc = DRM_FORMAT_ARGB8888,
-		.v4l2 = V4L2_PIX_FMT_ABGR32,
+		.fourcc = DRM_FORMAT_ARGB4444,
+		.v4l2 = V4L2_PIX_FMT_ARGB444,
+		.planes = 1,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_XRGB4444,
+		.v4l2 = V4L2_PIX_FMT_XRGB444,
+		.planes = 1,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_ARGB1555,
+		.v4l2 = V4L2_PIX_FMT_ARGB555,
+		.planes = 1,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_XRGB1555,
+		.v4l2 = V4L2_PIX_FMT_XRGB555,
+		.planes = 1,
+	}, {
+		.fourcc = DRM_FORMAT_RGB565,
+		.v4l2 = V4L2_PIX_FMT_RGB565,
+		.planes = 1,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_BGR888,
+		.v4l2 = V4L2_PIX_FMT_RGB24,
 		.planes = 1,
 		.hsub = 1,
 	}, {
@@ -50,6 +74,91 @@ static const struct rzg2l_du_format_info rzg2l_du_format_infos[] = {
 		.v4l2 = V4L2_PIX_FMT_BGR24,
 		.planes = 1,
 		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_BGRA8888,
+		.v4l2 = V4L2_PIX_FMT_ARGB32,
+		.planes = 1,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_BGRX8888,
+		.v4l2 = V4L2_PIX_FMT_XRGB32,
+		.planes = 1,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_ARGB8888,
+		.v4l2 = V4L2_PIX_FMT_ABGR32,
+		.planes = 1,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_XRGB8888,
+		.v4l2 = V4L2_PIX_FMT_XBGR32,
+		.planes = 1,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_UYVY,
+		.v4l2 = V4L2_PIX_FMT_UYVY,
+		.planes = 1,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_YUYV,
+		.v4l2 = V4L2_PIX_FMT_YUYV,
+		.planes = 1,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_YVYU,
+		.v4l2 = V4L2_PIX_FMT_YVYU,
+		.planes = 1,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_NV12,
+		.v4l2 = V4L2_PIX_FMT_NV12M,
+		.planes = 2,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_NV21,
+		.v4l2 = V4L2_PIX_FMT_NV21M,
+		.planes = 2,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_NV16,
+		.v4l2 = V4L2_PIX_FMT_NV16M,
+		.planes = 2,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_NV61,
+		.v4l2 = V4L2_PIX_FMT_NV61M,
+		.planes = 2,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_YUV420,
+		.v4l2 = V4L2_PIX_FMT_YUV420M,
+		.planes = 3,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_YVU420,
+		.v4l2 = V4L2_PIX_FMT_YVU420M,
+		.planes = 3,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_YUV422,
+		.v4l2 = V4L2_PIX_FMT_YUV422M,
+		.planes = 3,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_YVU422,
+		.v4l2 = V4L2_PIX_FMT_YVU422M,
+		.planes = 3,
+		.hsub = 2,
+	}, {
+		.fourcc = DRM_FORMAT_YUV444,
+		.v4l2 = V4L2_PIX_FMT_YUV444M,
+		.planes = 3,
+		.hsub = 1,
+	}, {
+		.fourcc = DRM_FORMAT_YVU444,
+		.v4l2 = V4L2_PIX_FMT_YVU444M,
+		.planes = 3,
+		.hsub = 1,
 	}
 };
 
-- 
2.43.0



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

* [PATCH 6.1.y-cip 7/8] drm: renesas: Add zpos, alpha and blend properties to RZ/G2L DU
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
                   ` (5 preceding siblings ...)
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 6/8] drm: renesas: Extend RZ/G2L supported KMS formats Biju Das
@ 2025-07-11 16:32 ` Biju Das
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 8/8] drm: renesas: rz-du: rzg2l_mipi_dsi: Update the comment in rzg2l_mipi_dsi_start_video() Biju Das
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

commit e7bb7d44c3b97aea1f0e354c6499900154ac67f2 upstream.

Add support for zpos, alpha and blend properties to RZ/G2L DU
driver as the IP supports all these properties.

It is tested by the below modetest commands:

modetest -M rzg2l-du -s 44@42:1920x1080@AR24 -d -P \
37@42:512x300+200+200@XR15

modetest -M rzg2l-du -w {32,37}:alpha:{0,65535}
modetest -M rzg2l-du -w {32,37}:zpos:{0,1}

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Tested-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tested-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> #On RZ/V2H
Link: https://lore.kernel.org/r/20250404133047.172080-1-biju.das.jz@bp.renesas.com
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c
index 0ae6331d6430..5f8e1a713f02 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c
@@ -343,6 +343,15 @@ int rzg2l_du_vsp_init(struct rzg2l_du_vsp *vsp, struct device_node *np,
 
 		drm_plane_helper_add(&plane->plane,
 				     &rzg2l_du_vsp_plane_helper_funcs);
+
+		drm_plane_create_alpha_property(&plane->plane);
+		drm_plane_create_zpos_property(&plane->plane, i, 0,
+					       num_planes - 1);
+
+		drm_plane_create_blend_mode_property(&plane->plane,
+					BIT(DRM_MODE_BLEND_PIXEL_NONE) |
+					BIT(DRM_MODE_BLEND_PREMULTI) |
+					BIT(DRM_MODE_BLEND_COVERAGE));
 	}
 
 	return 0;
-- 
2.43.0



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

* [PATCH 6.1.y-cip 8/8] drm: renesas: rz-du: rzg2l_mipi_dsi: Update the comment in rzg2l_mipi_dsi_start_video()
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
                   ` (6 preceding siblings ...)
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 7/8] drm: renesas: Add zpos, alpha and blend properties to RZ/G2L DU Biju Das
@ 2025-07-11 16:32 ` Biju Das
  2025-07-14 10:25 ` [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Pavel Machek
  2025-07-15  1:16 ` nobuhiro1.iwamatsu
  9 siblings, 0 replies; 11+ messages in thread
From: Biju Das @ 2025-07-11 16:32 UTC (permalink / raw)
  To: Pavel Machek; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, Biju Das, cip-dev

commit b1d6a89d7b75435da9c541c5f9d4df8268291c6e upstream.

Add missing space in the comment in rzg2l_mipi_dsi_start_video().

Reported-by: Pavel Machek <pavel@denx.de>
Closes: https://lore.kernel.org/all/ZPg7STHDn4LbLy7f@duo.ucw.cz/
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Link: https://lore.kernel.org/r/20250412061258.5447-1-biju.das.jz@bp.renesas.com
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
 drivers/gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c b/drivers/gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c
index aa95b85a2964..cd0d85fbfb24 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c
@@ -480,7 +480,7 @@ static int rzg2l_mipi_dsi_start_video(struct rzg2l_mipi_dsi *dsi)
 	u32 status;
 	int ret;
 
-	/* Configuration for Blanking sequence and start video input*/
+	/* Configuration for Blanking sequence and start video input */
 	vich1set0r = VICH1SET0R_HFPNOLP | VICH1SET0R_HBPNOLP |
 		     VICH1SET0R_HSANOLP | VICH1SET0R_VSTART;
 	rzg2l_mipi_dsi_link_write(dsi, VICH1SET0R, vich1set0r);
-- 
2.43.0



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

* Re: [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
                   ` (7 preceding siblings ...)
  2025-07-11 16:32 ` [PATCH 6.1.y-cip 8/8] drm: renesas: rz-du: rzg2l_mipi_dsi: Update the comment in rzg2l_mipi_dsi_start_video() Biju Das
@ 2025-07-14 10:25 ` Pavel Machek
  2025-07-15  1:16 ` nobuhiro1.iwamatsu
  9 siblings, 0 replies; 11+ messages in thread
From: Pavel Machek @ 2025-07-14 10:25 UTC (permalink / raw)
  To: Biju Das; +Cc: nobuhiro1.iwamatsu, Lad Prabhakar, cip-dev

[-- Attachment #1: Type: text/plain, Size: 296 bytes --]

Hi!

> This patch series for enhancing RZ/G2L DU driver.
> All the patches are cherry-picked from mainline.

Thank you, applied.

Best regards,
								Pavel
-- 
In cooperation with DENX Software Engineering GmbH, HRB 165235 Munich,
Office: Kirchenstr.5, D-82194 Groebenzell, Germany

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

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

* RE: [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements
  2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
                   ` (8 preceding siblings ...)
  2025-07-14 10:25 ` [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Pavel Machek
@ 2025-07-15  1:16 ` nobuhiro1.iwamatsu
  9 siblings, 0 replies; 11+ messages in thread
From: nobuhiro1.iwamatsu @ 2025-07-15  1:16 UTC (permalink / raw)
  To: biju.das.jz, pavel; +Cc: prabhakar.mahadev-lad.rj, cip-dev

Hi all,

> -----Original Message-----
> From: Biju Das <biju.das.jz@bp.renesas.com>
> Sent: Saturday, July 12, 2025 1:32 AM
> To: Pavel Machek <pavel@denx.de>
> Cc: iwamatsu nobuhiro(岩松 信洋 □DITC○CPT)
> <nobuhiro1.iwamatsu@toshiba.co.jp>; Lad Prabhakar
> <prabhakar.mahadev-lad.rj@bp.renesas.com>; Biju Das
> <biju.das.jz@bp.renesas.com>; cip-dev@lists.cip-project.org
> Subject: [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements
> 
> This patch series for enhancing RZ/G2L DU driver.
> All the patches are cherry-picked from mainline.
> 
> Biju Das (6):
>   drm: renesas: rz-du: Drop DU_MCR0_DPI_OE macro
>   drm: renesas: rz-du: rzg2l_du_encoder: Fix max dot clock for DPI
>   drm: renesas: rz-du: Add Kconfig dependency between RZG2L_DU and
>     RZG2L_MIPI_DSI
>   drm: renesas: rz-du: Drop bpp variable from struct
>     rzg2l_du_format_info
>   drm: renesas: Add zpos, alpha and blend properties to RZ/G2L DU
>   drm: renesas: rz-du: rzg2l_mipi_dsi: Update the comment in
>     rzg2l_mipi_dsi_start_video()
> 
> Kieran Bingham (1):
>   drm: renesas: Extend RZ/G2L supported KMS formats
> 
> Laurent Pinchart (1):
>   drm: renesas: rz-du: Support dmabuf import
> 
>  drivers/gpu/drm/renesas/rz-du/Kconfig         |  15 ++-
>  drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c |   8 +-
>  drivers/gpu/drm/renesas/rz-du/rzg2l_du_drv.c  |   1 +
>  .../gpu/drm/renesas/rz-du/rzg2l_du_encoder.c  |  18 +++
> drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c  | 120
> +++++++++++++++++-
>  drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.h  |   1 -
>  drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c  |   9 ++
>  .../gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c    |   2 +-
>  8 files changed, 153 insertions(+), 21 deletions(-)
> 
This patch series has already been applied, but since
I have reviewed it, I am replying for the record.

Reviewed-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>

Best regards,
  Nobuhiro



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

end of thread, other threads:[~2025-07-15  1:16 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-11 16:32 [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Biju Das
2025-07-11 16:32 ` [PATCH 6.1.y-cip 1/8] drm: renesas: rz-du: Drop DU_MCR0_DPI_OE macro Biju Das
2025-07-11 16:32 ` [PATCH 6.1.y-cip 2/8] drm: renesas: rz-du: rzg2l_du_encoder: Fix max dot clock for DPI Biju Das
2025-07-11 16:32 ` [PATCH 6.1.y-cip 3/8] drm: renesas: rz-du: Add Kconfig dependency between RZG2L_DU and RZG2L_MIPI_DSI Biju Das
2025-07-11 16:32 ` [PATCH 6.1.y-cip 4/8] drm: renesas: rz-du: Support dmabuf import Biju Das
2025-07-11 16:32 ` [PATCH 6.1.y-cip 5/8] drm: renesas: rz-du: Drop bpp variable from struct rzg2l_du_format_info Biju Das
2025-07-11 16:32 ` [PATCH 6.1.y-cip 6/8] drm: renesas: Extend RZ/G2L supported KMS formats Biju Das
2025-07-11 16:32 ` [PATCH 6.1.y-cip 7/8] drm: renesas: Add zpos, alpha and blend properties to RZ/G2L DU Biju Das
2025-07-11 16:32 ` [PATCH 6.1.y-cip 8/8] drm: renesas: rz-du: rzg2l_mipi_dsi: Update the comment in rzg2l_mipi_dsi_start_video() Biju Das
2025-07-14 10:25 ` [PATCH 6.1.y-cip 0/8] RZ/G2L DU enhancements Pavel Machek
2025-07-15  1:16 ` nobuhiro1.iwamatsu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.