drm/i915: add dynamic performance control support for Ironlake
authorJesse Barnes <jbarnes@virtuousgeek.org>
Fri, 29 Jan 2010 19:27:07 +0000 (11:27 -0800)
committerEric Anholt <eric@anholt.net>
Mon, 22 Feb 2010 16:46:54 +0000 (11:46 -0500)
commitf97108d1d0facc7902134ebc453b226bbd4d1cdb
tree563d14cb7c65b80e16df9246da25cade22f22fdd
parentee980b8003a25fbfed50c3367f2b426c870eaf90
drm/i915: add dynamic performance control support for Ironlake

Ironlake (and 965GM, which this patch doesn't support) supports a
hardware performance and power management feature that allows it to
adjust to changes in GPU load over time with software help.  The goal
if this is to maximize performance/power for a given workload.

This patch enables that feature, which is also a requirement for
supporting Intelligent Power Sharing, a feature which allows for
dynamic budgeting of power between the CPU and GPU in Arrandale
platforms.

Tested-by: ykzhao <yakui.zhao@intel.com>
[anholt: Resolved against the irq handler loop removal]
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/i915/i915_debugfs.c
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_irq.c
drivers/gpu/drm/i915/i915_reg.h
drivers/gpu/drm/i915/i915_suspend.c
drivers/gpu/drm/i915/intel_display.c
drivers/gpu/drm/i915/intel_drv.h