On 08/06/2025 16:28, Marek Vasut wrote:
Not all panels use all 4 data lanes, so allow configuration based
on the compatible string.

Signed-off-by: Marek Vasut <marek.vasut+rene...@mailbox.org>
---
Based on https://github.com/raspberrypi/linux 0d7ac78a3dd9 ("Extending ili9881c 
driver support for nwe080 panel")
by Dave Stevenson <dave.steven...@raspberrypi.com> and others
---
Cc: Conor Dooley <conor...@kernel.org>
Cc: Dave Stevenson <dave.steven...@raspberrypi.com>
Cc: David Airlie <airl...@gmail.com>
Cc: Jessica Zhang <quic_jessz...@quicinc.com>
Cc: Krzysztof Kozlowski <krzk...@kernel.org>
Cc: Maarten Lankhorst <maarten.lankho...@linux.intel.com>
Cc: Maxime Ripard <mrip...@kernel.org>
Cc: Neil Armstrong <neil.armstr...@linaro.org>
Cc: Rob Herring <r...@kernel.org>
Cc: Simona Vetter <sim...@ffwll.ch>
Cc: Thomas Zimmermann <tzimmerm...@suse.de>
Cc: devicet...@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Cc: linux-renesas-...@vger.kernel.org
---
  drivers/gpu/drm/panel/panel-ilitek-ili9881c.c | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c 
b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c
index 28cd7560e5db..2f5ae69148cc 100644
--- a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c
+++ b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c
@@ -43,6 +43,7 @@ struct ili9881c_desc {
        const struct drm_display_mode *mode;
        const unsigned long mode_flags;
        u8 default_address_mode;
+       unsigned int lanes;
  };
struct ili9881c {
@@ -1549,7 +1550,7 @@ static int ili9881c_dsi_probe(struct mipi_dsi_device *dsi)
dsi->mode_flags = ctx->desc->mode_flags;
        dsi->format = MIPI_DSI_FMT_RGB888;
-       dsi->lanes = 4;
+       dsi->lanes = ctx->desc->lanes;
return mipi_dsi_attach(dsi);
  }
@@ -1567,6 +1568,7 @@ static const struct ili9881c_desc lhr050h41_desc = {
        .init_length = ARRAY_SIZE(lhr050h41_init),
        .mode = &lhr050h41_default_mode,
        .mode_flags = MIPI_DSI_MODE_VIDEO_SYNC_PULSE,
+       .lanes = 4,
  };
static const struct ili9881c_desc k101_im2byl02_desc = {
@@ -1574,6 +1576,7 @@ static const struct ili9881c_desc k101_im2byl02_desc = {
        .init_length = ARRAY_SIZE(k101_im2byl02_init),
        .mode = &k101_im2byl02_default_mode,
        .mode_flags = MIPI_DSI_MODE_VIDEO_SYNC_PULSE,
+       .lanes = 4,
  };
static const struct ili9881c_desc kd050hdfia020_desc = {
@@ -1599,6 +1602,7 @@ static const struct ili9881c_desc w552946aba_desc = {
        .mode = &w552946aba_default_mode,
        .mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
                      MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_NO_EOT_PACKET,
+       .lanes = 4,
  };
static const struct ili9881c_desc am8001280g_desc = {

Reviewed-by: Neil Armstrong <neil.armstr...@linaro.org>

Reply via email to