On Thu, Jan 24, 2019 at 02:01:14PM +0100, Maarten Lankhorst wrote: > From: Hans de Goede <hdegoede@xxxxxxxxxx> > > We really want to have fastboot enabled by default to avoid an ugly > modeset during boot. > > Rather then enabling it everywhere, lets start with enabling it on > Skylake and newer. > > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> I believe at this point you both addressed all of my concerns. And CI is happy. Let's give a try ;) Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_params.c | 6 ++++-- > drivers/gpu/drm/i915/i915_params.h | 2 +- > drivers/gpu/drm/i915/intel_display.c | 11 ++++++++++- > 3 files changed, 15 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c > index 9f0539bdaa39..b5be0abbba35 100644 > --- a/drivers/gpu/drm/i915/i915_params.c > +++ b/drivers/gpu/drm/i915/i915_params.c > @@ -97,8 +97,10 @@ i915_param_named_unsafe(disable_power_well, int, 0400, > > i915_param_named_unsafe(enable_ips, int, 0600, "Enable IPS (default: true)"); > > -i915_param_named(fastboot, bool, 0600, > - "Try to skip unnecessary mode sets at boot time (default: false)"); > +i915_param_named(fastboot, int, 0600, > + "Try to skip unnecessary mode sets at boot time " > + "(0=disabled, 1=enabled) " > + "Default: -1 (use per-chip default)"); > > i915_param_named_unsafe(prefault_disable, bool, 0600, > "Disable page prefaulting for pread/pwrite/reloc (default:false). " > diff --git a/drivers/gpu/drm/i915/i915_params.h b/drivers/gpu/drm/i915/i915_params.h > index 6efcf330bdab..3f14e9881a0d 100644 > --- a/drivers/gpu/drm/i915/i915_params.h > +++ b/drivers/gpu/drm/i915/i915_params.h > @@ -63,10 +63,10 @@ struct drm_printer; > param(int, edp_vswing, 0) \ > param(int, reset, 2) \ > param(unsigned int, inject_load_failure, 0) \ > + param(int, fastboot, -1) \ > /* leave bools at the end to not create holes */ \ > param(bool, alpha_support, IS_ENABLED(CONFIG_DRM_I915_ALPHA_SUPPORT)) \ > param(bool, enable_hangcheck, true) \ > - param(bool, fastboot, false) \ > param(bool, prefault_disable, false) \ > param(bool, load_detect_test, false) \ > param(bool, force_reset_modeset_test, false) \ > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 36c1126cbc85..097e46819d3a 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -11690,6 +11690,15 @@ pipe_config_err(bool adjust, const char *name, const char *format, ...) > va_end(args); > } > > +static bool fastboot_enabled(struct drm_i915_private *dev_priv) > +{ > + if (i915_modparams.fastboot != -1) > + return i915_modparams.fastboot; > + > + /* Enable fastboot by default on Skylake and newer */ > + return INTEL_GEN(dev_priv) >= 9; > +} > + > static bool > intel_pipe_config_compare(struct drm_i915_private *dev_priv, > struct intel_crtc_state *current_config, > @@ -11701,7 +11710,7 @@ intel_pipe_config_compare(struct drm_i915_private *dev_priv, > (current_config->base.mode.private_flags & I915_MODE_FLAG_INHERITED) && > !(pipe_config->base.mode.private_flags & I915_MODE_FLAG_INHERITED); > > - if (fixup_inherited && !i915_modparams.fastboot) { > + if (fixup_inherited && !fastboot_enabled(dev_priv)) { > DRM_DEBUG_KMS("initial modeset and fastboot not set\n"); > ret = false; > } > -- > 2.20.1 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx