[PATCH 2/3] drm/panel: ilitek-ili9881c: Allow configuration of the number of lanes

Neil Armstrong neil.armstrong at linaro.org
Tue Jun 10 07:23:58 UTC 2025


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+renesas at mailbox.org>
> ---
> Based on https://github.com/raspberrypi/linux 0d7ac78a3dd9 ("Extending ili9881c driver support for nwe080 panel")
> by Dave Stevenson <dave.stevenson at raspberrypi.com> and others
> ---
> Cc: Conor Dooley <conor+dt at kernel.org>
> Cc: Dave Stevenson <dave.stevenson at raspberrypi.com>
> Cc: David Airlie <airlied at gmail.com>
> Cc: Jessica Zhang <quic_jesszhan at quicinc.com>
> Cc: Krzysztof Kozlowski <krzk+dt at kernel.org>
> Cc: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> Cc: Maxime Ripard <mripard at kernel.org>
> Cc: Neil Armstrong <neil.armstrong at linaro.org>
> Cc: Rob Herring <robh at kernel.org>
> Cc: Simona Vetter <simona at ffwll.ch>
> Cc: Thomas Zimmermann <tzimmermann at suse.de>
> Cc: devicetree at vger.kernel.org
> Cc: dri-devel at lists.freedesktop.org
> Cc: linux-renesas-soc at 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.armstrong at linaro.org>


More information about the dri-devel mailing list