]> Pileus Git - ~andy/linux/commit
drm/i915: refactor VLV IOSF sideband accessors to use one helper
authorJani Nikula <jani.nikula@intel.com>
Wed, 22 May 2013 12:36:17 +0000 (15:36 +0300)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 23 May 2013 21:24:28 +0000 (23:24 +0200)
commit5a09ae9fd509d7dded34e0d599e1afa5142c6987
tree24d7ea5d6d8ca8e4c492f090f24d70174e2743d2
parent59de08136f0c8d91bfd607d03cf722c5b6c60d1b
drm/i915: refactor VLV IOSF sideband accessors to use one helper

Both the intel_dpio_{read,write} and valleyview_{punit,nc}_{read,write}
use the IOSF sideband interface. They access the same registers and do
mostly the same stuff, but no shared code. There are even duplicate
register defines for the same registers. Both have locking, but the
former use dpio_lock and the latter rps.hw_lock. It's racy.

This patch refactors the sideband access to a single function that
expects dpio_lock to be held. The dpio_lock is only used for sideband
stuff, so it's a better match than rps.hw_lock for the purpose. The rps
stuff still needs rps.hw_lock, since it's used to protect more than just
the register access, so rps code will need to hold both locks.

Based on the work by Shobhit Kumar <shobhit.kumar@intel.com> and Yogesh
Mohan Marimuthu <yogesh.mohan.marimuthu@intel.com>.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_reg.h
drivers/gpu/drm/i915/intel_sideband.c