drm/i915/gen9: Fix DMC firmware initialization
authorImre Deak <imre.deak@intel.com>
Fri, 4 Mar 2016 19:57:41 +0000 (21:57 +0200)
committerImre Deak <imre.deak@intel.com>
Mon, 7 Mar 2016 13:15:29 +0000 (15:15 +0200)
commit2abc525bf5c62fd1f2a2994e5231842221dfdddb
tree7495c1868b52b89a2513fb341c66a4df47a0ba15
parent24a65e624bcdc726c7711ae90efeffaf0a8e9f32
drm/i915/gen9: Fix DMC firmware initialization

In commit 1e657ad7 we moved the last step of firmware initialization to
skl_display_core_init(), where it will be run only during system resume,
but not during driver loading. Since this init step needs to be done
whenever we program the firmware fix this by moving the initialization
to the end of intel_csr_load_program().

While at it simplify a bit csr_load_work_fn().

This issue prevented DC5/6 transitions, this change will re-enable those.

v2:
- remove debugging left-over and redundant comment in csr_load_work_fn()

Fixes: 1e657ad7a48f ("drm/i915/gen9: Write dc state debugmask bits only once")
CC: Mika Kuoppala <mika.kuoppala@intel.com>
CC: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1457121461-16729-1-git-send-email-imre.deak@intel.com
drivers/gpu/drm/i915/intel_csr.c
drivers/gpu/drm/i915/intel_drv.h
drivers/gpu/drm/i915/intel_runtime_pm.c