Message ID | 1520987574-19351-3-git-send-email-yaodong.li@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Quoting Jackie Li (2018-03-14 02:32:51) > CNL has its specific reserved GuC WOPCM size for RC6 and other hardware > contexts. > > This patch updates the code to return CNL specific reserved GuC WOPCM size > for RC6 and other hardware contexts so that the GuC WOPCM size can be > calculated correctly for CNL. > > v9: > - Created a new patch for these changes originally made in v8 4/6 patch of > this series (Sagar/Michal) > > v10: > - Used if-else ladder to the returning of context sizes (Joonas) > > v11: > - Removed GUC_ prefix from context size macro (Michal) > > v13: > - Updated the ordering of s-o-b/cc/r-b tags (Sagar) > > Bspec: 12690 > > Signed-off-by: Jackie Li <yaodong.li@intel.com> > Cc: Sagar Arun Kamble <sagar.a.kamble@intel.com> > Cc: Michal Wajdeczko <michal.wajdeczko@intel.com> > Cc: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> > Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> (v9) > Reviewed-by: Michal Wajdeczko <michal.wajdeczko@intel.com> (v11) > Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> (v12) Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Regards, Joonas
diff --git a/drivers/gpu/drm/i915/intel_wopcm.c b/drivers/gpu/drm/i915/intel_wopcm.c index 7b150d5..a29e0c9 100644 --- a/drivers/gpu/drm/i915/intel_wopcm.c +++ b/drivers/gpu/drm/i915/intel_wopcm.c @@ -54,6 +54,8 @@ /* 24KB at the end of WOPCM is reserved for RC6 CTX on BXT. */ #define BXT_WOPCM_RC6_CTX_RESERVED (24 * 1024) +/* 36KB WOPCM reserved at the end of WOPCM on CNL. */ +#define CNL_WOPCM_HW_CTX_RESERVED (36 * 1024) /* 128KB from GUC_WOPCM_RESERVED is reserved for FW on Gen9. */ #define GEN9_GUC_FW_RESERVED (128 * 1024) @@ -76,6 +78,8 @@ static inline u32 context_reserved_size(struct drm_i915_private *i915) { if (IS_GEN9_LP(i915)) return BXT_WOPCM_RC6_CTX_RESERVED; + else if (INTEL_GEN(i915) >= 10) + return CNL_WOPCM_HW_CTX_RESERVED; else return 0; }