Re: [PATCH V2] drm/imx: parallel-display: Remove bus flags check in imx_pd_bridge_atomic_check()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am Dienstag, den 01.02.2022, 12:36 +0100 schrieb Christoph Niedermaier:
> If display timings were read from the devicetree using
> of_get_display_timing() and pixelclk-active is defined
> there, the flag DISPLAY_FLAGS_SYNC_POSEDGE/NEGEDGE is
> automatically generated. Through the function
> drm_bus_flags_from_videomode() e.g. called in the
> panel-simple driver this flag got into the bus flags,
> but then in imx_pd_bridge_atomic_check() the bus flag
> check failed and will not initialize the display. The
> original commit fe141cedc433 does not explain why this
> check was introduced. So remove the bus flags check,
> because it stops the initialization of the display with
> valid bus flags.
> 
> Fixes: fe141cedc433 ("drm/imx: pd: Use bus format/flags provided by the bridge when available")
> Signed-off-by: Christoph Niedermaier <cniedermaier@xxxxxxxxxxxxxxxxxx>
> Cc: Marek Vasut <marex@xxxxxxx>
> Cc: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx>
> Cc: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
> Cc: David Airlie <airlied@xxxxxxxx>
> Cc: Daniel Vetter <daniel@xxxxxxxx>
> Cc: Shawn Guo <shawnguo@xxxxxxxxxx>
> Cc: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>
> Cc: Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx>
> Cc: Fabio Estevam <festevam@xxxxxxxxx>
> Cc: NXP Linux Team <linux-imx@xxxxxxx>
> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
> To: dri-devel@xxxxxxxxxxxxxxxxxxxxx
> ---
> V2: - Add Boris to the Cc list
> ---
>  drivers/gpu/drm/imx/parallel-display.c | 8 --------
>  1 file changed, 8 deletions(-)
> 
> diff --git a/drivers/gpu/drm/imx/parallel-display.c b/drivers/gpu/drm/imx/parallel-display.c
> index a8aba0141ce7..06cb1a59b9bc 100644
> --- a/drivers/gpu/drm/imx/parallel-display.c
> +++ b/drivers/gpu/drm/imx/parallel-display.c
> @@ -217,14 +217,6 @@ static int imx_pd_bridge_atomic_check(struct drm_bridge *bridge,
>  	if (!imx_pd_format_supported(bus_fmt))
>  		return -EINVAL;
>  
> -	if (bus_flags &
> -	    ~(DRM_BUS_FLAG_DE_LOW | DRM_BUS_FLAG_DE_HIGH |
> -	      DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE |
> -	      DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE)) {
> -		dev_warn(imxpd->dev, "invalid bus_flags (%x)\n", bus_flags);
> -		return -EINVAL;
> -	}
> -
>  	bridge_state->output_bus_cfg.flags = bus_flags;
>  	bridge_state->input_bus_cfg.flags = bus_flags;
>  	imx_crtc_state->bus_flags = bus_flags;

Tested on a Colibri iMX6DL with a panel-dpi based panel.

Tested-by: Max Krummenacher <max.krummenacher@xxxxxxxxxxx>




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux