mirror of
https://github.com/torvalds/linux.git
synced 2024-11-22 12:11:40 +00:00
- Reject display plane with height == 0 (Drew)
- re-disable RC6p on Sandy Bridge (Sasa) - Fix hugepages' selftest (Chris) - DG2 hw workarounds (Matt Atwood) -----BEGIN PGP SIGNATURE----- iQEzBAABCAAdFiEEbSBwaO7dZQkcLOKj+mJfZA7rE8oFAmPJn3cACgkQ+mJfZA7r E8qxtAgAqozHWVmXq5jtwHYjGcRGQmhs16vARVjS4DiUax4xztgr8Tbg5FY6NZ4m xrowsdXBONye6i1hI9wnQxSKXVSF27shDiO2QAGUKKmiRo/pLeZ9toEZKIqjgkLG ULlDV0dIatC194pR/MpdpyiTlyHOd2xbxWN+5BWC+/uy1bjHzs2PKTPEhAtxaeD0 yeYVKGbOy2tY28VctcpEV8c79Z0xHm8lOjo9X3j12Orw22lJQSz6nzSajSzxmZZF cqjYhk1VktGj6w+PTnYuVgw8oxTrlL2SOmtFTjMya0TVku2qNfu7TE/zZt5YfDbV Q14CZXtGdHgA89iIBMZi9kqI7QFsFQ== =+gY8 -----END PGP SIGNATURE----- Merge tag 'drm-intel-fixes-2023-01-19' of git://anongit.freedesktop.org/drm/drm-intel into drm-fixes - Reject display plane with height == 0 (Drew) - re-disable RC6p on Sandy Bridge (Sasa) - Fix hugepages' selftest (Chris) - DG2 hw workarounds (Matt Atwood) Signed-off-by: Dave Airlie <airlied@redhat.com> From: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/Y8mf3/ANNWctpc7R@intel.com
This commit is contained in:
commit
d6cf886fbd
@ -1627,7 +1627,7 @@ static int skl_check_main_surface(struct intel_plane_state *plane_state)
|
||||
u32 offset;
|
||||
int ret;
|
||||
|
||||
if (w > max_width || w < min_width || h > max_height) {
|
||||
if (w > max_width || w < min_width || h > max_height || h < 1) {
|
||||
drm_dbg_kms(&dev_priv->drm,
|
||||
"requested Y/RGB source size %dx%d outside limits (min: %dx1 max: %dx%d)\n",
|
||||
w, h, min_width, max_width, max_height);
|
||||
|
@ -1847,7 +1847,7 @@ static int igt_shrink_thp(void *arg)
|
||||
I915_SHRINK_ACTIVE);
|
||||
i915_vma_unpin(vma);
|
||||
if (err)
|
||||
goto out_put;
|
||||
goto out_wf;
|
||||
|
||||
/*
|
||||
* Now that the pages are *unpinned* shrinking should invoke
|
||||
@ -1863,19 +1863,19 @@ static int igt_shrink_thp(void *arg)
|
||||
pr_err("unexpected pages mismatch, should_swap=%s\n",
|
||||
str_yes_no(should_swap));
|
||||
err = -EINVAL;
|
||||
goto out_put;
|
||||
goto out_wf;
|
||||
}
|
||||
|
||||
if (should_swap == (obj->mm.page_sizes.sg || obj->mm.page_sizes.phys)) {
|
||||
pr_err("unexpected residual page-size bits, should_swap=%s\n",
|
||||
str_yes_no(should_swap));
|
||||
err = -EINVAL;
|
||||
goto out_put;
|
||||
goto out_wf;
|
||||
}
|
||||
|
||||
err = i915_vma_pin(vma, 0, 0, flags);
|
||||
if (err)
|
||||
goto out_put;
|
||||
goto out_wf;
|
||||
|
||||
while (n--) {
|
||||
err = cpu_check(obj, n, 0xdeadbeaf);
|
||||
|
@ -429,9 +429,10 @@
|
||||
#define RC_OP_FLUSH_ENABLE (1 << 0)
|
||||
#define HIZ_RAW_STALL_OPT_DISABLE (1 << 2)
|
||||
#define CACHE_MODE_1 _MMIO(0x7004) /* IVB+ */
|
||||
#define PIXEL_SUBSPAN_COLLECT_OPT_DISABLE (1 << 6)
|
||||
#define GEN8_4x4_STC_OPTIMIZATION_DISABLE (1 << 6)
|
||||
#define GEN9_PARTIAL_RESOLVE_IN_VC_DISABLE (1 << 1)
|
||||
#define MSAA_OPTIMIZATION_REDUC_DISABLE REG_BIT(11)
|
||||
#define PIXEL_SUBSPAN_COLLECT_OPT_DISABLE REG_BIT(6)
|
||||
#define GEN8_4x4_STC_OPTIMIZATION_DISABLE REG_BIT(6)
|
||||
#define GEN9_PARTIAL_RESOLVE_IN_VC_DISABLE REG_BIT(1)
|
||||
|
||||
#define GEN7_GT_MODE _MMIO(0x7008)
|
||||
#define GEN9_IZ_HASHING_MASK(slice) (0x3 << ((slice) * 2))
|
||||
@ -457,6 +458,9 @@
|
||||
#define GEN8_L3CNTLREG _MMIO(0x7034)
|
||||
#define GEN8_ERRDETBCTRL (1 << 9)
|
||||
|
||||
#define PSS_MODE2 _MMIO(0x703c)
|
||||
#define SCOREBOARD_STALL_FLUSH_CONTROL REG_BIT(5)
|
||||
|
||||
#define GEN7_SC_INSTDONE _MMIO(0x7100)
|
||||
#define GEN12_SC_INSTDONE_EXTRA _MMIO(0x7104)
|
||||
#define GEN12_SC_INSTDONE_EXTRA2 _MMIO(0x7108)
|
||||
|
@ -771,11 +771,19 @@ static void dg2_ctx_workarounds_init(struct intel_engine_cs *engine,
|
||||
|
||||
/* Wa_14014947963:dg2 */
|
||||
if (IS_DG2_GRAPHICS_STEP(engine->i915, G10, STEP_B0, STEP_FOREVER) ||
|
||||
IS_DG2_G11(engine->i915) || IS_DG2_G12(engine->i915))
|
||||
IS_DG2_G11(engine->i915) || IS_DG2_G12(engine->i915))
|
||||
wa_masked_field_set(wal, VF_PREEMPTION, PREEMPTION_VERTEX_COUNT, 0x4000);
|
||||
|
||||
/* Wa_18018764978:dg2 */
|
||||
if (IS_DG2_GRAPHICS_STEP(engine->i915, G10, STEP_C0, STEP_FOREVER) ||
|
||||
IS_DG2_G11(engine->i915) || IS_DG2_G12(engine->i915))
|
||||
wa_masked_en(wal, PSS_MODE2, SCOREBOARD_STALL_FLUSH_CONTROL);
|
||||
|
||||
/* Wa_15010599737:dg2 */
|
||||
wa_mcr_masked_en(wal, CHICKEN_RASTER_1, DIS_SF_ROUND_NEAREST_EVEN);
|
||||
|
||||
/* Wa_18019271663:dg2 */
|
||||
wa_masked_en(wal, CACHE_MODE_1, MSAA_OPTIMIZATION_REDUC_DISABLE);
|
||||
}
|
||||
|
||||
static void fakewa_disable_nestedbb_mode(struct intel_engine_cs *engine,
|
||||
|
@ -423,7 +423,8 @@ static const struct intel_device_info ilk_m_info = {
|
||||
.has_coherent_ggtt = true, \
|
||||
.has_llc = 1, \
|
||||
.has_rc6 = 1, \
|
||||
.has_rc6p = 1, \
|
||||
/* snb does support rc6p, but enabling it causes various issues */ \
|
||||
.has_rc6p = 0, \
|
||||
.has_rps = true, \
|
||||
.dma_mask_size = 40, \
|
||||
.__runtime.ppgtt_type = INTEL_PPGTT_ALIASING, \
|
||||
|
Loading…
Reference in New Issue
Block a user