summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_pvinfo.h
diff options
context:
space:
mode:
authorDaniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>2019-06-19 18:00:21 -0700
committerTvrtko Ursulin <tvrtko.ursulin@intel.com>2019-06-20 16:34:57 +0100
commit9e138ea1bdb1d1c1f1c0b74f022f886196abf625 (patch)
tree32360507d2aa1cd962d82689d7b258ede68b404e /drivers/gpu/drm/i915/i915_pvinfo.h
parentf833cdb06bf7cea6827d67b73cb24da335b70266 (diff)
downloadlinux-stable-9e138ea1bdb1d1c1f1c0b74f022f886196abf625.tar.gz
linux-stable-9e138ea1bdb1d1c1f1c0b74f022f886196abf625.tar.bz2
linux-stable-9e138ea1bdb1d1c1f1c0b74f022f886196abf625.zip
drm/i915/gvt: decouple check_vgpu() from uncore_init()
With multiple uncore to initialize (GT vs Display), it makes little sense to have the vgpu_check inside uncore_init(). We also have a catch-22 scenario where the uncore is required to read the vgpu capabilities while the vgpu capabilities are required to decide if we need to initialize forcewake support. To remove this circular dependency, we can perform the required MMIO access by mmapping just the vgtif shared page in mmio space and use raw accessors. v2: rename check_vgpu to detect_vgpu (Chris) Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Zhenyu Wang <zhenyuw@linux.intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190620010021.20637-7-daniele.ceraolospurio@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/i915_pvinfo.h')
-rw-r--r--drivers/gpu/drm/i915/i915_pvinfo.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/i915_pvinfo.h b/drivers/gpu/drm/i915/i915_pvinfo.h
index 969e514916ab..ca4661e98f79 100644
--- a/drivers/gpu/drm/i915/i915_pvinfo.h
+++ b/drivers/gpu/drm/i915/i915_pvinfo.h
@@ -110,8 +110,9 @@ struct vgt_if {
u32 rsv7[0x200 - 24]; /* pad to one page */
} __packed;
-#define vgtif_reg(x) \
- _MMIO((VGT_PVINFO_PAGE + offsetof(struct vgt_if, x)))
+#define vgtif_offset(x) (offsetof(struct vgt_if, x))
+
+#define vgtif_reg(x) _MMIO(VGT_PVINFO_PAGE + vgtif_offset(x))
/* vGPU display status to be used by the host side */
#define VGT_DRV_DISPLAY_NOT_READY 0