From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Widawsky Subject: Re: [PATCH 3/3] drm/i915: re-enable rc6 by default when GMAR is disabled Date: Wed, 16 Nov 2011 16:56:16 -0800 Message-ID: <20111117005616.GA27398@bolo_yeung.jf.intel.com> References: <1321489075-1322-1-git-send-email-eugeni.dodonov@intel.com> <1321489075-1322-3-git-send-email-eugeni.dodonov@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from cloud01.chad-versace.us (184-106-247-128.static.cloud-ips.com [184.106.247.128]) by gabe.freedesktop.org (Postfix) with ESMTP id C92D59E8CE for ; Wed, 16 Nov 2011 16:56:27 -0800 (PST) Content-Disposition: inline In-Reply-To: <1321489075-1322-3-git-send-email-eugeni.dodonov@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: Eugeni Dodonov Cc: daniel.vetter@ffwll.ch, intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Wed, Nov 16, 2011 at 10:17:55PM -0200, Eugeni Dodonov wrote: > Most of the rc6-related hangs and major issues were addressed for the past > months. > > Let's re-enable it by default to provide a more wider testing, and catch > the remaining problems. > > According to tests, enablement of rc6 results in up to +50% improvements > in power usage and battery life, so it certainly would be a nice feature > to have enabled by default. > > Also, most of the rc6-related issues seem to came from GMAR, so we only > enable it as long as GMAR is disabled. > > CC: Keith Packard > CC: Daniel Vetter > CC: Jesse Barnes > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38567 > Signed-off-by: Eugeni Dodonov > --- > drivers/gpu/drm/i915/i915_drv.c | 2 +- > drivers/gpu/drm/i915/intel_display.c | 3 ++- > 2 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c > index 565725c..337a568 100644 > --- a/drivers/gpu/drm/i915/i915_drv.c > +++ b/drivers/gpu/drm/i915/i915_drv.c > @@ -63,7 +63,7 @@ module_param_named(semaphores, i915_semaphores, int, 0600); > MODULE_PARM_DESC(semaphores, > "Use semaphores for inter-ring sync (default: -1 (use per-chip defaults))"); > > -unsigned int i915_enable_rc6 __read_mostly = 0; > +unsigned int i915_enable_rc6 __read_mostly = 1; > module_param_named(i915_enable_rc6, i915_enable_rc6, int, 0600); > MODULE_PARM_DESC(i915_enable_rc6, > "Enable power-saving render C-state 6 (default: true)"); > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 981b1f1..5dd0878 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -31,6 +31,7 @@ > #include > #include > #include > +#include > #include > #include "drmP.h" > #include "intel_drv.h" > @@ -8746,7 +8747,7 @@ void intel_modeset_init(struct drm_device *dev) > > void intel_modeset_gem_init(struct drm_device *dev) > { > - if (IS_IRONLAKE_M(dev)) > + if (IS_IRONLAKE_M(dev) && dmar_disabled) > ironlake_enable_rc6(dev); > > intel_setup_overlay(dev); > -- This is not sufficient. You need to know that DMAR is compiled in, and is actually being used. The variable you want is: !intel_iommu_gfx_mapped I think I saw Keith say he was sending this patch out on IRC. Ben