Previously FBC disabling due to per-chip default was logged as being disabled per module parameter. Distinguish between the two. v2: Don't even squawk in the debug log if FBC is explicitly disabled (Chris Wilson). Signed-off-by: Jani Nikula <jani.nikula at intel.com> --- drivers/gpu/drm/i915/i915_debugfs.c | 5 ++++- drivers/gpu/drm/i915/i915_drv.h | 1 + drivers/gpu/drm/i915/intel_pm.c | 15 ++++++++------- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index 0911fcd..275954c 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c @@ -1294,7 +1294,10 @@ static int i915_fbc_status(struct seq_file *m, void *unused) seq_printf(m, "multiple pipes are enabled"); break; case FBC_MODULE_PARAM: - seq_printf(m, "disabled per module param (default off)"); + seq_printf(m, "disabled per module param"); + break; + case FBC_PER_CHIP_DEFAULT: + seq_printf(m, "per chip default is disabled"); break; default: seq_printf(m, "unknown reason"); diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index b1f6a09..1d552df 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -453,6 +453,7 @@ enum no_fbc_reason { FBC_NOT_TILED, /* buffer not tiled */ FBC_MULTIPLE_PIPES, /* more than one pipe active */ FBC_MODULE_PARAM, + FBC_PER_CHIP_DEFAULT, }; enum intel_pch { diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index 61fee7f..9b2d7dd 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c @@ -437,13 +437,14 @@ void intel_update_fbc(struct drm_device *dev) enable_fbc = i915_enable_fbc; if (enable_fbc < 0) { - DRM_DEBUG_KMS("fbc set to per-chip default\n"); - enable_fbc = 1; - if (INTEL_INFO(dev)->gen <= 6) - enable_fbc = 0; - } - if (!enable_fbc) { - DRM_DEBUG_KMS("fbc disabled per module param\n"); + enable_fbc = INTEL_INFO(dev)->gen > 6; + DRM_DEBUG_KMS("fbc set to per-chip default: %s\n", + enable_fbc ? "enabled" : "disabled"); + if (!enable_fbc) { + dev_priv->no_fbc_reason = FBC_PER_CHIP_DEFAULT; + goto out_disable; + } + } else if (!enable_fbc) { dev_priv->no_fbc_reason = FBC_MODULE_PARAM; goto out_disable; } -- 1.7.9.5