Commit 85a040bc authored by Ashutosh Dixit's avatar Ashutosh Dixit Committed by Tvrtko Ursulin
Browse files

drm/i915: Introduce has_media_ratio_mode



Media ratio mode (the ability for media IP to work at a different frequency
from the GT) is available for a subset of dGfx platforms supporting
GuC/SLPC. Introduce 'has_media_ratio_mode' flag in intel_device_info to
identify these platforms and set it for XEHPSDV and DG2/ATS-M.

Signed-off-by: default avatarAshutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: default avatarAndi Shyti <andi.shyti@linux.intel.com>
Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220519085732.1276255-1-tvrtko.ursulin@linux.intel.com
[tursulin: fixup merge conflict]
parent 230fb39f
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1214,6 +1214,8 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915,
#define CCS_MASK(gt) \
	ENGINE_INSTANCES_MASK(gt, CCS0, I915_MAX_CCS)

#define HAS_MEDIA_RATIO_MODE(dev_priv) (INTEL_INFO(dev_priv)->has_media_ratio_mode)

/*
 * The Gen7 cmdparser copies the scanned buffer to the ggtt for execution
 * All later gens can run the final buffer from the ppgtt
+2 −0
Original line number Diff line number Diff line
@@ -1032,6 +1032,7 @@ static const struct intel_device_info xehpsdv_info = {
	.display = { },
	.has_64k_pages = 1,
	.needs_compact_pt = 1,
	.has_media_ratio_mode = 1,
	.platform_engine_mask =
		BIT(RCS0) | BIT(BCS0) |
		BIT(VECS0) | BIT(VECS1) | BIT(VECS2) | BIT(VECS3) |
@@ -1051,6 +1052,7 @@ static const struct intel_device_info xehpsdv_info = {
	.has_64k_pages = 1, \
	.has_guc_deprivilege = 1, \
	.needs_compact_pt = 1, \
	.has_media_ratio_mode = 1, \
	.platform_engine_mask = \
		BIT(RCS0) | BIT(BCS0) | \
		BIT(VECS0) | BIT(VECS1) | \
+1 −0
Original line number Diff line number Diff line
@@ -151,6 +151,7 @@ enum intel_ppgtt_type {
	func(has_llc); \
	func(has_logical_ring_contexts); \
	func(has_logical_ring_elsq); \
	func(has_media_ratio_mode); \
	func(has_mslices); \
	func(has_pooled_eu); \
	func(has_pxp); \