Skip to content

Commit 644696a

Browse files
committed
drm/bridge: cdns-dsi: Remove broken fifo emptying check
The driver checks if "DPI(HFP) > DSI(HSS+HSA+HSE+HBP)", and rejects the mode if not. However, testing shows that this doesn't hold at all. I can set the hfp to very small values, with no errors. The feedback from the HW team also was that the check is not right, although it's not clear if there's a way to validate the FIFO emptying. The check rejects quite a lot of modes, apparently for no good reason, so drop the check. Tested-by: Parth Pancholi <parth.pancholi@toradex.com> Tested-by: Jayesh Choudhary <j-choudhary@ti.com> Reviewed-by: Devarsh Thakkar <devarsht@ti.com> Link: https://lore.kernel.org/r/20250723-cdns-dsi-impro-v5-6-e61cc06074c2@ideasonboard.com Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
1 parent 2325e50 commit 644696a

1 file changed

Lines changed: 0 additions & 15 deletions

File tree

drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -553,7 +553,6 @@ static int cdns_dsi_check_conf(struct cdns_dsi *dsi,
553553
{
554554
struct cdns_dsi_output *output = &dsi->output;
555555
struct phy_configure_opts_mipi_dphy *phy_cfg = &output->phy_opts.mipi_dphy;
556-
unsigned long dsi_hss_hsa_hse_hbp;
557556
unsigned int nlanes = output->dev->lanes;
558557
int ret;
559558

@@ -575,20 +574,6 @@ static int cdns_dsi_check_conf(struct cdns_dsi *dsi,
575574
if (ret)
576575
return ret;
577576

578-
dsi_hss_hsa_hse_hbp = dsi_cfg->hbp + DSI_HBP_FRAME_OVERHEAD;
579-
if (output->dev->mode_flags & MIPI_DSI_MODE_VIDEO_SYNC_PULSE)
580-
dsi_hss_hsa_hse_hbp += dsi_cfg->hsa + DSI_HSA_FRAME_OVERHEAD;
581-
582-
/*
583-
* Make sure DPI(HFP) > DSI(HSS+HSA+HSE+HBP) to guarantee that the FIFO
584-
* is empty before we start a receiving a new line on the DPI
585-
* interface.
586-
*/
587-
if ((u64)phy_cfg->hs_clk_rate *
588-
(mode->hsync_start - mode->hdisplay) * nlanes <
589-
(u64)dsi_hss_hsa_hse_hbp * mode->clock * 1000)
590-
return -EINVAL;
591-
592577
return 0;
593578
}
594579

0 commit comments

Comments
 (0)