drm/i915: Reduce duplicated forcewake logic
authorChris Wilson <[email protected]>
Fri, 16 Jan 2015 09:34:37 +0000 (11:34 +0200)
committerDaniel Vetter <[email protected]>
Tue, 27 Jan 2015 08:50:55 +0000 (09:50 +0100)
commitb2cff0dbbb7ef03e08865b906b236a06c6cf2e2f
treed1667633d4854125c031818000d30346536f9572
parent51f67885842e36e0d0c853795cd02b129e19a20b
drm/i915: Reduce duplicated forcewake logic

Introduce a structure to track the individual forcewake domains and use
that to eliminate duplicate logic.

v2: - Rebase on latest dinq (Mika)
    - for_each_fw_domain macro (Mika)
    - Handle reset atomically, keeping the timer running (Mika)
    - for_each_fw_domain parameter ordering (Chris)
    - defer timer on new register access (Mika)

v3: - Fix forcewake_reset/get race by waiting pending timers

v4: - cond_resched and verbose warning on timer deletion (Chris)
    - need to run pending timers manually on reset

Signed-off-by: Chris Wilson <[email protected]> (v1)
Signed-off-by: Mika Kuoppala <[email protected]>
Acked-by: Deepak S <[email protected]> (v2)
Signed-off-by: Daniel Vetter <[email protected]>
drivers/gpu/drm/i915/i915_debugfs.c
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/intel_uncore.c