Skip to content

Commit 3d6535c

Browse files
committed
drm/i915: Enable fastboot by default on Skylake and newer
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@redhat.com> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190124130114.3967-1-maarten.lankhorst@linux.intel.com
1 parent 9407d3b commit 3d6535c

File tree

3 files changed

+15
-4
lines changed

3 files changed

+15
-4
lines changed

drivers/gpu/drm/i915/i915_params.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,10 @@ i915_param_named_unsafe(disable_power_well, int, 0400,
9797

9898
i915_param_named_unsafe(enable_ips, int, 0600, "Enable IPS (default: true)");
9999

100-
i915_param_named(fastboot, bool, 0600,
101-
"Try to skip unnecessary mode sets at boot time (default: false)");
100+
i915_param_named(fastboot, int, 0600,
101+
"Try to skip unnecessary mode sets at boot time "
102+
"(0=disabled, 1=enabled) "
103+
"Default: -1 (use per-chip default)");
102104

103105
i915_param_named_unsafe(prefault_disable, bool, 0600,
104106
"Disable page prefaulting for pread/pwrite/reloc (default:false). "

drivers/gpu/drm/i915/i915_params.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,10 @@ struct drm_printer;
6363
param(int, edp_vswing, 0) \
6464
param(int, reset, 2) \
6565
param(unsigned int, inject_load_failure, 0) \
66+
param(int, fastboot, -1) \
6667
/* leave bools at the end to not create holes */ \
6768
param(bool, alpha_support, IS_ENABLED(CONFIG_DRM_I915_ALPHA_SUPPORT)) \
6869
param(bool, enable_hangcheck, true) \
69-
param(bool, fastboot, false) \
7070
param(bool, prefault_disable, false) \
7171
param(bool, load_detect_test, false) \
7272
param(bool, force_reset_modeset_test, false) \

drivers/gpu/drm/i915/intel_display.c

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11719,6 +11719,15 @@ pipe_config_err(bool adjust, const char *name, const char *format, ...)
1171911719
va_end(args);
1172011720
}
1172111721

11722+
static bool fastboot_enabled(struct drm_i915_private *dev_priv)
11723+
{
11724+
if (i915_modparams.fastboot != -1)
11725+
return i915_modparams.fastboot;
11726+
11727+
/* Enable fastboot by default on Skylake and newer */
11728+
return INTEL_GEN(dev_priv) >= 9;
11729+
}
11730+
1172211731
static bool
1172311732
intel_pipe_config_compare(struct drm_i915_private *dev_priv,
1172411733
struct intel_crtc_state *current_config,
@@ -11730,7 +11739,7 @@ intel_pipe_config_compare(struct drm_i915_private *dev_priv,
1173011739
(current_config->base.mode.private_flags & I915_MODE_FLAG_INHERITED) &&
1173111740
!(pipe_config->base.mode.private_flags & I915_MODE_FLAG_INHERITED);
1173211741

11733-
if (fixup_inherited && !i915_modparams.fastboot) {
11742+
if (fixup_inherited && !fastboot_enabled(dev_priv)) {
1173411743
DRM_DEBUG_KMS("initial modeset and fastboot not set\n");
1173511744
ret = false;
1173611745
}

0 commit comments

Comments
 (0)