|
@@ -124,8 +124,11 @@ int intel_sanitize_enable_ppgtt(struct drm_i915_private *dev_priv,
|
|
has_full_48bit_ppgtt =
|
|
has_full_48bit_ppgtt =
|
|
IS_BROADWELL(dev_priv) || INTEL_GEN(dev_priv) >= 9;
|
|
IS_BROADWELL(dev_priv) || INTEL_GEN(dev_priv) >= 9;
|
|
|
|
|
|
- if (intel_vgpu_active(dev_priv))
|
|
|
|
- has_full_ppgtt = false; /* emulation is too hard */
|
|
|
|
|
|
+ if (intel_vgpu_active(dev_priv)) {
|
|
|
|
+ /* emulation is too hard */
|
|
|
|
+ has_full_ppgtt = false;
|
|
|
|
+ has_full_48bit_ppgtt = false;
|
|
|
|
+ }
|
|
|
|
|
|
if (!has_aliasing_ppgtt)
|
|
if (!has_aliasing_ppgtt)
|
|
return 0;
|
|
return 0;
|
|
@@ -160,7 +163,7 @@ int intel_sanitize_enable_ppgtt(struct drm_i915_private *dev_priv,
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
- if (INTEL_GEN(dev_priv) >= 8 && i915.enable_execlists)
|
|
|
|
|
|
+ if (INTEL_GEN(dev_priv) >= 8 && i915.enable_execlists && has_full_ppgtt)
|
|
return has_full_48bit_ppgtt ? 3 : 2;
|
|
return has_full_48bit_ppgtt ? 3 : 2;
|
|
else
|
|
else
|
|
return has_aliasing_ppgtt ? 1 : 0;
|
|
return has_aliasing_ppgtt ? 1 : 0;
|