[Intel-gfx] [PATCH 3/4] drm/i915: Disable displays at the user's request

Ville Syrjälä ville.syrjala at linux.intel.com
Tue Nov 6 17:48:49 UTC 2018

On Fri, Oct 19, 2018 at 09:39:22AM +0100, Chris Wilson wrote:
> Quoting Daniel Vetter (2018-10-19 09:22:15)
> > On Mon, Oct 15, 2018 at 12:17:41PM +0100, Chris Wilson wrote:
> > > If the user passes i915.disable_display=1 we want to disable all the
> > > displays and associated HW like the powerwells on their behalf. Instead
> > > of short circuiting the HW probe, let it run and setup all the
> > > bookkeeping for the known HW. Afterwards, instead of taking over the
> > > BIOS fb and installing the fbcon, we shutdown all the outputs and
> > > teardown the bookkeeping, leaving us with no attached outputs or crtcs,
> > > and all the HW powered down.
> > > 
> > > Open: wq flushes should be required but seem to deadlock the modprobe
> > > under CI.
> > > 
> > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > > Cc: Imre Deak <imre.deak at intel.com>
> > > Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > 
> > i915.disable_display was for those server chips where doing all the init
> > resulted in a dead machine. So not sure we want this.
> For those server chips, we don't use i915.disable_display but detect when
> the fuses are lies and directly set num_pipes == 0. If we had such a
> machine in CI, you would already have seen a lot of the fun with KMS being
> allowed without any backing hw. Hence why Ville suggested we disable KMS
> for machines without pipes to avoid having to add a lot of defense
> around the driver.
> > What's the issue with power wells still being on and all that? On real hw
> > without display they won't exist, and I don't understand why we'd care for
> > testing.
> For testing. We do use .disable_display and expect rpm to still work, and
> to not get random display related failures interfering in displayless
> tests.
> Quite clearly we haven't been testing the displayless setups at all.

I definitely like the idea of testing this without requiring special
hardware. I guess another way to achieve the result of turning
everything off would be to 'modprobe i915 disable_display=0;
rmmod i915; modprobe i915 disable_display=1'. That should avoid the
need to have a special codepath for shutthing things down. Would that
suffice or is there a compelling reason for supporting this without
requiring the driver reload?

Ville Syrjälä

More information about the Intel-gfx mailing list