On Thu, Feb 20, 2025 at 06:07:52PM +0800, Jun Nie wrote: > This change originates from the Qualcomm Android Linux driver. It is > essential to support a dual-DSI configuration with two panels in > some circumstances per testing. As the name suggests, this modification > may enhance the bandwidth robustness of a bus. Please start by describing the problem and the result of the changes. Otherwise it reads as it "may enhance or may worsen" the robustness. > > Co-developed-by: Jonathan Marek <jonathan@xxxxxxxx> > Signed-off-by: Jonathan Marek <jonathan@xxxxxxxx> > Signed-off-by: Jun Nie <jun.nie@xxxxxxxxxx> > --- > drivers/gpu/drm/msm/dsi/dsi_host.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/drivers/gpu/drm/msm/dsi/dsi_host.c b/drivers/gpu/drm/msm/dsi/dsi_host.c > index 42e100a8adca09d7b55afce0e2553e76d898744f..f59c4cd6bc8cdb31c1302f8e3ff395486c0b4898 100644 > --- a/drivers/gpu/drm/msm/dsi/dsi_host.c > +++ b/drivers/gpu/drm/msm/dsi/dsi_host.c > @@ -2238,13 +2238,23 @@ int msm_dsi_host_cmd_rx(struct mipi_dsi_host *host, > return ret; > } > > +#define DSI_VBIF_CTRL (0x01CC - 4) > +#define DSI_VBIF_CTRL_PRIORITY 0x07 > + > void msm_dsi_host_cmd_xfer_commit(struct mipi_dsi_host *host, u32 dma_base, > u32 len) > { > struct msm_dsi_host *msm_host = to_msm_dsi_host(host); > + const struct msm_dsi_cfg_handler *cfg_hnd = msm_host->cfg_hnd; > + u32 reg; > > dsi_write(msm_host, REG_DSI_DMA_BASE, dma_base); > dsi_write(msm_host, REG_DSI_DMA_LEN, len); > + if (cfg_hnd->minor >= MSM_DSI_6G_VER_MINOR_V2_8_0) { > + reg = dsi_read(msm_host, DSI_VBIF_CTRL); > + reg |= (DSI_VBIF_CTRL_PRIORITY & 0x7); > + dsi_write(msm_host, DSI_VBIF_CTRL, reg); > + } > dsi_write(msm_host, REG_DSI_TRIG_DMA, 1); > > /* Make sure trigger happens */ > > -- > 2.34.1 > -- With best wishes Dmitry