[PATCH v4 3/4] drm/vc4: Detect and ignore underruns caused by out-of-sync dlists
Eric Anholt
eric at anholt.net
Wed Feb 6 23:51:26 UTC 2019
Paul Kocialkowski <paul.kocialkowski at bootlin.com> writes:
> When the pipeline is reconfigured with a different mode, changes take
> effect immediately for the CRTC and encoder while the HVS takes some
> time to switch the active display list. This results in a period of
> time where the pipeline is out of sync, that is very likely to cause
> an underrun to be reported. Because the underrun is not related to the
> new configuration, reporting it to userspace is a false positive.
This seems like a serious issue. How are we enabling a CRTC with the
corresponding HVS still scanning out old contents? Did we need to wait
for HVS to finish its old frame when we turned off the CRTC, so it's
ready to receive the START when it's been set up with the new dlist and
the CRTC is turned back on? Or maybe do some sort of reset of that
dlist when a crtc is being enabled?
If we can't sort that out, it feels to me like we should be enabling the
interrupts from the flip_done path (when we know that the HVS is
scanning out the new frame) instead of trying to mitigate enabling them
too early.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20190206/7ed6fa9b/attachment.sig>
More information about the dri-devel
mailing list