mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-02 16:44:10 +08:00
Merge tag 'drm-intel-next-fixes-2020-12-18' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
drm/i915 fixes for the merge window Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> From: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/87zh2bp34m.fsf@intel.com
This commit is contained in:
commit
4efd7faba5
@ -382,7 +382,7 @@ eb_vma_misplaced(const struct drm_i915_gem_exec_object2 *entry,
|
|||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (!(flags & EXEC_OBJECT_SUPPORTS_48B_ADDRESS) &&
|
if (!(flags & EXEC_OBJECT_SUPPORTS_48B_ADDRESS) &&
|
||||||
(vma->node.start + vma->node.size - 1) >> 32)
|
(vma->node.start + vma->node.size + 4095) >> 32)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (flags & __EXEC_OBJECT_NEEDS_MAP &&
|
if (flags & __EXEC_OBJECT_NEEDS_MAP &&
|
||||||
|
@ -1579,9 +1579,9 @@ static inline const struct i915_rev_steppings *
|
|||||||
tgl_revids_get(struct drm_i915_private *dev_priv)
|
tgl_revids_get(struct drm_i915_private *dev_priv)
|
||||||
{
|
{
|
||||||
if (IS_TGL_U(dev_priv) || IS_TGL_Y(dev_priv))
|
if (IS_TGL_U(dev_priv) || IS_TGL_Y(dev_priv))
|
||||||
return tgl_uy_revids;
|
return &tgl_uy_revids[INTEL_REVID(dev_priv)];
|
||||||
else
|
else
|
||||||
return tgl_revids;
|
return &tgl_revids[INTEL_REVID(dev_priv)];
|
||||||
}
|
}
|
||||||
|
|
||||||
#define IS_TGL_DISP_REVID(p, since, until) \
|
#define IS_TGL_DISP_REVID(p, since, until) \
|
||||||
@ -1591,14 +1591,14 @@ tgl_revids_get(struct drm_i915_private *dev_priv)
|
|||||||
|
|
||||||
#define IS_TGL_UY_GT_REVID(p, since, until) \
|
#define IS_TGL_UY_GT_REVID(p, since, until) \
|
||||||
((IS_TGL_U(p) || IS_TGL_Y(p)) && \
|
((IS_TGL_U(p) || IS_TGL_Y(p)) && \
|
||||||
tgl_uy_revids->gt_stepping >= (since) && \
|
tgl_uy_revids[INTEL_REVID(p)].gt_stepping >= (since) && \
|
||||||
tgl_uy_revids->gt_stepping <= (until))
|
tgl_uy_revids[INTEL_REVID(p)].gt_stepping <= (until))
|
||||||
|
|
||||||
#define IS_TGL_GT_REVID(p, since, until) \
|
#define IS_TGL_GT_REVID(p, since, until) \
|
||||||
(IS_TIGERLAKE(p) && \
|
(IS_TIGERLAKE(p) && \
|
||||||
!(IS_TGL_U(p) || IS_TGL_Y(p)) && \
|
!(IS_TGL_U(p) || IS_TGL_Y(p)) && \
|
||||||
tgl_revids->gt_stepping >= (since) && \
|
tgl_revids[INTEL_REVID(p)].gt_stepping >= (since) && \
|
||||||
tgl_revids->gt_stepping <= (until))
|
tgl_revids[INTEL_REVID(p)].gt_stepping <= (until))
|
||||||
|
|
||||||
#define RKL_REVID_A0 0x0
|
#define RKL_REVID_A0 0x0
|
||||||
#define RKL_REVID_B0 0x1
|
#define RKL_REVID_B0 0x1
|
||||||
|
@ -4242,18 +4242,21 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
|
|||||||
*/
|
*/
|
||||||
dev_priv->hotplug.hpd_short_storm_enabled = !HAS_DP_MST(dev_priv);
|
dev_priv->hotplug.hpd_short_storm_enabled = !HAS_DP_MST(dev_priv);
|
||||||
|
|
||||||
if (HAS_PCH_DG1(dev_priv))
|
if (HAS_GMCH(dev_priv)) {
|
||||||
dev_priv->display.hpd_irq_setup = dg1_hpd_irq_setup;
|
if (I915_HAS_HOTPLUG(dev_priv))
|
||||||
else if (INTEL_GEN(dev_priv) >= 11)
|
dev_priv->display.hpd_irq_setup = i915_hpd_irq_setup;
|
||||||
dev_priv->display.hpd_irq_setup = gen11_hpd_irq_setup;
|
} else {
|
||||||
else if (IS_GEN9_LP(dev_priv))
|
if (HAS_PCH_DG1(dev_priv))
|
||||||
dev_priv->display.hpd_irq_setup = bxt_hpd_irq_setup;
|
dev_priv->display.hpd_irq_setup = dg1_hpd_irq_setup;
|
||||||
else if (INTEL_PCH_TYPE(dev_priv) >= PCH_SPT)
|
else if (INTEL_GEN(dev_priv) >= 11)
|
||||||
dev_priv->display.hpd_irq_setup = spt_hpd_irq_setup;
|
dev_priv->display.hpd_irq_setup = gen11_hpd_irq_setup;
|
||||||
else if (HAS_GMCH(dev_priv) && I915_HAS_HOTPLUG(dev_priv))
|
else if (IS_GEN9_LP(dev_priv))
|
||||||
dev_priv->display.hpd_irq_setup = i915_hpd_irq_setup;
|
dev_priv->display.hpd_irq_setup = bxt_hpd_irq_setup;
|
||||||
else
|
else if (INTEL_PCH_TYPE(dev_priv) >= PCH_SPT)
|
||||||
dev_priv->display.hpd_irq_setup = ilk_hpd_irq_setup;
|
dev_priv->display.hpd_irq_setup = spt_hpd_irq_setup;
|
||||||
|
else
|
||||||
|
dev_priv->display.hpd_irq_setup = ilk_hpd_irq_setup;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -914,7 +914,7 @@ static int gen8_oa_read(struct i915_perf_stream *stream,
|
|||||||
intel_uncore_rmw(uncore, oastatus_reg,
|
intel_uncore_rmw(uncore, oastatus_reg,
|
||||||
GEN8_OASTATUS_COUNTER_OVERFLOW |
|
GEN8_OASTATUS_COUNTER_OVERFLOW |
|
||||||
GEN8_OASTATUS_REPORT_LOST,
|
GEN8_OASTATUS_REPORT_LOST,
|
||||||
IS_GEN_RANGE(uncore->i915, 8, 10) ?
|
IS_GEN_RANGE(uncore->i915, 8, 11) ?
|
||||||
(GEN8_OASTATUS_HEAD_POINTER_WRAP |
|
(GEN8_OASTATUS_HEAD_POINTER_WRAP |
|
||||||
GEN8_OASTATUS_TAIL_POINTER_WRAP) : 0);
|
GEN8_OASTATUS_TAIL_POINTER_WRAP) : 0);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user