From 9c5d91f6b938c23065ddc21c8654c5e222c35687 Mon Sep 17 00:00:00 2001
From: Jan Kehren <jan.kehren@emteria.com>
Date: Fri, 16 Aug 2024 13:47:50 +0000
Subject: [PATCH 1222/1350] drm: rp1: rp1-dsi: Add DRM_FORMAT_ARGB8888 and
 DRM_FORMAT_ABGR8888

Android requires this.
As the underlying hardware doesn't support alpha blending,
we ignore the alpha value.

Signed-off-by: Jan Kehren <jan.kehren@emteria.com>
---
 drivers/gpu/drm/rp1/rp1-dsi/rp1_dsi.c     |  2 ++
 drivers/gpu/drm/rp1/rp1-dsi/rp1_dsi_dma.c | 12 ++++++++++++
 2 files changed, 14 insertions(+)

--- a/drivers/gpu/drm/rp1/rp1-dsi/rp1_dsi.c
+++ b/drivers/gpu/drm/rp1/rp1-dsi/rp1_dsi.c
@@ -229,6 +229,8 @@ static const struct drm_mode_config_func
 static const u32 rp1dsi_formats[] = {
 	DRM_FORMAT_XRGB8888,
 	DRM_FORMAT_XBGR8888,
+	DRM_FORMAT_ARGB8888,
+	DRM_FORMAT_ABGR8888,
 	DRM_FORMAT_RGB888,
 	DRM_FORMAT_BGR888,
 	DRM_FORMAT_RGB565
--- a/drivers/gpu/drm/rp1/rp1-dsi/rp1_dsi_dma.c
+++ b/drivers/gpu/drm/rp1/rp1-dsi/rp1_dsi_dma.c
@@ -247,6 +247,18 @@ static const struct rp1dsi_ipixfmt my_fo
 		.rgbsz  = BITS(DPI_DMA_RGBSZ_BPP, 3),
 	},
 	{
+		.format = DRM_FORMAT_ARGB8888,
+		.mask   = IMASK_RGB(0x3fc, 0x3fc, 0x3fc),
+		.shift  = ISHIFT_RGB(23, 15, 7),
+		.rgbsz  = BITS(DPI_DMA_RGBSZ_BPP, 3),
+	},
+	{
+		.format = DRM_FORMAT_ABGR8888,
+		.mask   = IMASK_RGB(0x3fc, 0x3fc, 0x3fc),
+		.shift  = ISHIFT_RGB(7, 15, 23),
+		.rgbsz  = BITS(DPI_DMA_RGBSZ_BPP, 3),
+	},
+	{
 		.format = DRM_FORMAT_RGB888,
 		.mask   = IMASK_RGB(0x3fc, 0x3fc, 0x3fc),
 		.shift  = ISHIFT_RGB(23, 15, 7),
