[Intel-gfx] [PATCH 2/2] drm/i915: Simplify ilk-ivb underrun suppression
Ville Syrjälä
ville.syrjala at linux.intel.com
Fri May 25 15:43:42 UTC 2018
On Fri, May 25, 2018 at 04:20:07PM +0100, Chris Wilson wrote:
> Quoting Ville Syrjala (2018-05-24 20:04:06)
> > From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> >
> > Let's suppress the underruns around every modeset sequence instead
> > of trying to avoid it. Planes are disabled at this point anyway so
> > we don't really gain anything from keeping the underrun reporting
> > enabled. Also for PCH ports we already suppress all underruns here
> > anyway so trying avoid it for the CPU eDP doesn't seem all that
> > important.
> >
> > Maybe this gets rid of some lingering spurious underruns?
>
> I'll bite. Isn't the reason for enabling underrung report for the
> modeset itself to detect errors in our sequence?
In theory CPU FIFO underruns shouldn't happen until we have some planes
enabled. Otherwise we have no data going through the FIFOs and thus
reporting an underrun isn't particularly sane. That doesn't stop gen2
from doing it though, but gen3+ seem to follow the more reasonable
interpretation of what a FIFO underrun means.
I suppose PCH FIFO underruns are a bit different as there is data flowing
as soon as the CPU pipe starts running, whether or not any planes have
been enabled. So those could certainly indicate some kind of programming
sequence error. Or it could just be totally expected that we start the
PCH side of the pipe first and there's a small bit of time when the CPU
pipe isn't yet pushing out pixels, and that's when the PCH side reports
the underrun.
>
> How certain are we that these are hw limitations vs sw bugs?
To the best of my knowledge we are reasonably close to the sequence
listed in bspec. And while it's at least theoretically possible that
there's some change we could make to eliminate the underruns I don't
suppose anyone has the time or energy to try out all possible
variations.
And as long as the underrun (even if it's real) has vanished by the
time we enable the planes I think we are reasonably safe wrt. getting
the correct looking output to the user's display.
--
Ville Syrjälä
Intel
More information about the Intel-gfx
mailing list