linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH] drm/panel: simple: panel-dpi: use bus-format to set bpc and bus_format
@ 2022-02-22  8:47 Max Krummenacher
  2022-02-23 13:41 ` Maxime Ripard
  0 siblings, 1 reply; 24+ messages in thread
From: Max Krummenacher @ 2022-02-22  8:47 UTC (permalink / raw)
  To: dri-devel
  Cc: Sascha Hauer, Philipp Zabel, Laurent Pinchart, Maxime Ripard,
	Fabio Estevam, linux-arm-kernel, DenysDrozdov, David Airlie,
	Christoph Niedermaier, Pengutronix Kernel Team, Sam Ravnborg,
	Shawn Guo, Daniel Vetter, Marek Vasut, NXP Linux Team,
	Max Krummenacher

Use the new property bus-format to set the enum bus_format and bpc.
Completes: commit 4a1d0dbc8332 ("drm/panel: simple: add panel-dpi support")

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>

---

 drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

Relates to the discussion: https://lore.kernel.org/all/20220201110717.3585-1-cniedermaier@dh-electronics.com/

Max

diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index c5f133667a2d..5c07260de71c 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -453,6 +453,7 @@ static int panel_dpi_probe(struct device *dev,
 	struct panel_desc *desc;
 	unsigned int bus_flags;
 	struct videomode vm;
+	const char *format = "";
 	int ret;
 
 	np = dev->of_node;
@@ -477,6 +478,37 @@ static int panel_dpi_probe(struct device *dev,
 	of_property_read_u32(np, "width-mm", &desc->size.width);
 	of_property_read_u32(np, "height-mm", &desc->size.height);
 
+	of_property_read_string(np, "bus-format", &format);
+	if (!strcmp(format, "BGR888_1X24")) {
+		desc->bpc = 8;
+		desc->bus_format = MEDIA_BUS_FMT_BGR888_1X24;
+	} else if (!strcmp(format, "GBR888_1X24")) {
+		desc->bpc = 8;
+		desc->bus_format = MEDIA_BUS_FMT_GBR888_1X24;
+	} else if (!strcmp(format, "RBG888_1X24")) {
+		desc->bpc = 8;
+		desc->bus_format = MEDIA_BUS_FMT_RBG888_1X24;
+	} else if (!strcmp(format, "RGB444_1X12")) {
+		desc->bpc = 6;
+		desc->bus_format = MEDIA_BUS_FMT_RGB444_1X12;
+	} else if (!strcmp(format, "RGB565_1X16")) {
+		desc->bpc = 6;
+		desc->bus_format = MEDIA_BUS_FMT_RGB565_1X16;
+	} else if (!strcmp(format, "RGB666_1X18")) {
+		desc->bpc = 6;
+		desc->bus_format = MEDIA_BUS_FMT_RGB666_1X18;
+	} else if (!strcmp(format, "RGB666_1X24_CPADHI")) {
+		desc->bpc = 6;
+		desc->bus_format = MEDIA_BUS_FMT_RGB666_1X24_CPADHI;
+	} else if (!strcmp(format, "RGB888_1X24")) {
+		desc->bpc = 8;
+		desc->bus_format = MEDIA_BUS_FMT_RGB888_1X24;
+	} else {
+		dev_err(dev, "%pOF: missing or unknown bus-format property\n",
+			np);
+		return -EINVAL;
+	}
+
 	/* Extract bus_flags from display_timing */
 	bus_flags = 0;
 	vm.flags = timing->flags;
-- 
2.20.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

end of thread, other threads:[~2022-04-19 13:06 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-22  8:47 [RFC PATCH] drm/panel: simple: panel-dpi: use bus-format to set bpc and bus_format Max Krummenacher
2022-02-23 13:41 ` Maxime Ripard
2022-02-23 13:45   ` Marek Vasut
2022-02-23 13:47     ` Maxime Ripard
2022-02-23 14:09       ` Marek Vasut
2022-02-23 14:37         ` Maxime Ripard
2022-02-23 14:38           ` Marek Vasut
2022-02-23 16:39             ` Maxime Ripard
2022-02-23 16:57               ` Marek Vasut
2022-02-23 15:25     ` Max Krummenacher
2022-03-02 14:21       ` Maxime Ripard
2022-03-02 16:22         ` Marek Vasut
2022-03-07 15:26           ` Max Krummenacher
2022-03-18 16:35             ` Maxime Ripard
2022-03-18 17:05               ` Dave Stevenson
2022-03-18 17:16                 ` Maxime Ripard
2022-03-18 17:53                   ` Dave Stevenson
2022-03-23  8:42                     ` Max Krummenacher
2022-03-23 15:58                       ` Maxime Ripard
2022-03-23 20:06                         ` Max Krummenacher
2022-03-24  8:15                           ` Francesco Dolcini
2022-04-08 18:01                             ` Laurent Pinchart
2022-04-08 18:15                           ` Laurent Pinchart
2022-04-19 11:50                             ` Max Krummenacher

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).