Re: [PATCH 2/2] drm/bridge: ti-sn65dsi83: add h/vsync-disable support

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

 



On Fri, 2025-03-07 at 08:05 +0200, Dmitry Baryshkov wrote:
> On Thu, Mar 06, 2025 at 10:11:33AM +0100, A. Zini wrote:
> > From: Alessandro Zini <alessandro.zini@xxxxxxxxxxx>
> > 
> > The h/vsync-disable properties are used to control whether to use or
> > not h/vsync signals, by configuring their pulse width to zero.
> > 
> > This is required on some panels which are driven in DE-only mode but do
> > not ignore sync packets, and instead require them to be low-voltage level
> > or ground.
> 
> If this is required by 'some panels', then it should be a property of
> the panel, not by the bridge itself.

I got the same, rightful objection also from Rob. I'll answer here to
the both of you with the reasoning behind the submission of this patch.
Actually, I waited for a while before sending this patch, because I
originally had the same opinion. I do still have some difficulties
drawing the line between "this is a panel property" and "this is a
configurable feature of the bridge".

However, I have also prepared a second patch which adds support for
configuring the LVDS near-end termination. Afterward, I found that this
feature has already made its way in recently, so I dropped the patch.
Arguably still, that feature could be seen in the same way as the one
added from this patch, since a panel might require 100 Ohm, while
another 200 Ohm. Likewise, a panel might require h/vsync signals, while
another might require them to be zero/absent.

The TI E2E discussion I have attached to the cover letter of this patch
series eventually made me change my mind. From my point of view, the
discussion implies that avoiding the generation of h/vsync signals is
indeed a (configurable) feature of the bridge, even though not
explicitly documented in its datasheet.

Given the two reasons above, I think this patch would better fit in the
bridge rather than in the panel (which, for context, is driven as a
simple-panel).

> Can the panel return the mode with hsync_end = hsync_start and
> vsync_enc = vsync_start?

I did try to set <h/vsync-len> to zero, which resulted in vsync_end =
vsync_start and hsync_end = hsync_start, while also adjusting the other
blanking properties. I am not sure if this is what you meant.
However, this resulted in an issue along the pipeline, and ultimately
caused drm_atomic_helper_wait_for_vblanks() to timeout.

-- 
Alessandro




[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