* [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks
@ 2025-10-13 20:12 Ville Syrjala
2025-10-13 20:12 ` [PATCH 1/9] drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff Ville Syrjala
` (10 more replies)
0 siblings, 11 replies; 21+ messages in thread
From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw)
To: intel-gfx; +Cc: intel-xe
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Currently skl_is_vblank_too_short() is trying to do the
prefill vs. vblank/guardband length checks using a completely
stale cdclk frequency. Attempt to shuffle thigns around
sufficiently so that we might be able to remedy it. Note however
that this series does not yet fix the actual cdclk factor used
in the checks. That part will come in a separate series.
I also took the opportunity to carve up intel_bw.c a bit since
it's basically made up of three completely independent things.
While not strictly necessary for the reordering, it's nice to
untangle intel_bw.c for clarity.
Ville Syrjälä (9):
drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff
drm/i915: s/"not not"/"not"/
drm/i915/bw: Relocate intel_bw_crtc_min_cdclk()
drm/i915/ips: Eliminate the cdclk_state stuff from
hsw_ips_compute_config()
drm/i915/fbc: Decouple FBC from intel_cdclk_atomic_check()
drm/i915: s/min_cdck[]/plane_min_cdclk[]/
drm/i915: Compute per-crtc min_cdclk earlier
drm/i915: Include the per-crtc minimum cdclk in the crtc state dump
drm/i915: Neuter cdclk_prefill_adjustment()
drivers/gpu/drm/i915/Makefile | 1 +
drivers/gpu/drm/i915/display/hsw_ips.c | 61 ++--
drivers/gpu/drm/i915/display/intel_bw.c | 247 +--------------
drivers/gpu/drm/i915/display/intel_bw.h | 5 -
drivers/gpu/drm/i915/display/intel_cdclk.c | 46 ++-
drivers/gpu/drm/i915/display/intel_cdclk.h | 9 +-
drivers/gpu/drm/i915/display/intel_crtc.c | 44 +++
drivers/gpu/drm/i915/display/intel_crtc.h | 4 +
.../drm/i915/display/intel_crtc_state_dump.c | 4 +-
drivers/gpu/drm/i915/display/intel_dbuf_bw.c | 295 ++++++++++++++++++
drivers/gpu/drm/i915/display/intel_dbuf_bw.h | 37 +++
drivers/gpu/drm/i915/display/intel_display.c | 3 +
.../gpu/drm/i915/display/intel_display_core.h | 4 +
.../drm/i915/display/intel_display_driver.c | 5 +
.../drm/i915/display/intel_display_types.h | 4 +-
drivers/gpu/drm/i915/display/intel_fbc.c | 49 ++-
drivers/gpu/drm/i915/display/intel_fbc.h | 1 +
.../drm/i915/display/intel_modeset_setup.c | 14 +-
drivers/gpu/drm/i915/display/intel_plane.c | 4 +-
drivers/gpu/drm/i915/display/skl_watermark.c | 14 +-
drivers/gpu/drm/xe/Makefile | 1 +
21 files changed, 510 insertions(+), 342 deletions(-)
create mode 100644 drivers/gpu/drm/i915/display/intel_dbuf_bw.c
create mode 100644 drivers/gpu/drm/i915/display/intel_dbuf_bw.h
--
2.49.1
^ permalink raw reply [flat|nested] 21+ messages in thread* [PATCH 1/9] drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 10:39 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 2/9] drm/i915: s/"not not"/"not"/ Ville Syrjala ` (9 subsequent siblings) 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> Currently intel_bw.c contains basically three completely independent parts: - SAGV/memory bandwidth handling - DBuf bandwidth handling - "Maximum pipe read bandwidth" calculation, which is some kind of internal per-pipe bandwidth limit. Carve out the DBuf bandwdith handling into a separate file since there is no actual dependency between it and the rest of intel_bw.c. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/display/intel_bw.c | 191 ------------ drivers/gpu/drm/i915/display/intel_bw.h | 4 - drivers/gpu/drm/i915/display/intel_cdclk.c | 32 +- drivers/gpu/drm/i915/display/intel_cdclk.h | 7 +- drivers/gpu/drm/i915/display/intel_dbuf_bw.c | 295 ++++++++++++++++++ drivers/gpu/drm/i915/display/intel_dbuf_bw.h | 37 +++ .../gpu/drm/i915/display/intel_display_core.h | 4 + .../drm/i915/display/intel_display_driver.c | 5 + .../drm/i915/display/intel_modeset_setup.c | 3 + drivers/gpu/drm/xe/Makefile | 1 + 11 files changed, 363 insertions(+), 217 deletions(-) create mode 100644 drivers/gpu/drm/i915/display/intel_dbuf_bw.c create mode 100644 drivers/gpu/drm/i915/display/intel_dbuf_bw.h diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile index 6d7800e25e55..dbdf88b42919 100644 --- a/drivers/gpu/drm/i915/Makefile +++ b/drivers/gpu/drm/i915/Makefile @@ -241,6 +241,7 @@ i915-y += \ display/intel_crtc.o \ display/intel_crtc_state_dump.o \ display/intel_cursor.o \ + display/intel_dbuf_bw.o \ display/intel_display.o \ display/intel_display_conversion.o \ display/intel_display_driver.o \ diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c index b53bcb693e79..a4d16711d336 100644 --- a/drivers/gpu/drm/i915/display/intel_bw.c +++ b/drivers/gpu/drm/i915/display/intel_bw.c @@ -3,16 +3,12 @@ * Copyright © 2019 Intel Corporation */ -#include <drm/drm_atomic_state_helper.h> - #include "soc/intel_dram.h" #include "i915_drv.h" #include "i915_reg.h" #include "i915_utils.h" -#include "intel_atomic.h" #include "intel_bw.h" -#include "intel_cdclk.h" #include "intel_crtc.h" #include "intel_display_core.h" #include "intel_display_regs.h" @@ -22,14 +18,8 @@ #include "intel_uncore.h" #include "skl_watermark.h" -struct intel_dbuf_bw { - unsigned int max_bw[I915_MAX_DBUF_SLICES]; - u8 active_planes[I915_MAX_DBUF_SLICES]; -}; - struct intel_bw_state { struct intel_global_state base; - struct intel_dbuf_bw dbuf_bw[I915_MAX_PIPES]; /* * Contains a bit mask, used to determine, whether correspondent @@ -1264,184 +1254,6 @@ static int intel_bw_check_qgv_points(struct intel_display *display, old_bw_state, new_bw_state); } -static bool intel_dbuf_bw_changed(struct intel_display *display, - const struct intel_dbuf_bw *old_dbuf_bw, - const struct intel_dbuf_bw *new_dbuf_bw) -{ - enum dbuf_slice slice; - - for_each_dbuf_slice(display, slice) { - if (old_dbuf_bw->max_bw[slice] != new_dbuf_bw->max_bw[slice] || - old_dbuf_bw->active_planes[slice] != new_dbuf_bw->active_planes[slice]) - return true; - } - - return false; -} - -static bool intel_bw_state_changed(struct intel_display *display, - const struct intel_bw_state *old_bw_state, - const struct intel_bw_state *new_bw_state) -{ - enum pipe pipe; - - for_each_pipe(display, pipe) { - const struct intel_dbuf_bw *old_dbuf_bw = - &old_bw_state->dbuf_bw[pipe]; - const struct intel_dbuf_bw *new_dbuf_bw = - &new_bw_state->dbuf_bw[pipe]; - - if (intel_dbuf_bw_changed(display, old_dbuf_bw, new_dbuf_bw)) - return true; - } - - return false; -} - -static void skl_plane_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw, - struct intel_crtc *crtc, - enum plane_id plane_id, - const struct skl_ddb_entry *ddb, - unsigned int data_rate) -{ - struct intel_display *display = to_intel_display(crtc); - unsigned int dbuf_mask = skl_ddb_dbuf_slice_mask(display, ddb); - enum dbuf_slice slice; - - /* - * The arbiter can only really guarantee an - * equal share of the total bw to each plane. - */ - for_each_dbuf_slice_in_mask(display, slice, dbuf_mask) { - dbuf_bw->max_bw[slice] = max(dbuf_bw->max_bw[slice], data_rate); - dbuf_bw->active_planes[slice] |= BIT(plane_id); - } -} - -static void skl_crtc_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw, - const struct intel_crtc_state *crtc_state) -{ - struct intel_display *display = to_intel_display(crtc_state); - struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); - enum plane_id plane_id; - - memset(dbuf_bw, 0, sizeof(*dbuf_bw)); - - if (!crtc_state->hw.active) - return; - - for_each_plane_id_on_crtc(crtc, plane_id) { - /* - * We assume cursors are small enough - * to not cause bandwidth problems. - */ - if (plane_id == PLANE_CURSOR) - continue; - - skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id, - &crtc_state->wm.skl.plane_ddb[plane_id], - crtc_state->data_rate[plane_id]); - - if (DISPLAY_VER(display) < 11) - skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id, - &crtc_state->wm.skl.plane_ddb_y[plane_id], - crtc_state->data_rate[plane_id]); - } -} - -/* "Maximum Data Buffer Bandwidth" */ -static int -intel_bw_dbuf_min_cdclk(struct intel_display *display, - const struct intel_bw_state *bw_state) -{ - unsigned int total_max_bw = 0; - enum dbuf_slice slice; - - for_each_dbuf_slice(display, slice) { - int num_active_planes = 0; - unsigned int max_bw = 0; - enum pipe pipe; - - /* - * The arbiter can only really guarantee an - * equal share of the total bw to each plane. - */ - for_each_pipe(display, pipe) { - const struct intel_dbuf_bw *dbuf_bw = &bw_state->dbuf_bw[pipe]; - - max_bw = max(dbuf_bw->max_bw[slice], max_bw); - num_active_planes += hweight8(dbuf_bw->active_planes[slice]); - } - max_bw *= num_active_planes; - - total_max_bw = max(total_max_bw, max_bw); - } - - return DIV_ROUND_UP(total_max_bw, 64); -} - -int intel_bw_min_cdclk(struct intel_display *display, - const struct intel_bw_state *bw_state) -{ - int min_cdclk; - - min_cdclk = intel_bw_dbuf_min_cdclk(display, bw_state); - - return min_cdclk; -} - -int intel_bw_calc_min_cdclk(struct intel_atomic_state *state, - bool *need_cdclk_calc) -{ - struct intel_display *display = to_intel_display(state); - struct intel_bw_state *new_bw_state = NULL; - const struct intel_bw_state *old_bw_state = NULL; - const struct intel_crtc_state *old_crtc_state; - const struct intel_crtc_state *new_crtc_state; - struct intel_crtc *crtc; - int ret, i; - - if (DISPLAY_VER(display) < 9) - return 0; - - for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, - new_crtc_state, i) { - struct intel_dbuf_bw old_dbuf_bw, new_dbuf_bw; - - skl_crtc_calc_dbuf_bw(&old_dbuf_bw, old_crtc_state); - skl_crtc_calc_dbuf_bw(&new_dbuf_bw, new_crtc_state); - - if (!intel_dbuf_bw_changed(display, &old_dbuf_bw, &new_dbuf_bw)) - continue; - - new_bw_state = intel_atomic_get_bw_state(state); - if (IS_ERR(new_bw_state)) - return PTR_ERR(new_bw_state); - - old_bw_state = intel_atomic_get_old_bw_state(state); - - new_bw_state->dbuf_bw[crtc->pipe] = new_dbuf_bw; - } - - if (!old_bw_state) - return 0; - - if (intel_bw_state_changed(display, old_bw_state, new_bw_state)) { - int ret = intel_atomic_lock_global_state(&new_bw_state->base); - if (ret) - return ret; - } - - ret = intel_cdclk_update_bw_min_cdclk(state, - intel_bw_min_cdclk(display, old_bw_state), - intel_bw_min_cdclk(display, new_bw_state), - need_cdclk_calc); - if (ret) - return ret; - - return 0; -} - static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *changed) { struct intel_display *display = to_intel_display(state); @@ -1647,8 +1459,6 @@ void intel_bw_update_hw_state(struct intel_display *display) if (DISPLAY_VER(display) >= 11) intel_bw_crtc_update(bw_state, crtc_state); - skl_crtc_calc_dbuf_bw(&bw_state->dbuf_bw[pipe], crtc_state); - /* initially SAGV has been forced off */ bw_state->pipe_sagv_reject |= BIT(pipe); } @@ -1666,7 +1476,6 @@ void intel_bw_crtc_disable_noatomic(struct intel_crtc *crtc) bw_state->data_rate[pipe] = 0; bw_state->num_active_planes[pipe] = 0; - memset(&bw_state->dbuf_bw[pipe], 0, sizeof(bw_state->dbuf_bw[pipe])); } static struct intel_global_state * diff --git a/drivers/gpu/drm/i915/display/intel_bw.h b/drivers/gpu/drm/i915/display/intel_bw.h index 4bb3a637b295..051e163f2f15 100644 --- a/drivers/gpu/drm/i915/display/intel_bw.h +++ b/drivers/gpu/drm/i915/display/intel_bw.h @@ -30,10 +30,6 @@ void intel_bw_init_hw(struct intel_display *display); int intel_bw_init(struct intel_display *display); int intel_bw_atomic_check(struct intel_atomic_state *state); int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state); -int intel_bw_calc_min_cdclk(struct intel_atomic_state *state, - bool *need_cdclk_calc); -int intel_bw_min_cdclk(struct intel_display *display, - const struct intel_bw_state *bw_state); void intel_bw_update_hw_state(struct intel_display *display); void intel_bw_crtc_disable_noatomic(struct intel_crtc *crtc); diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c index f2e092f89ddd..23b9e100d824 100644 --- a/drivers/gpu/drm/i915/display/intel_cdclk.c +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c @@ -38,6 +38,7 @@ #include "intel_bw.h" #include "intel_cdclk.h" #include "intel_crtc.h" +#include "intel_dbuf_bw.h" #include "intel_de.h" #include "intel_display_regs.h" #include "intel_display_types.h" @@ -133,8 +134,8 @@ struct intel_cdclk_state { */ struct intel_cdclk_config actual; - /* minimum acceptable cdclk to satisfy bandwidth requirements */ - int bw_min_cdclk; + /* minimum acceptable cdclk to satisfy DBUF bandwidth requirements */ + int dbuf_bw_min_cdclk; /* minimum acceptable cdclk for each pipe */ int min_cdclk[I915_MAX_PIPES]; /* minimum acceptable voltage level for each pipe */ @@ -2891,9 +2892,9 @@ static int intel_cdclk_update_crtc_min_cdclk(struct intel_atomic_state *state, return 0; } -int intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, - int old_min_cdclk, int new_min_cdclk, - bool *need_cdclk_calc) +int intel_cdclk_update_dbuf_bw_min_cdclk(struct intel_atomic_state *state, + int old_min_cdclk, int new_min_cdclk, + bool *need_cdclk_calc) { struct intel_display *display = to_intel_display(state); struct intel_cdclk_state *cdclk_state; @@ -2910,7 +2911,7 @@ int intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, if (IS_ERR(cdclk_state)) return PTR_ERR(cdclk_state); - old_min_cdclk = cdclk_state->bw_min_cdclk; + old_min_cdclk = cdclk_state->dbuf_bw_min_cdclk; if (new_min_cdclk == old_min_cdclk) return 0; @@ -2918,7 +2919,7 @@ int intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, if (!allow_cdclk_decrease && new_min_cdclk < old_min_cdclk) return 0; - cdclk_state->bw_min_cdclk = new_min_cdclk; + cdclk_state->dbuf_bw_min_cdclk = new_min_cdclk; ret = intel_atomic_lock_global_state(&cdclk_state->base); if (ret) @@ -2927,7 +2928,7 @@ int intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, *need_cdclk_calc = true; drm_dbg_kms(display->drm, - "bandwidth min cdclk: %d kHz -> %d kHz\n", + "dbuf bandwidth min cdclk: %d kHz -> %d kHz\n", old_min_cdclk, new_min_cdclk); return 0; @@ -2950,7 +2951,7 @@ static int intel_compute_min_cdclk(struct intel_atomic_state *state) int min_cdclk; min_cdclk = cdclk_state->force_min_cdclk; - min_cdclk = max(min_cdclk, cdclk_state->bw_min_cdclk); + min_cdclk = max(min_cdclk, cdclk_state->dbuf_bw_min_cdclk); for_each_pipe(display, pipe) min_cdclk = max(min_cdclk, cdclk_state->min_cdclk[pipe]); @@ -3476,7 +3477,7 @@ int intel_cdclk_atomic_check(struct intel_atomic_state *state) if (ret) return ret; - ret = intel_bw_calc_min_cdclk(state, &need_cdclk_calc); + ret = intel_dbuf_bw_calc_min_cdclk(state, &need_cdclk_calc); if (ret) return ret; @@ -3503,8 +3504,8 @@ int intel_cdclk_atomic_check(struct intel_atomic_state *state) void intel_cdclk_update_hw_state(struct intel_display *display) { - const struct intel_bw_state *bw_state = - to_intel_bw_state(display->bw.obj.state); + const struct intel_dbuf_bw_state *dbuf_bw_state = + to_intel_dbuf_bw_state(display->dbuf_bw.obj.state); struct intel_cdclk_state *cdclk_state = to_intel_cdclk_state(display->cdclk.obj.state); struct intel_crtc *crtc; @@ -3526,7 +3527,7 @@ void intel_cdclk_update_hw_state(struct intel_display *display) cdclk_state->min_voltage_level[pipe] = crtc_state->min_voltage_level; } - cdclk_state->bw_min_cdclk = intel_bw_min_cdclk(display, bw_state); + cdclk_state->dbuf_bw_min_cdclk = intel_dbuf_bw_min_cdclk(display, dbuf_bw_state); } void intel_cdclk_crtc_disable_noatomic(struct intel_crtc *crtc) @@ -4020,11 +4021,6 @@ int intel_cdclk_min_cdclk(const struct intel_cdclk_state *cdclk_state, enum pipe return cdclk_state->min_cdclk[pipe]; } -int intel_cdclk_bw_min_cdclk(const struct intel_cdclk_state *cdclk_state) -{ - return cdclk_state->bw_min_cdclk; -} - bool intel_cdclk_pmdemand_needs_update(struct intel_atomic_state *state) { const struct intel_cdclk_state *new_cdclk_state, *old_cdclk_state; diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.h b/drivers/gpu/drm/i915/display/intel_cdclk.h index 72963f6f399a..d9d7a8b3a48a 100644 --- a/drivers/gpu/drm/i915/display/intel_cdclk.h +++ b/drivers/gpu/drm/i915/display/intel_cdclk.h @@ -46,9 +46,9 @@ struct intel_cdclk_state * intel_atomic_get_cdclk_state(struct intel_atomic_state *state); void intel_cdclk_update_hw_state(struct intel_display *display); void intel_cdclk_crtc_disable_noatomic(struct intel_crtc *crtc); -int intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, - int old_min_cdclk, int new_min_cdclk, - bool *need_cdclk_calc); +int intel_cdclk_update_dbuf_bw_min_cdclk(struct intel_atomic_state *state, + int old_min_cdclk, int new_min_cdclk, + bool *need_cdclk_calc); #define to_intel_cdclk_state(global_state) \ container_of_const((global_state), struct intel_cdclk_state, base) @@ -65,7 +65,6 @@ int intel_cdclk_logical(const struct intel_cdclk_state *cdclk_state); int intel_cdclk_actual(const struct intel_cdclk_state *cdclk_state); int intel_cdclk_actual_voltage_level(const struct intel_cdclk_state *cdclk_state); int intel_cdclk_min_cdclk(const struct intel_cdclk_state *cdclk_state, enum pipe pipe); -int intel_cdclk_bw_min_cdclk(const struct intel_cdclk_state *cdclk_state); bool intel_cdclk_pmdemand_needs_update(struct intel_atomic_state *state); void intel_cdclk_force_min_cdclk(struct intel_cdclk_state *cdclk_state, int force_min_cdclk); void intel_cdclk_read_hw(struct intel_display *display); diff --git a/drivers/gpu/drm/i915/display/intel_dbuf_bw.c b/drivers/gpu/drm/i915/display/intel_dbuf_bw.c new file mode 100644 index 000000000000..8b8894c37f63 --- /dev/null +++ b/drivers/gpu/drm/i915/display/intel_dbuf_bw.c @@ -0,0 +1,295 @@ +// SPDX-License-Identifier: MIT +/* + * Copyright © 2025 Intel Corporation + */ + +#include <drm/drm_print.h> + +#include "intel_dbuf_bw.h" +#include "intel_display_core.h" +#include "intel_display_types.h" +#include "skl_watermark.h" + +struct intel_dbuf_bw { + unsigned int max_bw[I915_MAX_DBUF_SLICES]; + u8 active_planes[I915_MAX_DBUF_SLICES]; +}; + +struct intel_dbuf_bw_state { + struct intel_global_state base; + struct intel_dbuf_bw dbuf_bw[I915_MAX_PIPES]; +}; + +struct intel_dbuf_bw_state *to_intel_dbuf_bw_state(struct intel_global_state *obj_state) +{ + return container_of(obj_state, struct intel_dbuf_bw_state, base); +} + +struct intel_dbuf_bw_state * +intel_atomic_get_old_dbuf_bw_state(struct intel_atomic_state *state) +{ + struct intel_display *display = to_intel_display(state); + struct intel_global_state *dbuf_bw_state; + + dbuf_bw_state = intel_atomic_get_old_global_obj_state(state, &display->dbuf_bw.obj); + + return to_intel_dbuf_bw_state(dbuf_bw_state); +} + +struct intel_dbuf_bw_state * +intel_atomic_get_new_dbuf_bw_state(struct intel_atomic_state *state) +{ + struct intel_display *display = to_intel_display(state); + struct intel_global_state *dbuf_bw_state; + + dbuf_bw_state = intel_atomic_get_new_global_obj_state(state, &display->dbuf_bw.obj); + + return to_intel_dbuf_bw_state(dbuf_bw_state); +} + +struct intel_dbuf_bw_state * +intel_atomic_get_dbuf_bw_state(struct intel_atomic_state *state) +{ + struct intel_display *display = to_intel_display(state); + struct intel_global_state *dbuf_bw_state; + + dbuf_bw_state = intel_atomic_get_global_obj_state(state, &display->dbuf_bw.obj); + if (IS_ERR(dbuf_bw_state)) + return ERR_CAST(dbuf_bw_state); + + return to_intel_dbuf_bw_state(dbuf_bw_state); +} + +static bool intel_dbuf_bw_changed(struct intel_display *display, + const struct intel_dbuf_bw *old_dbuf_bw, + const struct intel_dbuf_bw *new_dbuf_bw) +{ + enum dbuf_slice slice; + + for_each_dbuf_slice(display, slice) { + if (old_dbuf_bw->max_bw[slice] != new_dbuf_bw->max_bw[slice] || + old_dbuf_bw->active_planes[slice] != new_dbuf_bw->active_planes[slice]) + return true; + } + + return false; +} + +static bool intel_dbuf_bw_state_changed(struct intel_display *display, + const struct intel_dbuf_bw_state *old_dbuf_bw_state, + const struct intel_dbuf_bw_state *new_dbuf_bw_state) +{ + enum pipe pipe; + + for_each_pipe(display, pipe) { + const struct intel_dbuf_bw *old_dbuf_bw = + &old_dbuf_bw_state->dbuf_bw[pipe]; + const struct intel_dbuf_bw *new_dbuf_bw = + &new_dbuf_bw_state->dbuf_bw[pipe]; + + if (intel_dbuf_bw_changed(display, old_dbuf_bw, new_dbuf_bw)) + return true; + } + + return false; +} + +static void skl_plane_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw, + struct intel_crtc *crtc, + enum plane_id plane_id, + const struct skl_ddb_entry *ddb, + unsigned int data_rate) +{ + struct intel_display *display = to_intel_display(crtc); + unsigned int dbuf_mask = skl_ddb_dbuf_slice_mask(display, ddb); + enum dbuf_slice slice; + + /* + * The arbiter can only really guarantee an + * equal share of the total bw to each plane. + */ + for_each_dbuf_slice_in_mask(display, slice, dbuf_mask) { + dbuf_bw->max_bw[slice] = max(dbuf_bw->max_bw[slice], data_rate); + dbuf_bw->active_planes[slice] |= BIT(plane_id); + } +} + +static void skl_crtc_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw, + const struct intel_crtc_state *crtc_state) +{ + struct intel_display *display = to_intel_display(crtc_state); + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); + enum plane_id plane_id; + + memset(dbuf_bw, 0, sizeof(*dbuf_bw)); + + if (!crtc_state->hw.active) + return; + + for_each_plane_id_on_crtc(crtc, plane_id) { + /* + * We assume cursors are small enough + * to not cause bandwidth problems. + */ + if (plane_id == PLANE_CURSOR) + continue; + + skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id, + &crtc_state->wm.skl.plane_ddb[plane_id], + crtc_state->data_rate[plane_id]); + + if (DISPLAY_VER(display) < 11) + skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id, + &crtc_state->wm.skl.plane_ddb_y[plane_id], + crtc_state->data_rate[plane_id]); + } +} + +/* "Maximum Data Buffer Bandwidth" */ +int intel_dbuf_bw_min_cdclk(struct intel_display *display, + const struct intel_dbuf_bw_state *dbuf_bw_state) +{ + unsigned int total_max_bw = 0; + enum dbuf_slice slice; + + for_each_dbuf_slice(display, slice) { + int num_active_planes = 0; + unsigned int max_bw = 0; + enum pipe pipe; + + /* + * The arbiter can only really guarantee an + * equal share of the total bw to each plane. + */ + for_each_pipe(display, pipe) { + const struct intel_dbuf_bw *dbuf_bw = &dbuf_bw_state->dbuf_bw[pipe]; + + max_bw = max(dbuf_bw->max_bw[slice], max_bw); + num_active_planes += hweight8(dbuf_bw->active_planes[slice]); + } + max_bw *= num_active_planes; + + total_max_bw = max(total_max_bw, max_bw); + } + + return DIV_ROUND_UP(total_max_bw, 64); +} + +int intel_dbuf_bw_calc_min_cdclk(struct intel_atomic_state *state, + bool *need_cdclk_calc) +{ + struct intel_display *display = to_intel_display(state); + struct intel_dbuf_bw_state *new_dbuf_bw_state = NULL; + const struct intel_dbuf_bw_state *old_dbuf_bw_state = NULL; + const struct intel_crtc_state *old_crtc_state; + const struct intel_crtc_state *new_crtc_state; + struct intel_crtc *crtc; + int ret, i; + + if (DISPLAY_VER(display) < 9) + return 0; + + for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, + new_crtc_state, i) { + struct intel_dbuf_bw old_dbuf_bw, new_dbuf_bw; + + skl_crtc_calc_dbuf_bw(&old_dbuf_bw, old_crtc_state); + skl_crtc_calc_dbuf_bw(&new_dbuf_bw, new_crtc_state); + + if (!intel_dbuf_bw_changed(display, &old_dbuf_bw, &new_dbuf_bw)) + continue; + + new_dbuf_bw_state = intel_atomic_get_dbuf_bw_state(state); + if (IS_ERR(new_dbuf_bw_state)) + return PTR_ERR(new_dbuf_bw_state); + + old_dbuf_bw_state = intel_atomic_get_old_dbuf_bw_state(state); + + new_dbuf_bw_state->dbuf_bw[crtc->pipe] = new_dbuf_bw; + } + + if (!old_dbuf_bw_state) + return 0; + + if (intel_dbuf_bw_state_changed(display, old_dbuf_bw_state, new_dbuf_bw_state)) { + ret = intel_atomic_lock_global_state(&new_dbuf_bw_state->base); + if (ret) + return ret; + } + + ret = intel_cdclk_update_dbuf_bw_min_cdclk(state, + intel_dbuf_bw_min_cdclk(display, old_dbuf_bw_state), + intel_dbuf_bw_min_cdclk(display, new_dbuf_bw_state), + need_cdclk_calc); + if (ret) + return ret; + + return 0; +} + +void intel_dbuf_bw_update_hw_state(struct intel_display *display) +{ + struct intel_dbuf_bw_state *dbuf_bw_state = + to_intel_dbuf_bw_state(display->dbuf_bw.obj.state); + struct intel_crtc *crtc; + + if (DISPLAY_VER(display) < 9) + return; + + for_each_intel_crtc(display->drm, crtc) { + const struct intel_crtc_state *crtc_state = + to_intel_crtc_state(crtc->base.state); + + skl_crtc_calc_dbuf_bw(&dbuf_bw_state->dbuf_bw[crtc->pipe], crtc_state); + } +} + +void intel_dbuf_bw_crtc_disable_noatomic(struct intel_crtc *crtc) +{ + struct intel_display *display = to_intel_display(crtc); + struct intel_dbuf_bw_state *dbuf_bw_state = + to_intel_dbuf_bw_state(display->dbuf_bw.obj.state); + enum pipe pipe = crtc->pipe; + + if (DISPLAY_VER(display) < 9) + return; + + memset(&dbuf_bw_state->dbuf_bw[pipe], 0, sizeof(dbuf_bw_state->dbuf_bw[pipe])); +} + +static struct intel_global_state * +intel_dbuf_bw_duplicate_state(struct intel_global_obj *obj) +{ + struct intel_dbuf_bw_state *state; + + state = kmemdup(obj->state, sizeof(*state), GFP_KERNEL); + if (!state) + return NULL; + + return &state->base; +} + +static void intel_dbuf_bw_destroy_state(struct intel_global_obj *obj, + struct intel_global_state *state) +{ + kfree(state); +} + +static const struct intel_global_state_funcs intel_dbuf_bw_funcs = { + .atomic_duplicate_state = intel_dbuf_bw_duplicate_state, + .atomic_destroy_state = intel_dbuf_bw_destroy_state, +}; + +int intel_dbuf_bw_init(struct intel_display *display) +{ + struct intel_dbuf_bw_state *state; + + state = kzalloc(sizeof(*state), GFP_KERNEL); + if (!state) + return -ENOMEM; + + intel_atomic_global_obj_init(display, &display->dbuf_bw.obj, + &state->base, &intel_dbuf_bw_funcs); + + return 0; +} diff --git a/drivers/gpu/drm/i915/display/intel_dbuf_bw.h b/drivers/gpu/drm/i915/display/intel_dbuf_bw.h new file mode 100644 index 000000000000..61875b9d5969 --- /dev/null +++ b/drivers/gpu/drm/i915/display/intel_dbuf_bw.h @@ -0,0 +1,37 @@ +/* SPDX-License-Identifier: MIT */ +/* + * Copyright © 2025 Intel Corporation + */ + +#ifndef __INTEL_DBUF_BW_H__ +#define __INTEL_DBUF_BW_H__ + +#include <drm/drm_atomic.h> + +struct intel_atomic_state; +struct intel_dbuf_bw_state; +struct intel_crtc; +struct intel_display; +struct intel_global_state; + +struct intel_dbuf_bw_state * +to_intel_dbuf_bw_state(struct intel_global_state *obj_state); + +struct intel_dbuf_bw_state * +intel_atomic_get_old_dbuf_bw_state(struct intel_atomic_state *state); + +struct intel_dbuf_bw_state * +intel_atomic_get_new_dbuf_bw_state(struct intel_atomic_state *state); + +struct intel_dbuf_bw_state * +intel_atomic_get_dbuf_bw_state(struct intel_atomic_state *state); + +int intel_dbuf_bw_init(struct intel_display *display); +int intel_dbuf_bw_calc_min_cdclk(struct intel_atomic_state *state, + bool *need_cdclk_calc); +int intel_dbuf_bw_min_cdclk(struct intel_display *display, + const struct intel_dbuf_bw_state *dbuf_bw_state); +void intel_dbuf_bw_update_hw_state(struct intel_display *display); +void intel_dbuf_bw_crtc_disable_noatomic(struct intel_crtc *crtc); + +#endif /* __INTEL_DBUF_BW_H__ */ diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h index df4da52cbdb3..32664098b407 100644 --- a/drivers/gpu/drm/i915/display/intel_display_core.h +++ b/drivers/gpu/drm/i915/display/intel_display_core.h @@ -369,6 +369,10 @@ struct intel_display { struct intel_global_obj obj; } dbuf; + struct { + struct intel_global_obj obj; + } dbuf_bw; + struct { /* * dkl.phy_lock protects against concurrent access of the diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c index f84a0b26b7a6..38672d2896e3 100644 --- a/drivers/gpu/drm/i915/display/intel_display_driver.c +++ b/drivers/gpu/drm/i915/display/intel_display_driver.c @@ -28,6 +28,7 @@ #include "intel_cdclk.h" #include "intel_color.h" #include "intel_crtc.h" +#include "intel_dbuf_bw.h" #include "intel_display_core.h" #include "intel_display_debugfs.h" #include "intel_display_driver.h" @@ -285,6 +286,10 @@ int intel_display_driver_probe_noirq(struct intel_display *display) if (ret) goto cleanup_wq_unordered; + ret = intel_dbuf_bw_init(display); + if (ret) + goto cleanup_wq_unordered; + ret = intel_bw_init(display); if (ret) goto cleanup_wq_unordered; diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c index 8415f3d703ed..deb877b2aebd 100644 --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c @@ -19,6 +19,7 @@ #include "intel_color.h" #include "intel_crtc.h" #include "intel_crtc_state_dump.h" +#include "intel_dbuf_bw.h" #include "intel_ddi.h" #include "intel_de.h" #include "intel_display.h" @@ -176,6 +177,7 @@ static void intel_crtc_disable_noatomic_complete(struct intel_crtc *crtc) intel_cdclk_crtc_disable_noatomic(crtc); skl_wm_crtc_disable_noatomic(crtc); intel_bw_crtc_disable_noatomic(crtc); + intel_dbuf_bw_crtc_disable_noatomic(crtc); intel_pmdemand_update_port_clock(display, pmdemand_state, pipe, 0); } @@ -872,6 +874,7 @@ static void intel_modeset_readout_hw_state(struct intel_display *display) intel_wm_get_hw_state(display); intel_bw_update_hw_state(display); + intel_dbuf_bw_update_hw_state(display); intel_cdclk_update_hw_state(display); intel_pmdemand_init_pmdemand_params(display, pmdemand_state); diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile index 84321fad3265..88ba3d32802d 100644 --- a/drivers/gpu/drm/xe/Makefile +++ b/drivers/gpu/drm/xe/Makefile @@ -243,6 +243,7 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \ i915-display/intel_crtc_state_dump.o \ i915-display/intel_cursor.o \ i915-display/intel_cx0_phy.o \ + i915-display/intel_dbuf_bw.o \ i915-display/intel_ddi.o \ i915-display/intel_ddi_buf_trans.o \ i915-display/intel_display.o \ -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 1/9] drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff 2025-10-13 20:12 ` [PATCH 1/9] drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff Ville Syrjala @ 2025-10-16 10:39 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 10:39 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.12 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 1/9] drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Currently intel_bw.c contains basically three completely independent > parts: > - SAGV/memory bandwidth handling > - DBuf bandwidth handling > - "Maximum pipe read bandwidth" calculation, which is some kind > of internal per-pipe bandwidth limit. > > Carve out the DBuf bandwdith handling into a separate file since there is no actual dependency between it and the rest of > intel_bw.c. > Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/Makefile | 1 + > drivers/gpu/drm/i915/display/intel_bw.c | 191 ------------ > drivers/gpu/drm/i915/display/intel_bw.h | 4 - > drivers/gpu/drm/i915/display/intel_cdclk.c | 32 +- > drivers/gpu/drm/i915/display/intel_cdclk.h | 7 +- > drivers/gpu/drm/i915/display/intel_dbuf_bw.c | 295 ++++++++++++++++++ drivers/gpu/drm/i915/display/intel_dbuf_bw.h | > 37 +++ > .../gpu/drm/i915/display/intel_display_core.h | 4 + > .../drm/i915/display/intel_display_driver.c | 5 + > .../drm/i915/display/intel_modeset_setup.c | 3 + > drivers/gpu/drm/xe/Makefile | 1 + > 11 files changed, 363 insertions(+), 217 deletions(-) create mode 100644 drivers/gpu/drm/i915/display/intel_dbuf_bw.c > create mode 100644 drivers/gpu/drm/i915/display/intel_dbuf_bw.h > > diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile index 6d7800e25e55..dbdf88b42919 100644 > --- a/drivers/gpu/drm/i915/Makefile > +++ b/drivers/gpu/drm/i915/Makefile > @@ -241,6 +241,7 @@ i915-y += \ > display/intel_crtc.o \ > display/intel_crtc_state_dump.o \ > display/intel_cursor.o \ > + display/intel_dbuf_bw.o \ > display/intel_display.o \ > display/intel_display_conversion.o \ > display/intel_display_driver.o \ > diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c > index b53bcb693e79..a4d16711d336 100644 > --- a/drivers/gpu/drm/i915/display/intel_bw.c > +++ b/drivers/gpu/drm/i915/display/intel_bw.c > @@ -3,16 +3,12 @@ > * Copyright © 2019 Intel Corporation > */ > > -#include <drm/drm_atomic_state_helper.h> > - > #include "soc/intel_dram.h" > > #include "i915_drv.h" > #include "i915_reg.h" > #include "i915_utils.h" > -#include "intel_atomic.h" > #include "intel_bw.h" > -#include "intel_cdclk.h" > #include "intel_crtc.h" > #include "intel_display_core.h" > #include "intel_display_regs.h" > @@ -22,14 +18,8 @@ > #include "intel_uncore.h" > #include "skl_watermark.h" > > -struct intel_dbuf_bw { > - unsigned int max_bw[I915_MAX_DBUF_SLICES]; > - u8 active_planes[I915_MAX_DBUF_SLICES]; > -}; > - > struct intel_bw_state { > struct intel_global_state base; > - struct intel_dbuf_bw dbuf_bw[I915_MAX_PIPES]; > > /* > * Contains a bit mask, used to determine, whether correspondent @@ -1264,184 +1254,6 @@ static int > intel_bw_check_qgv_points(struct intel_display *display, > old_bw_state, new_bw_state); > } > > -static bool intel_dbuf_bw_changed(struct intel_display *display, > - const struct intel_dbuf_bw *old_dbuf_bw, > - const struct intel_dbuf_bw *new_dbuf_bw) > -{ > - enum dbuf_slice slice; > - > - for_each_dbuf_slice(display, slice) { > - if (old_dbuf_bw->max_bw[slice] != new_dbuf_bw->max_bw[slice] || > - old_dbuf_bw->active_planes[slice] != new_dbuf_bw->active_planes[slice]) > - return true; > - } > - > - return false; > -} > - > -static bool intel_bw_state_changed(struct intel_display *display, > - const struct intel_bw_state *old_bw_state, > - const struct intel_bw_state *new_bw_state) > -{ > - enum pipe pipe; > - > - for_each_pipe(display, pipe) { > - const struct intel_dbuf_bw *old_dbuf_bw = > - &old_bw_state->dbuf_bw[pipe]; > - const struct intel_dbuf_bw *new_dbuf_bw = > - &new_bw_state->dbuf_bw[pipe]; > - > - if (intel_dbuf_bw_changed(display, old_dbuf_bw, new_dbuf_bw)) > - return true; > - } > - > - return false; > -} > - > -static void skl_plane_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw, > - struct intel_crtc *crtc, > - enum plane_id plane_id, > - const struct skl_ddb_entry *ddb, > - unsigned int data_rate) > -{ > - struct intel_display *display = to_intel_display(crtc); > - unsigned int dbuf_mask = skl_ddb_dbuf_slice_mask(display, ddb); > - enum dbuf_slice slice; > - > - /* > - * The arbiter can only really guarantee an > - * equal share of the total bw to each plane. > - */ > - for_each_dbuf_slice_in_mask(display, slice, dbuf_mask) { > - dbuf_bw->max_bw[slice] = max(dbuf_bw->max_bw[slice], data_rate); > - dbuf_bw->active_planes[slice] |= BIT(plane_id); > - } > -} > - > -static void skl_crtc_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw, > - const struct intel_crtc_state *crtc_state) > -{ > - struct intel_display *display = to_intel_display(crtc_state); > - struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > - enum plane_id plane_id; > - > - memset(dbuf_bw, 0, sizeof(*dbuf_bw)); > - > - if (!crtc_state->hw.active) > - return; > - > - for_each_plane_id_on_crtc(crtc, plane_id) { > - /* > - * We assume cursors are small enough > - * to not cause bandwidth problems. > - */ > - if (plane_id == PLANE_CURSOR) > - continue; > - > - skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id, > - &crtc_state->wm.skl.plane_ddb[plane_id], > - crtc_state->data_rate[plane_id]); > - > - if (DISPLAY_VER(display) < 11) > - skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id, > - &crtc_state->wm.skl.plane_ddb_y[plane_id], > - crtc_state->data_rate[plane_id]); > - } > -} > - > -/* "Maximum Data Buffer Bandwidth" */ > -static int > -intel_bw_dbuf_min_cdclk(struct intel_display *display, > - const struct intel_bw_state *bw_state) > -{ > - unsigned int total_max_bw = 0; > - enum dbuf_slice slice; > - > - for_each_dbuf_slice(display, slice) { > - int num_active_planes = 0; > - unsigned int max_bw = 0; > - enum pipe pipe; > - > - /* > - * The arbiter can only really guarantee an > - * equal share of the total bw to each plane. > - */ > - for_each_pipe(display, pipe) { > - const struct intel_dbuf_bw *dbuf_bw = &bw_state->dbuf_bw[pipe]; > - > - max_bw = max(dbuf_bw->max_bw[slice], max_bw); > - num_active_planes += hweight8(dbuf_bw->active_planes[slice]); > - } > - max_bw *= num_active_planes; > - > - total_max_bw = max(total_max_bw, max_bw); > - } > - > - return DIV_ROUND_UP(total_max_bw, 64); > -} > - > -int intel_bw_min_cdclk(struct intel_display *display, > - const struct intel_bw_state *bw_state) > -{ > - int min_cdclk; > - > - min_cdclk = intel_bw_dbuf_min_cdclk(display, bw_state); > - > - return min_cdclk; > -} > - > -int intel_bw_calc_min_cdclk(struct intel_atomic_state *state, > - bool *need_cdclk_calc) > -{ > - struct intel_display *display = to_intel_display(state); > - struct intel_bw_state *new_bw_state = NULL; > - const struct intel_bw_state *old_bw_state = NULL; > - const struct intel_crtc_state *old_crtc_state; > - const struct intel_crtc_state *new_crtc_state; > - struct intel_crtc *crtc; > - int ret, i; > - > - if (DISPLAY_VER(display) < 9) > - return 0; > - > - for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, > - new_crtc_state, i) { > - struct intel_dbuf_bw old_dbuf_bw, new_dbuf_bw; > - > - skl_crtc_calc_dbuf_bw(&old_dbuf_bw, old_crtc_state); > - skl_crtc_calc_dbuf_bw(&new_dbuf_bw, new_crtc_state); > - > - if (!intel_dbuf_bw_changed(display, &old_dbuf_bw, &new_dbuf_bw)) > - continue; > - > - new_bw_state = intel_atomic_get_bw_state(state); > - if (IS_ERR(new_bw_state)) > - return PTR_ERR(new_bw_state); > - > - old_bw_state = intel_atomic_get_old_bw_state(state); > - > - new_bw_state->dbuf_bw[crtc->pipe] = new_dbuf_bw; > - } > - > - if (!old_bw_state) > - return 0; > - > - if (intel_bw_state_changed(display, old_bw_state, new_bw_state)) { > - int ret = intel_atomic_lock_global_state(&new_bw_state->base); > - if (ret) > - return ret; > - } > - > - ret = intel_cdclk_update_bw_min_cdclk(state, > - intel_bw_min_cdclk(display, old_bw_state), > - intel_bw_min_cdclk(display, new_bw_state), > - need_cdclk_calc); > - if (ret) > - return ret; > - > - return 0; > -} > - > static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *changed) { > struct intel_display *display = to_intel_display(state); @@ -1647,8 +1459,6 @@ void intel_bw_update_hw_state(struct > intel_display *display) > if (DISPLAY_VER(display) >= 11) > intel_bw_crtc_update(bw_state, crtc_state); > > - skl_crtc_calc_dbuf_bw(&bw_state->dbuf_bw[pipe], crtc_state); > - > /* initially SAGV has been forced off */ > bw_state->pipe_sagv_reject |= BIT(pipe); > } > @@ -1666,7 +1476,6 @@ void intel_bw_crtc_disable_noatomic(struct intel_crtc *crtc) > > bw_state->data_rate[pipe] = 0; > bw_state->num_active_planes[pipe] = 0; > - memset(&bw_state->dbuf_bw[pipe], 0, sizeof(bw_state->dbuf_bw[pipe])); > } > > static struct intel_global_state * > diff --git a/drivers/gpu/drm/i915/display/intel_bw.h b/drivers/gpu/drm/i915/display/intel_bw.h > index 4bb3a637b295..051e163f2f15 100644 > --- a/drivers/gpu/drm/i915/display/intel_bw.h > +++ b/drivers/gpu/drm/i915/display/intel_bw.h > @@ -30,10 +30,6 @@ void intel_bw_init_hw(struct intel_display *display); int intel_bw_init(struct intel_display *display); int > intel_bw_atomic_check(struct intel_atomic_state *state); int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state); > -int intel_bw_calc_min_cdclk(struct intel_atomic_state *state, > - bool *need_cdclk_calc); > -int intel_bw_min_cdclk(struct intel_display *display, > - const struct intel_bw_state *bw_state); > void intel_bw_update_hw_state(struct intel_display *display); void intel_bw_crtc_disable_noatomic(struct intel_crtc *crtc); > > diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c > index f2e092f89ddd..23b9e100d824 100644 > --- a/drivers/gpu/drm/i915/display/intel_cdclk.c > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c > @@ -38,6 +38,7 @@ > #include "intel_bw.h" > #include "intel_cdclk.h" > #include "intel_crtc.h" > +#include "intel_dbuf_bw.h" > #include "intel_de.h" > #include "intel_display_regs.h" > #include "intel_display_types.h" > @@ -133,8 +134,8 @@ struct intel_cdclk_state { > */ > struct intel_cdclk_config actual; > > - /* minimum acceptable cdclk to satisfy bandwidth requirements */ > - int bw_min_cdclk; > + /* minimum acceptable cdclk to satisfy DBUF bandwidth requirements */ > + int dbuf_bw_min_cdclk; > /* minimum acceptable cdclk for each pipe */ > int min_cdclk[I915_MAX_PIPES]; > /* minimum acceptable voltage level for each pipe */ @@ -2891,9 +2892,9 @@ static int > intel_cdclk_update_crtc_min_cdclk(struct intel_atomic_state *state, > return 0; > } > > -int intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, > - int old_min_cdclk, int new_min_cdclk, > - bool *need_cdclk_calc) > +int intel_cdclk_update_dbuf_bw_min_cdclk(struct intel_atomic_state *state, > + int old_min_cdclk, int new_min_cdclk, > + bool *need_cdclk_calc) > { > struct intel_display *display = to_intel_display(state); > struct intel_cdclk_state *cdclk_state; @@ -2910,7 +2911,7 @@ int intel_cdclk_update_bw_min_cdclk(struct > intel_atomic_state *state, > if (IS_ERR(cdclk_state)) > return PTR_ERR(cdclk_state); > > - old_min_cdclk = cdclk_state->bw_min_cdclk; > + old_min_cdclk = cdclk_state->dbuf_bw_min_cdclk; > > if (new_min_cdclk == old_min_cdclk) > return 0; > @@ -2918,7 +2919,7 @@ int intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, > if (!allow_cdclk_decrease && new_min_cdclk < old_min_cdclk) > return 0; > > - cdclk_state->bw_min_cdclk = new_min_cdclk; > + cdclk_state->dbuf_bw_min_cdclk = new_min_cdclk; > > ret = intel_atomic_lock_global_state(&cdclk_state->base); > if (ret) > @@ -2927,7 +2928,7 @@ int intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, > *need_cdclk_calc = true; > > drm_dbg_kms(display->drm, > - "bandwidth min cdclk: %d kHz -> %d kHz\n", > + "dbuf bandwidth min cdclk: %d kHz -> %d kHz\n", > old_min_cdclk, new_min_cdclk); > > return 0; > @@ -2950,7 +2951,7 @@ static int intel_compute_min_cdclk(struct intel_atomic_state *state) > int min_cdclk; > > min_cdclk = cdclk_state->force_min_cdclk; > - min_cdclk = max(min_cdclk, cdclk_state->bw_min_cdclk); > + min_cdclk = max(min_cdclk, cdclk_state->dbuf_bw_min_cdclk); > for_each_pipe(display, pipe) > min_cdclk = max(min_cdclk, cdclk_state->min_cdclk[pipe]); > > @@ -3476,7 +3477,7 @@ int intel_cdclk_atomic_check(struct intel_atomic_state *state) > if (ret) > return ret; > > - ret = intel_bw_calc_min_cdclk(state, &need_cdclk_calc); > + ret = intel_dbuf_bw_calc_min_cdclk(state, &need_cdclk_calc); > if (ret) > return ret; > > @@ -3503,8 +3504,8 @@ int intel_cdclk_atomic_check(struct intel_atomic_state *state) > > void intel_cdclk_update_hw_state(struct intel_display *display) { > - const struct intel_bw_state *bw_state = > - to_intel_bw_state(display->bw.obj.state); > + const struct intel_dbuf_bw_state *dbuf_bw_state = > + to_intel_dbuf_bw_state(display->dbuf_bw.obj.state); > struct intel_cdclk_state *cdclk_state = > to_intel_cdclk_state(display->cdclk.obj.state); > struct intel_crtc *crtc; > @@ -3526,7 +3527,7 @@ void intel_cdclk_update_hw_state(struct intel_display *display) > cdclk_state->min_voltage_level[pipe] = crtc_state->min_voltage_level; > } > > - cdclk_state->bw_min_cdclk = intel_bw_min_cdclk(display, bw_state); > + cdclk_state->dbuf_bw_min_cdclk = intel_dbuf_bw_min_cdclk(display, > +dbuf_bw_state); > } > > void intel_cdclk_crtc_disable_noatomic(struct intel_crtc *crtc) @@ -4020,11 +4021,6 @@ int intel_cdclk_min_cdclk(const struct > intel_cdclk_state *cdclk_state, enum pipe > return cdclk_state->min_cdclk[pipe]; > } > > -int intel_cdclk_bw_min_cdclk(const struct intel_cdclk_state *cdclk_state) -{ > - return cdclk_state->bw_min_cdclk; > -} > - > bool intel_cdclk_pmdemand_needs_update(struct intel_atomic_state *state) { > const struct intel_cdclk_state *new_cdclk_state, *old_cdclk_state; diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.h > b/drivers/gpu/drm/i915/display/intel_cdclk.h > index 72963f6f399a..d9d7a8b3a48a 100644 > --- a/drivers/gpu/drm/i915/display/intel_cdclk.h > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.h > @@ -46,9 +46,9 @@ struct intel_cdclk_state * intel_atomic_get_cdclk_state(struct intel_atomic_state *state); void > intel_cdclk_update_hw_state(struct intel_display *display); void intel_cdclk_crtc_disable_noatomic(struct intel_crtc *crtc); -int > intel_cdclk_update_bw_min_cdclk(struct intel_atomic_state *state, > - int old_min_cdclk, int new_min_cdclk, > - bool *need_cdclk_calc); > +int intel_cdclk_update_dbuf_bw_min_cdclk(struct intel_atomic_state *state, > + int old_min_cdclk, int new_min_cdclk, > + bool *need_cdclk_calc); > > #define to_intel_cdclk_state(global_state) \ > container_of_const((global_state), struct intel_cdclk_state, base) @@ -65,7 +65,6 @@ int intel_cdclk_logical(const struct > intel_cdclk_state *cdclk_state); int intel_cdclk_actual(const struct intel_cdclk_state *cdclk_state); int > intel_cdclk_actual_voltage_level(const struct intel_cdclk_state *cdclk_state); int intel_cdclk_min_cdclk(const struct > intel_cdclk_state *cdclk_state, enum pipe pipe); -int intel_cdclk_bw_min_cdclk(const struct intel_cdclk_state *cdclk_state); bool > intel_cdclk_pmdemand_needs_update(struct intel_atomic_state *state); void intel_cdclk_force_min_cdclk(struct > intel_cdclk_state *cdclk_state, int force_min_cdclk); void intel_cdclk_read_hw(struct intel_display *display); diff --git > a/drivers/gpu/drm/i915/display/intel_dbuf_bw.c b/drivers/gpu/drm/i915/display/intel_dbuf_bw.c > new file mode 100644 > index 000000000000..8b8894c37f63 > --- /dev/null > +++ b/drivers/gpu/drm/i915/display/intel_dbuf_bw.c > @@ -0,0 +1,295 @@ > +// SPDX-License-Identifier: MIT > +/* > + * Copyright © 2025 Intel Corporation > + */ > + > +#include <drm/drm_print.h> > + > +#include "intel_dbuf_bw.h" > +#include "intel_display_core.h" > +#include "intel_display_types.h" > +#include "skl_watermark.h" > + > +struct intel_dbuf_bw { > + unsigned int max_bw[I915_MAX_DBUF_SLICES]; > + u8 active_planes[I915_MAX_DBUF_SLICES]; > +}; > + > +struct intel_dbuf_bw_state { > + struct intel_global_state base; > + struct intel_dbuf_bw dbuf_bw[I915_MAX_PIPES]; }; > + > +struct intel_dbuf_bw_state *to_intel_dbuf_bw_state(struct > +intel_global_state *obj_state) { > + return container_of(obj_state, struct intel_dbuf_bw_state, base); } > + > +struct intel_dbuf_bw_state * > +intel_atomic_get_old_dbuf_bw_state(struct intel_atomic_state *state) { > + struct intel_display *display = to_intel_display(state); > + struct intel_global_state *dbuf_bw_state; > + > + dbuf_bw_state = intel_atomic_get_old_global_obj_state(state, > +&display->dbuf_bw.obj); > + > + return to_intel_dbuf_bw_state(dbuf_bw_state); > +} > + > +struct intel_dbuf_bw_state * > +intel_atomic_get_new_dbuf_bw_state(struct intel_atomic_state *state) { > + struct intel_display *display = to_intel_display(state); > + struct intel_global_state *dbuf_bw_state; > + > + dbuf_bw_state = intel_atomic_get_new_global_obj_state(state, > +&display->dbuf_bw.obj); > + > + return to_intel_dbuf_bw_state(dbuf_bw_state); > +} > + > +struct intel_dbuf_bw_state * > +intel_atomic_get_dbuf_bw_state(struct intel_atomic_state *state) { > + struct intel_display *display = to_intel_display(state); > + struct intel_global_state *dbuf_bw_state; > + > + dbuf_bw_state = intel_atomic_get_global_obj_state(state, &display->dbuf_bw.obj); > + if (IS_ERR(dbuf_bw_state)) > + return ERR_CAST(dbuf_bw_state); > + > + return to_intel_dbuf_bw_state(dbuf_bw_state); > +} > + > +static bool intel_dbuf_bw_changed(struct intel_display *display, > + const struct intel_dbuf_bw *old_dbuf_bw, > + const struct intel_dbuf_bw *new_dbuf_bw) { > + enum dbuf_slice slice; > + > + for_each_dbuf_slice(display, slice) { > + if (old_dbuf_bw->max_bw[slice] != new_dbuf_bw->max_bw[slice] || > + old_dbuf_bw->active_planes[slice] != new_dbuf_bw->active_planes[slice]) > + return true; > + } > + > + return false; > +} > + > +static bool intel_dbuf_bw_state_changed(struct intel_display *display, > + const struct intel_dbuf_bw_state *old_dbuf_bw_state, > + const struct intel_dbuf_bw_state *new_dbuf_bw_state) { > + enum pipe pipe; > + > + for_each_pipe(display, pipe) { > + const struct intel_dbuf_bw *old_dbuf_bw = > + &old_dbuf_bw_state->dbuf_bw[pipe]; > + const struct intel_dbuf_bw *new_dbuf_bw = > + &new_dbuf_bw_state->dbuf_bw[pipe]; > + > + if (intel_dbuf_bw_changed(display, old_dbuf_bw, new_dbuf_bw)) > + return true; > + } > + > + return false; > +} > + > +static void skl_plane_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw, > + struct intel_crtc *crtc, > + enum plane_id plane_id, > + const struct skl_ddb_entry *ddb, > + unsigned int data_rate) > +{ > + struct intel_display *display = to_intel_display(crtc); > + unsigned int dbuf_mask = skl_ddb_dbuf_slice_mask(display, ddb); > + enum dbuf_slice slice; > + > + /* > + * The arbiter can only really guarantee an > + * equal share of the total bw to each plane. > + */ > + for_each_dbuf_slice_in_mask(display, slice, dbuf_mask) { > + dbuf_bw->max_bw[slice] = max(dbuf_bw->max_bw[slice], data_rate); > + dbuf_bw->active_planes[slice] |= BIT(plane_id); > + } > +} > + > +static void skl_crtc_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw, > + const struct intel_crtc_state *crtc_state) { > + struct intel_display *display = to_intel_display(crtc_state); > + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > + enum plane_id plane_id; > + > + memset(dbuf_bw, 0, sizeof(*dbuf_bw)); > + > + if (!crtc_state->hw.active) > + return; > + > + for_each_plane_id_on_crtc(crtc, plane_id) { > + /* > + * We assume cursors are small enough > + * to not cause bandwidth problems. > + */ > + if (plane_id == PLANE_CURSOR) > + continue; > + > + skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id, > + &crtc_state->wm.skl.plane_ddb[plane_id], > + crtc_state->data_rate[plane_id]); > + > + if (DISPLAY_VER(display) < 11) > + skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id, > + &crtc_state->wm.skl.plane_ddb_y[plane_id], > + crtc_state->data_rate[plane_id]); > + } > +} > + > +/* "Maximum Data Buffer Bandwidth" */ > +int intel_dbuf_bw_min_cdclk(struct intel_display *display, > + const struct intel_dbuf_bw_state *dbuf_bw_state) { > + unsigned int total_max_bw = 0; > + enum dbuf_slice slice; > + > + for_each_dbuf_slice(display, slice) { > + int num_active_planes = 0; > + unsigned int max_bw = 0; > + enum pipe pipe; > + > + /* > + * The arbiter can only really guarantee an > + * equal share of the total bw to each plane. > + */ > + for_each_pipe(display, pipe) { > + const struct intel_dbuf_bw *dbuf_bw = &dbuf_bw_state->dbuf_bw[pipe]; > + > + max_bw = max(dbuf_bw->max_bw[slice], max_bw); > + num_active_planes += hweight8(dbuf_bw->active_planes[slice]); > + } > + max_bw *= num_active_planes; > + > + total_max_bw = max(total_max_bw, max_bw); > + } > + > + return DIV_ROUND_UP(total_max_bw, 64); } > + > +int intel_dbuf_bw_calc_min_cdclk(struct intel_atomic_state *state, > + bool *need_cdclk_calc) > +{ > + struct intel_display *display = to_intel_display(state); > + struct intel_dbuf_bw_state *new_dbuf_bw_state = NULL; > + const struct intel_dbuf_bw_state *old_dbuf_bw_state = NULL; > + const struct intel_crtc_state *old_crtc_state; > + const struct intel_crtc_state *new_crtc_state; > + struct intel_crtc *crtc; > + int ret, i; > + > + if (DISPLAY_VER(display) < 9) > + return 0; > + > + for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, > + new_crtc_state, i) { > + struct intel_dbuf_bw old_dbuf_bw, new_dbuf_bw; > + > + skl_crtc_calc_dbuf_bw(&old_dbuf_bw, old_crtc_state); > + skl_crtc_calc_dbuf_bw(&new_dbuf_bw, new_crtc_state); > + > + if (!intel_dbuf_bw_changed(display, &old_dbuf_bw, &new_dbuf_bw)) > + continue; > + > + new_dbuf_bw_state = intel_atomic_get_dbuf_bw_state(state); > + if (IS_ERR(new_dbuf_bw_state)) > + return PTR_ERR(new_dbuf_bw_state); > + > + old_dbuf_bw_state = intel_atomic_get_old_dbuf_bw_state(state); > + > + new_dbuf_bw_state->dbuf_bw[crtc->pipe] = new_dbuf_bw; > + } > + > + if (!old_dbuf_bw_state) > + return 0; > + > + if (intel_dbuf_bw_state_changed(display, old_dbuf_bw_state, new_dbuf_bw_state)) { > + ret = intel_atomic_lock_global_state(&new_dbuf_bw_state->base); > + if (ret) > + return ret; > + } > + > + ret = intel_cdclk_update_dbuf_bw_min_cdclk(state, > + intel_dbuf_bw_min_cdclk(display, old_dbuf_bw_state), > + intel_dbuf_bw_min_cdclk(display, new_dbuf_bw_state), > + need_cdclk_calc); > + if (ret) > + return ret; > + > + return 0; > +} > + > +void intel_dbuf_bw_update_hw_state(struct intel_display *display) { > + struct intel_dbuf_bw_state *dbuf_bw_state = > + to_intel_dbuf_bw_state(display->dbuf_bw.obj.state); > + struct intel_crtc *crtc; > + > + if (DISPLAY_VER(display) < 9) > + return; > + > + for_each_intel_crtc(display->drm, crtc) { > + const struct intel_crtc_state *crtc_state = > + to_intel_crtc_state(crtc->base.state); > + > + skl_crtc_calc_dbuf_bw(&dbuf_bw_state->dbuf_bw[crtc->pipe], crtc_state); > + } > +} > + > +void intel_dbuf_bw_crtc_disable_noatomic(struct intel_crtc *crtc) { > + struct intel_display *display = to_intel_display(crtc); > + struct intel_dbuf_bw_state *dbuf_bw_state = > + to_intel_dbuf_bw_state(display->dbuf_bw.obj.state); > + enum pipe pipe = crtc->pipe; > + > + if (DISPLAY_VER(display) < 9) > + return; > + > + memset(&dbuf_bw_state->dbuf_bw[pipe], 0, > +sizeof(dbuf_bw_state->dbuf_bw[pipe])); > +} > + > +static struct intel_global_state * > +intel_dbuf_bw_duplicate_state(struct intel_global_obj *obj) { > + struct intel_dbuf_bw_state *state; > + > + state = kmemdup(obj->state, sizeof(*state), GFP_KERNEL); > + if (!state) > + return NULL; > + > + return &state->base; > +} > + > +static void intel_dbuf_bw_destroy_state(struct intel_global_obj *obj, > + struct intel_global_state *state) > +{ > + kfree(state); > +} > + > +static const struct intel_global_state_funcs intel_dbuf_bw_funcs = { > + .atomic_duplicate_state = intel_dbuf_bw_duplicate_state, > + .atomic_destroy_state = intel_dbuf_bw_destroy_state, }; > + > +int intel_dbuf_bw_init(struct intel_display *display) { > + struct intel_dbuf_bw_state *state; > + > + state = kzalloc(sizeof(*state), GFP_KERNEL); > + if (!state) > + return -ENOMEM; > + > + intel_atomic_global_obj_init(display, &display->dbuf_bw.obj, > + &state->base, &intel_dbuf_bw_funcs); > + > + return 0; > +} > diff --git a/drivers/gpu/drm/i915/display/intel_dbuf_bw.h b/drivers/gpu/drm/i915/display/intel_dbuf_bw.h > new file mode 100644 > index 000000000000..61875b9d5969 > --- /dev/null > +++ b/drivers/gpu/drm/i915/display/intel_dbuf_bw.h > @@ -0,0 +1,37 @@ > +/* SPDX-License-Identifier: MIT */ > +/* > + * Copyright © 2025 Intel Corporation > + */ > + > +#ifndef __INTEL_DBUF_BW_H__ > +#define __INTEL_DBUF_BW_H__ > + > +#include <drm/drm_atomic.h> > + > +struct intel_atomic_state; > +struct intel_dbuf_bw_state; > +struct intel_crtc; > +struct intel_display; > +struct intel_global_state; > + > +struct intel_dbuf_bw_state * > +to_intel_dbuf_bw_state(struct intel_global_state *obj_state); > + > +struct intel_dbuf_bw_state * > +intel_atomic_get_old_dbuf_bw_state(struct intel_atomic_state *state); > + > +struct intel_dbuf_bw_state * > +intel_atomic_get_new_dbuf_bw_state(struct intel_atomic_state *state); > + > +struct intel_dbuf_bw_state * > +intel_atomic_get_dbuf_bw_state(struct intel_atomic_state *state); > + > +int intel_dbuf_bw_init(struct intel_display *display); int > +intel_dbuf_bw_calc_min_cdclk(struct intel_atomic_state *state, > + bool *need_cdclk_calc); > +int intel_dbuf_bw_min_cdclk(struct intel_display *display, > + const struct intel_dbuf_bw_state *dbuf_bw_state); void > +intel_dbuf_bw_update_hw_state(struct intel_display *display); void > +intel_dbuf_bw_crtc_disable_noatomic(struct intel_crtc *crtc); > + > +#endif /* __INTEL_DBUF_BW_H__ */ > diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h > index df4da52cbdb3..32664098b407 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_core.h > +++ b/drivers/gpu/drm/i915/display/intel_display_core.h > @@ -369,6 +369,10 @@ struct intel_display { > struct intel_global_obj obj; > } dbuf; > > + struct { > + struct intel_global_obj obj; > + } dbuf_bw; > + > struct { > /* > * dkl.phy_lock protects against concurrent access of the diff --git > a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c > index f84a0b26b7a6..38672d2896e3 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_driver.c > +++ b/drivers/gpu/drm/i915/display/intel_display_driver.c > @@ -28,6 +28,7 @@ > #include "intel_cdclk.h" > #include "intel_color.h" > #include "intel_crtc.h" > +#include "intel_dbuf_bw.h" > #include "intel_display_core.h" > #include "intel_display_debugfs.h" > #include "intel_display_driver.h" > @@ -285,6 +286,10 @@ int intel_display_driver_probe_noirq(struct intel_display *display) > if (ret) > goto cleanup_wq_unordered; > > + ret = intel_dbuf_bw_init(display); > + if (ret) > + goto cleanup_wq_unordered; > + > ret = intel_bw_init(display); > if (ret) > goto cleanup_wq_unordered; > diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c > index 8415f3d703ed..deb877b2aebd 100644 > --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c > +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c > @@ -19,6 +19,7 @@ > #include "intel_color.h" > #include "intel_crtc.h" > #include "intel_crtc_state_dump.h" > +#include "intel_dbuf_bw.h" > #include "intel_ddi.h" > #include "intel_de.h" > #include "intel_display.h" > @@ -176,6 +177,7 @@ static void intel_crtc_disable_noatomic_complete(struct intel_crtc *crtc) > intel_cdclk_crtc_disable_noatomic(crtc); > skl_wm_crtc_disable_noatomic(crtc); > intel_bw_crtc_disable_noatomic(crtc); > + intel_dbuf_bw_crtc_disable_noatomic(crtc); > > intel_pmdemand_update_port_clock(display, pmdemand_state, pipe, 0); } @@ -872,6 +874,7 @@ static void > intel_modeset_readout_hw_state(struct intel_display *display) > intel_wm_get_hw_state(display); > > intel_bw_update_hw_state(display); > + intel_dbuf_bw_update_hw_state(display); > intel_cdclk_update_hw_state(display); > > intel_pmdemand_init_pmdemand_params(display, pmdemand_state); diff --git a/drivers/gpu/drm/xe/Makefile > b/drivers/gpu/drm/xe/Makefile index 84321fad3265..88ba3d32802d 100644 > --- a/drivers/gpu/drm/xe/Makefile > +++ b/drivers/gpu/drm/xe/Makefile > @@ -243,6 +243,7 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \ > i915-display/intel_crtc_state_dump.o \ > i915-display/intel_cursor.o \ > i915-display/intel_cx0_phy.o \ > + i915-display/intel_dbuf_bw.o \ > i915-display/intel_ddi.o \ > i915-display/intel_ddi_buf_trans.o \ > i915-display/intel_display.o \ > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 2/9] drm/i915: s/"not not"/"not"/ 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala 2025-10-13 20:12 ` [PATCH 1/9] drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 10:41 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 3/9] drm/i915/bw: Relocate intel_bw_crtc_min_cdclk() Ville Syrjala ` (8 subsequent siblings) 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> Elimiante the repeated "not not" in the bw code comments. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_bw.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c index a4d16711d336..d03da1ed4541 100644 --- a/drivers/gpu/drm/i915/display/intel_bw.c +++ b/drivers/gpu/drm/i915/display/intel_bw.c @@ -831,7 +831,7 @@ static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_stat { /* * We assume cursors are small enough - * to not not cause bandwidth problems. + * to not cause bandwidth problems. */ return hweight8(crtc_state->active_planes & ~BIT(PLANE_CURSOR)); } @@ -846,7 +846,7 @@ static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_ for_each_plane_id_on_crtc(crtc, plane_id) { /* * We assume cursors are small enough - * to not not cause bandwidth problems. + * to not cause bandwidth problems. */ if (plane_id == PLANE_CURSOR) continue; -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 2/9] drm/i915: s/"not not"/"not"/ 2025-10-13 20:12 ` [PATCH 2/9] drm/i915: s/"not not"/"not"/ Ville Syrjala @ 2025-10-16 10:41 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 10:41 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-xe <intel-xe-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.12 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 2/9] drm/i915: s/"not not"/"not"/ > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Elimiante the repeated "not not" in the bw code comments. > Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_bw.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c > index a4d16711d336..d03da1ed4541 100644 > --- a/drivers/gpu/drm/i915/display/intel_bw.c > +++ b/drivers/gpu/drm/i915/display/intel_bw.c > @@ -831,7 +831,7 @@ static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_stat { > /* > * We assume cursors are small enough > - * to not not cause bandwidth problems. > + * to not cause bandwidth problems. > */ > return hweight8(crtc_state->active_planes & ~BIT(PLANE_CURSOR)); } @@ -846,7 +846,7 @@ static unsigned int > intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_ > for_each_plane_id_on_crtc(crtc, plane_id) { > /* > * We assume cursors are small enough > - * to not not cause bandwidth problems. > + * to not cause bandwidth problems. > */ > if (plane_id == PLANE_CURSOR) > continue; > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 3/9] drm/i915/bw: Relocate intel_bw_crtc_min_cdclk() 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala 2025-10-13 20:12 ` [PATCH 1/9] drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff Ville Syrjala 2025-10-13 20:12 ` [PATCH 2/9] drm/i915: s/"not not"/"not"/ Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 10:43 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 4/9] drm/i915/ips: Eliminate the cdclk_state stuff from hsw_ips_compute_config() Ville Syrjala ` (7 subsequent siblings) 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> intel_bw_crtc_min_cdclk() (aka. the thing that deals with what bspec calls "Maximum Pipe Read Bandwidth") doesn't really have anything to do with the rest of intel_bw.c (which is all about SAGV/QGV and memory bandwidth). Move it into intel_crtc.c (for the lack of a better place). And I don't really want to call intel_bw.c functions from intel_crtc.c, so move out intel_bw_crtc_data_rate() as well. And when we move that we pretty much have to move intel_bw_crtc_num_active_planes() as well since the two are meant to be used as a pair (they both implement the same "ignore the cursor" logic). And in an effort to keep the namespaces at least semi-sensible we flip the intel_bw_crtc_ prefix into intel_crtc_bw_. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_bw.c | 56 +++------------------- drivers/gpu/drm/i915/display/intel_bw.h | 1 - drivers/gpu/drm/i915/display/intel_cdclk.c | 3 +- drivers/gpu/drm/i915/display/intel_crtc.c | 44 +++++++++++++++++ drivers/gpu/drm/i915/display/intel_crtc.h | 4 ++ 5 files changed, 55 insertions(+), 53 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c index d03da1ed4541..92a060e02cf3 100644 --- a/drivers/gpu/drm/i915/display/intel_bw.c +++ b/drivers/gpu/drm/i915/display/intel_bw.c @@ -827,50 +827,6 @@ void intel_bw_init_hw(struct intel_display *display) icl_get_bw_info(display, dram_info, &icl_sa_info); } -static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_state *crtc_state) -{ - /* - * We assume cursors are small enough - * to not cause bandwidth problems. - */ - return hweight8(crtc_state->active_planes & ~BIT(PLANE_CURSOR)); -} - -static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_state) -{ - struct intel_display *display = to_intel_display(crtc_state); - struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); - unsigned int data_rate = 0; - enum plane_id plane_id; - - for_each_plane_id_on_crtc(crtc, plane_id) { - /* - * We assume cursors are small enough - * to not cause bandwidth problems. - */ - if (plane_id == PLANE_CURSOR) - continue; - - data_rate += crtc_state->data_rate[plane_id]; - - if (DISPLAY_VER(display) < 11) - data_rate += crtc_state->data_rate_y[plane_id]; - } - - return data_rate; -} - -/* "Maximum Pipe Read Bandwidth" */ -int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state) -{ - struct intel_display *display = to_intel_display(crtc_state); - - if (DISPLAY_VER(display) < 12) - return 0; - - return DIV_ROUND_UP_ULL(mul_u32_u32(intel_bw_crtc_data_rate(crtc_state), 10), 512); -} - static unsigned int intel_bw_num_active_planes(struct intel_display *display, const struct intel_bw_state *bw_state) { @@ -1264,13 +1220,13 @@ static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *chan for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) { unsigned int old_data_rate = - intel_bw_crtc_data_rate(old_crtc_state); + intel_crtc_bw_data_rate(old_crtc_state); unsigned int new_data_rate = - intel_bw_crtc_data_rate(new_crtc_state); + intel_crtc_bw_data_rate(new_crtc_state); unsigned int old_active_planes = - intel_bw_crtc_num_active_planes(old_crtc_state); + intel_crtc_bw_num_active_planes(old_crtc_state); unsigned int new_active_planes = - intel_bw_crtc_num_active_planes(new_crtc_state); + intel_crtc_bw_num_active_planes(new_crtc_state); struct intel_bw_state *new_bw_state; /* @@ -1426,9 +1382,9 @@ static void intel_bw_crtc_update(struct intel_bw_state *bw_state, struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); bw_state->data_rate[crtc->pipe] = - intel_bw_crtc_data_rate(crtc_state); + intel_crtc_bw_data_rate(crtc_state); bw_state->num_active_planes[crtc->pipe] = - intel_bw_crtc_num_active_planes(crtc_state); + intel_crtc_bw_num_active_planes(crtc_state); drm_dbg_kms(display->drm, "pipe %c data rate %u num active planes %u\n", pipe_name(crtc->pipe), diff --git a/drivers/gpu/drm/i915/display/intel_bw.h b/drivers/gpu/drm/i915/display/intel_bw.h index 051e163f2f15..99b447388245 100644 --- a/drivers/gpu/drm/i915/display/intel_bw.h +++ b/drivers/gpu/drm/i915/display/intel_bw.h @@ -29,7 +29,6 @@ intel_atomic_get_bw_state(struct intel_atomic_state *state); void intel_bw_init_hw(struct intel_display *display); int intel_bw_init(struct intel_display *display); int intel_bw_atomic_check(struct intel_atomic_state *state); -int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state); void intel_bw_update_hw_state(struct intel_display *display); void intel_bw_crtc_disable_noatomic(struct intel_crtc *crtc); diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c index 23b9e100d824..80a6c98eea5d 100644 --- a/drivers/gpu/drm/i915/display/intel_cdclk.c +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c @@ -35,7 +35,6 @@ #include "i915_utils.h" #include "intel_atomic.h" #include "intel_audio.h" -#include "intel_bw.h" #include "intel_cdclk.h" #include "intel_crtc.h" #include "intel_dbuf_bw.h" @@ -2838,7 +2837,7 @@ static int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_stat return 0; min_cdclk = intel_pixel_rate_to_cdclk(crtc_state); - min_cdclk = max(min_cdclk, intel_bw_crtc_min_cdclk(crtc_state)); + min_cdclk = max(min_cdclk, intel_crtc_bw_min_cdclk(crtc_state)); min_cdclk = max(min_cdclk, hsw_ips_min_cdclk(crtc_state)); min_cdclk = max(min_cdclk, intel_audio_min_cdclk(crtc_state)); min_cdclk = max(min_cdclk, vlv_dsi_min_cdclk(crtc_state)); diff --git a/drivers/gpu/drm/i915/display/intel_crtc.c b/drivers/gpu/drm/i915/display/intel_crtc.c index 7b39c3a5887c..d300ba1dcd2c 100644 --- a/drivers/gpu/drm/i915/display/intel_crtc.c +++ b/drivers/gpu/drm/i915/display/intel_crtc.c @@ -795,3 +795,47 @@ bool intel_any_crtc_active_changed(struct intel_atomic_state *state) return false; } + +unsigned int intel_crtc_bw_num_active_planes(const struct intel_crtc_state *crtc_state) +{ + /* + * We assume cursors are small enough + * to not cause bandwidth problems. + */ + return hweight8(crtc_state->active_planes & ~BIT(PLANE_CURSOR)); +} + +unsigned int intel_crtc_bw_data_rate(const struct intel_crtc_state *crtc_state) +{ + struct intel_display *display = to_intel_display(crtc_state); + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); + unsigned int data_rate = 0; + enum plane_id plane_id; + + for_each_plane_id_on_crtc(crtc, plane_id) { + /* + * We assume cursors are small enough + * to not cause bandwidth problems. + */ + if (plane_id == PLANE_CURSOR) + continue; + + data_rate += crtc_state->data_rate[plane_id]; + + if (DISPLAY_VER(display) < 11) + data_rate += crtc_state->data_rate_y[plane_id]; + } + + return data_rate; +} + +/* "Maximum Pipe Read Bandwidth" */ +int intel_crtc_bw_min_cdclk(const struct intel_crtc_state *crtc_state) +{ + struct intel_display *display = to_intel_display(crtc_state); + + if (DISPLAY_VER(display) < 12) + return 0; + + return DIV_ROUND_UP_ULL(mul_u32_u32(intel_crtc_bw_data_rate(crtc_state), 10), 512); +} diff --git a/drivers/gpu/drm/i915/display/intel_crtc.h b/drivers/gpu/drm/i915/display/intel_crtc.h index cee09e7cd3dc..07917e8a9ae3 100644 --- a/drivers/gpu/drm/i915/display/intel_crtc.h +++ b/drivers/gpu/drm/i915/display/intel_crtc.h @@ -65,4 +65,8 @@ bool intel_any_crtc_active_changed(struct intel_atomic_state *state); bool intel_crtc_active_changed(const struct intel_crtc_state *old_crtc_state, const struct intel_crtc_state *new_crtc_state); +unsigned int intel_crtc_bw_num_active_planes(const struct intel_crtc_state *crtc_state); +unsigned int intel_crtc_bw_data_rate(const struct intel_crtc_state *crtc_state); +int intel_crtc_bw_min_cdclk(const struct intel_crtc_state *crtc_state); + #endif -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 3/9] drm/i915/bw: Relocate intel_bw_crtc_min_cdclk() 2025-10-13 20:12 ` [PATCH 3/9] drm/i915/bw: Relocate intel_bw_crtc_min_cdclk() Ville Syrjala @ 2025-10-16 10:43 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 10:43 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-xe <intel-xe-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.13 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 3/9] drm/i915/bw: Relocate intel_bw_crtc_min_cdclk() > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > intel_bw_crtc_min_cdclk() (aka. the thing that deals with what bspec calls "Maximum Pipe Read Bandwidth") doesn't really have > anything to do with the rest of intel_bw.c (which is all about SAGV/QGV and memory bandwidth). Move it into intel_crtc.c (for the > lack of a better place). > > And I don't really want to call intel_bw.c functions from intel_crtc.c, so move out intel_bw_crtc_data_rate() as well. And when we > move that we pretty much have to move intel_bw_crtc_num_active_planes() as well since the two are meant to be used as a pair > (they both implement the same "ignore the cursor" logic). > > And in an effort to keep the namespaces at least semi-sensible we flip the intel_bw_crtc_ prefix into intel_crtc_bw_. > Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_bw.c | 56 +++------------------- > drivers/gpu/drm/i915/display/intel_bw.h | 1 - > drivers/gpu/drm/i915/display/intel_cdclk.c | 3 +- drivers/gpu/drm/i915/display/intel_crtc.c | 44 +++++++++++++++++ > drivers/gpu/drm/i915/display/intel_crtc.h | 4 ++ > 5 files changed, 55 insertions(+), 53 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c > index d03da1ed4541..92a060e02cf3 100644 > --- a/drivers/gpu/drm/i915/display/intel_bw.c > +++ b/drivers/gpu/drm/i915/display/intel_bw.c > @@ -827,50 +827,6 @@ void intel_bw_init_hw(struct intel_display *display) > icl_get_bw_info(display, dram_info, &icl_sa_info); } > > -static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_state *crtc_state) -{ > - /* > - * We assume cursors are small enough > - * to not cause bandwidth problems. > - */ > - return hweight8(crtc_state->active_planes & ~BIT(PLANE_CURSOR)); > -} > - > -static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_state) -{ > - struct intel_display *display = to_intel_display(crtc_state); > - struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > - unsigned int data_rate = 0; > - enum plane_id plane_id; > - > - for_each_plane_id_on_crtc(crtc, plane_id) { > - /* > - * We assume cursors are small enough > - * to not cause bandwidth problems. > - */ > - if (plane_id == PLANE_CURSOR) > - continue; > - > - data_rate += crtc_state->data_rate[plane_id]; > - > - if (DISPLAY_VER(display) < 11) > - data_rate += crtc_state->data_rate_y[plane_id]; > - } > - > - return data_rate; > -} > - > -/* "Maximum Pipe Read Bandwidth" */ > -int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state) -{ > - struct intel_display *display = to_intel_display(crtc_state); > - > - if (DISPLAY_VER(display) < 12) > - return 0; > - > - return DIV_ROUND_UP_ULL(mul_u32_u32(intel_bw_crtc_data_rate(crtc_state), 10), 512); > -} > - > static unsigned int intel_bw_num_active_planes(struct intel_display *display, > const struct intel_bw_state *bw_state) { @@ -1264,13 +1220,13 @@ static int > intel_bw_check_data_rate(struct intel_atomic_state *state, bool *chan > for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, > new_crtc_state, i) { > unsigned int old_data_rate = > - intel_bw_crtc_data_rate(old_crtc_state); > + intel_crtc_bw_data_rate(old_crtc_state); > unsigned int new_data_rate = > - intel_bw_crtc_data_rate(new_crtc_state); > + intel_crtc_bw_data_rate(new_crtc_state); > unsigned int old_active_planes = > - intel_bw_crtc_num_active_planes(old_crtc_state); > + intel_crtc_bw_num_active_planes(old_crtc_state); > unsigned int new_active_planes = > - intel_bw_crtc_num_active_planes(new_crtc_state); > + intel_crtc_bw_num_active_planes(new_crtc_state); > struct intel_bw_state *new_bw_state; > > /* > @@ -1426,9 +1382,9 @@ static void intel_bw_crtc_update(struct intel_bw_state *bw_state, > struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > > bw_state->data_rate[crtc->pipe] = > - intel_bw_crtc_data_rate(crtc_state); > + intel_crtc_bw_data_rate(crtc_state); > bw_state->num_active_planes[crtc->pipe] = > - intel_bw_crtc_num_active_planes(crtc_state); > + intel_crtc_bw_num_active_planes(crtc_state); > > drm_dbg_kms(display->drm, "pipe %c data rate %u num active planes %u\n", > pipe_name(crtc->pipe), > diff --git a/drivers/gpu/drm/i915/display/intel_bw.h b/drivers/gpu/drm/i915/display/intel_bw.h > index 051e163f2f15..99b447388245 100644 > --- a/drivers/gpu/drm/i915/display/intel_bw.h > +++ b/drivers/gpu/drm/i915/display/intel_bw.h > @@ -29,7 +29,6 @@ intel_atomic_get_bw_state(struct intel_atomic_state *state); void intel_bw_init_hw(struct intel_display > *display); int intel_bw_init(struct intel_display *display); int intel_bw_atomic_check(struct intel_atomic_state *state); -int > intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state); void intel_bw_update_hw_state(struct intel_display > *display); void intel_bw_crtc_disable_noatomic(struct intel_crtc *crtc); > > diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c > index 23b9e100d824..80a6c98eea5d 100644 > --- a/drivers/gpu/drm/i915/display/intel_cdclk.c > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c > @@ -35,7 +35,6 @@ > #include "i915_utils.h" > #include "intel_atomic.h" > #include "intel_audio.h" > -#include "intel_bw.h" > #include "intel_cdclk.h" > #include "intel_crtc.h" > #include "intel_dbuf_bw.h" > @@ -2838,7 +2837,7 @@ static int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_stat > return 0; > > min_cdclk = intel_pixel_rate_to_cdclk(crtc_state); > - min_cdclk = max(min_cdclk, intel_bw_crtc_min_cdclk(crtc_state)); > + min_cdclk = max(min_cdclk, intel_crtc_bw_min_cdclk(crtc_state)); > min_cdclk = max(min_cdclk, hsw_ips_min_cdclk(crtc_state)); > min_cdclk = max(min_cdclk, intel_audio_min_cdclk(crtc_state)); > min_cdclk = max(min_cdclk, vlv_dsi_min_cdclk(crtc_state)); diff --git a/drivers/gpu/drm/i915/display/intel_crtc.c > b/drivers/gpu/drm/i915/display/intel_crtc.c > index 7b39c3a5887c..d300ba1dcd2c 100644 > --- a/drivers/gpu/drm/i915/display/intel_crtc.c > +++ b/drivers/gpu/drm/i915/display/intel_crtc.c > @@ -795,3 +795,47 @@ bool intel_any_crtc_active_changed(struct intel_atomic_state *state) > > return false; > } > + > +unsigned int intel_crtc_bw_num_active_planes(const struct > +intel_crtc_state *crtc_state) { > + /* > + * We assume cursors are small enough > + * to not cause bandwidth problems. > + */ > + return hweight8(crtc_state->active_planes & ~BIT(PLANE_CURSOR)); } > + > +unsigned int intel_crtc_bw_data_rate(const struct intel_crtc_state > +*crtc_state) { > + struct intel_display *display = to_intel_display(crtc_state); > + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > + unsigned int data_rate = 0; > + enum plane_id plane_id; > + > + for_each_plane_id_on_crtc(crtc, plane_id) { > + /* > + * We assume cursors are small enough > + * to not cause bandwidth problems. > + */ > + if (plane_id == PLANE_CURSOR) > + continue; > + > + data_rate += crtc_state->data_rate[plane_id]; > + > + if (DISPLAY_VER(display) < 11) > + data_rate += crtc_state->data_rate_y[plane_id]; > + } > + > + return data_rate; > +} > + > +/* "Maximum Pipe Read Bandwidth" */ > +int intel_crtc_bw_min_cdclk(const struct intel_crtc_state *crtc_state) > +{ > + struct intel_display *display = to_intel_display(crtc_state); > + > + if (DISPLAY_VER(display) < 12) > + return 0; > + > + return > +DIV_ROUND_UP_ULL(mul_u32_u32(intel_crtc_bw_data_rate(crtc_state), 10), > +512); } > diff --git a/drivers/gpu/drm/i915/display/intel_crtc.h b/drivers/gpu/drm/i915/display/intel_crtc.h > index cee09e7cd3dc..07917e8a9ae3 100644 > --- a/drivers/gpu/drm/i915/display/intel_crtc.h > +++ b/drivers/gpu/drm/i915/display/intel_crtc.h > @@ -65,4 +65,8 @@ bool intel_any_crtc_active_changed(struct intel_atomic_state *state); bool > intel_crtc_active_changed(const struct intel_crtc_state *old_crtc_state, > const struct intel_crtc_state *new_crtc_state); > > +unsigned int intel_crtc_bw_num_active_planes(const struct > +intel_crtc_state *crtc_state); unsigned int > +intel_crtc_bw_data_rate(const struct intel_crtc_state *crtc_state); int > +intel_crtc_bw_min_cdclk(const struct intel_crtc_state *crtc_state); > + > #endif > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 4/9] drm/i915/ips: Eliminate the cdclk_state stuff from hsw_ips_compute_config() 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala ` (2 preceding siblings ...) 2025-10-13 20:12 ` [PATCH 3/9] drm/i915/bw: Relocate intel_bw_crtc_min_cdclk() Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 10:57 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 5/9] drm/i915/fbc: Decouple FBC from intel_cdclk_atomic_check() Ville Syrjala ` (6 subsequent siblings) 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> Reorganize the IPS CDCLK handling such that the computed CDCLK frequency will always satisfy the IPS requirements. The only exceptional case is if IPS would push the CDCLK above the platform max, but in that case we can simply disable IPS. To make this 100% race free we must move the enable_ips modparam check out from the min CDCLK computation path so that there is no chance of hsw_min_cdclk() and hsw_ips_compute_config() observing a different enable_ips value during the same commit. This allows us to completely remove the cdclk_state stuff from the IPS code. We only ever have to compare the IPS min CDCLK against the platform max CDCLK. Thus we eliminate any ordering requirements between intel_cdclk_atomic_check() and hsw_ips_compute_config(). Additionally we reduce the three copies of the code doing the 95% calculation into just one. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/hsw_ips.c | 61 ++++++++++++-------------- 1 file changed, 28 insertions(+), 33 deletions(-) diff --git a/drivers/gpu/drm/i915/display/hsw_ips.c b/drivers/gpu/drm/i915/display/hsw_ips.c index 927fe56aec77..f444c5b7a27b 100644 --- a/drivers/gpu/drm/i915/display/hsw_ips.c +++ b/drivers/gpu/drm/i915/display/hsw_ips.c @@ -191,45 +191,46 @@ bool hsw_crtc_supports_ips(struct intel_crtc *crtc) static bool hsw_crtc_state_ips_capable(const struct intel_crtc_state *crtc_state) { - struct intel_display *display = to_intel_display(crtc_state); struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); - /* IPS only exists on ULT machines and is tied to pipe A. */ if (!hsw_crtc_supports_ips(crtc)) return false; - if (!display->params.enable_ips) - return false; - if (crtc_state->pipe_bpp > 24) return false; - /* - * We compare against max which means we must take - * the increased cdclk requirement into account when - * calculating the new cdclk. - * - * Should measure whether using a lower cdclk w/o IPS - */ - if (display->platform.broadwell && - crtc_state->pixel_rate > display->cdclk.max_cdclk_freq * 95 / 100) - return false; - return true; } +static int _hsw_ips_min_cdclk(const struct intel_crtc_state *crtc_state) +{ + struct intel_display *display = to_intel_display(crtc_state); + + if (display->platform.broadwell) + return DIV_ROUND_UP(crtc_state->pixel_rate * 100, 95); + + /* no IPS specific limits to worry about */ + return 0; +} + int hsw_ips_min_cdclk(const struct intel_crtc_state *crtc_state) { struct intel_display *display = to_intel_display(crtc_state); - - if (!display->platform.broadwell) - return 0; + int min_cdclk; if (!hsw_crtc_state_ips_capable(crtc_state)) return 0; - /* pixel rate mustn't exceed 95% of cdclk with IPS on BDW */ - return DIV_ROUND_UP(crtc_state->pixel_rate * 100, 95); + min_cdclk = _hsw_ips_min_cdclk(crtc_state); + + /* + * Do not ask for more than the max CDCLK frequency, + * if that is not enough IPS will simply not be used. + */ + if (min_cdclk > display->cdclk.max_cdclk_freq) + return 0; + + return min_cdclk; } int hsw_ips_compute_config(struct intel_atomic_state *state, @@ -244,6 +245,12 @@ int hsw_ips_compute_config(struct intel_atomic_state *state, if (!hsw_crtc_state_ips_capable(crtc_state)) return 0; + if (_hsw_ips_min_cdclk(crtc_state) > display->cdclk.max_cdclk_freq) + return 0; + + if (!display->params.enable_ips) + return 0; + /* * When IPS gets enabled, the pipe CRC changes. Since IPS gets * enabled and disabled dynamically based on package C states, @@ -257,18 +264,6 @@ int hsw_ips_compute_config(struct intel_atomic_state *state, if (!(crtc_state->active_planes & ~BIT(PLANE_CURSOR))) return 0; - if (display->platform.broadwell) { - const struct intel_cdclk_state *cdclk_state; - - cdclk_state = intel_atomic_get_cdclk_state(state); - if (IS_ERR(cdclk_state)) - return PTR_ERR(cdclk_state); - - /* pixel rate mustn't exceed 95% of cdclk with IPS on BDW */ - if (crtc_state->pixel_rate > intel_cdclk_logical(cdclk_state) * 95 / 100) - return 0; - } - crtc_state->ips_enabled = true; return 0; -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 4/9] drm/i915/ips: Eliminate the cdclk_state stuff from hsw_ips_compute_config() 2025-10-13 20:12 ` [PATCH 4/9] drm/i915/ips: Eliminate the cdclk_state stuff from hsw_ips_compute_config() Ville Syrjala @ 2025-10-16 10:57 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 10:57 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.13 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 4/9] drm/i915/ips: Eliminate the cdclk_state stuff from hsw_ips_compute_config() > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Reorganize the IPS CDCLK handling such that the computed CDCLK frequency will always satisfy the IPS requirements. The only > exceptional case is if IPS would push the CDCLK above the platform max, but in that case we can simply disable IPS. > > To make this 100% race free we must move the enable_ips modparam check out from the min CDCLK computation path so that > there is no chance of hsw_min_cdclk() and hsw_ips_compute_config() observing a different enable_ips value during the same > commit. > > This allows us to completely remove the cdclk_state stuff from the IPS code. We only ever have to compare the IPS min CDCLK > against the platform max CDCLK. Thus we eliminate any ordering requirements between intel_cdclk_atomic_check() and > hsw_ips_compute_config(). > > Additionally we reduce the three copies of the code doing the 95% calculation into just one. > Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/hsw_ips.c | 61 ++++++++++++-------------- > 1 file changed, 28 insertions(+), 33 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/hsw_ips.c b/drivers/gpu/drm/i915/display/hsw_ips.c > index 927fe56aec77..f444c5b7a27b 100644 > --- a/drivers/gpu/drm/i915/display/hsw_ips.c > +++ b/drivers/gpu/drm/i915/display/hsw_ips.c > @@ -191,45 +191,46 @@ bool hsw_crtc_supports_ips(struct intel_crtc *crtc) > > static bool hsw_crtc_state_ips_capable(const struct intel_crtc_state *crtc_state) { > - struct intel_display *display = to_intel_display(crtc_state); > struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > > - /* IPS only exists on ULT machines and is tied to pipe A. */ > if (!hsw_crtc_supports_ips(crtc)) > return false; > > - if (!display->params.enable_ips) > - return false; > - > if (crtc_state->pipe_bpp > 24) > return false; > > - /* > - * We compare against max which means we must take > - * the increased cdclk requirement into account when > - * calculating the new cdclk. > - * > - * Should measure whether using a lower cdclk w/o IPS > - */ > - if (display->platform.broadwell && > - crtc_state->pixel_rate > display->cdclk.max_cdclk_freq * 95 / 100) > - return false; > - > return true; > } > > +static int _hsw_ips_min_cdclk(const struct intel_crtc_state > +*crtc_state) { > + struct intel_display *display = to_intel_display(crtc_state); > + > + if (display->platform.broadwell) > + return DIV_ROUND_UP(crtc_state->pixel_rate * 100, 95); > + > + /* no IPS specific limits to worry about */ > + return 0; > +} > + > int hsw_ips_min_cdclk(const struct intel_crtc_state *crtc_state) { > struct intel_display *display = to_intel_display(crtc_state); > - > - if (!display->platform.broadwell) > - return 0; > + int min_cdclk; > > if (!hsw_crtc_state_ips_capable(crtc_state)) > return 0; > > - /* pixel rate mustn't exceed 95% of cdclk with IPS on BDW */ > - return DIV_ROUND_UP(crtc_state->pixel_rate * 100, 95); > + min_cdclk = _hsw_ips_min_cdclk(crtc_state); > + > + /* > + * Do not ask for more than the max CDCLK frequency, > + * if that is not enough IPS will simply not be used. > + */ > + if (min_cdclk > display->cdclk.max_cdclk_freq) > + return 0; > + > + return min_cdclk; > } > > int hsw_ips_compute_config(struct intel_atomic_state *state, @@ -244,6 +245,12 @@ int hsw_ips_compute_config(struct > intel_atomic_state *state, > if (!hsw_crtc_state_ips_capable(crtc_state)) > return 0; > > + if (_hsw_ips_min_cdclk(crtc_state) > display->cdclk.max_cdclk_freq) > + return 0; > + > + if (!display->params.enable_ips) > + return 0; > + > /* > * When IPS gets enabled, the pipe CRC changes. Since IPS gets > * enabled and disabled dynamically based on package C states, @@ -257,18 +264,6 @@ int > hsw_ips_compute_config(struct intel_atomic_state *state, > if (!(crtc_state->active_planes & ~BIT(PLANE_CURSOR))) > return 0; > > - if (display->platform.broadwell) { > - const struct intel_cdclk_state *cdclk_state; > - > - cdclk_state = intel_atomic_get_cdclk_state(state); > - if (IS_ERR(cdclk_state)) > - return PTR_ERR(cdclk_state); > - > - /* pixel rate mustn't exceed 95% of cdclk with IPS on BDW */ > - if (crtc_state->pixel_rate > intel_cdclk_logical(cdclk_state) * 95 / 100) > - return 0; > - } > - > crtc_state->ips_enabled = true; > > return 0; > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 5/9] drm/i915/fbc: Decouple FBC from intel_cdclk_atomic_check() 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala ` (3 preceding siblings ...) 2025-10-13 20:12 ` [PATCH 4/9] drm/i915/ips: Eliminate the cdclk_state stuff from hsw_ips_compute_config() Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 11:40 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 6/9] drm/i915: s/min_cdck[]/plane_min_cdclk[]/ Ville Syrjala ` (5 subsequent siblings) 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> Always account for FBC requirements in intel_crtc_compute_min_cdclk() so that we don't to worry about the actual CDCLK frequency in intel_fbc_check_plane() any longer. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_cdclk.c | 1 + drivers/gpu/drm/i915/display/intel_fbc.c | 49 ++++++++++++++++------ drivers/gpu/drm/i915/display/intel_fbc.h | 1 + 3 files changed, 38 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c index 80a6c98eea5d..d55b3dc23356 100644 --- a/drivers/gpu/drm/i915/display/intel_cdclk.c +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c @@ -2838,6 +2838,7 @@ static int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_stat min_cdclk = intel_pixel_rate_to_cdclk(crtc_state); min_cdclk = max(min_cdclk, intel_crtc_bw_min_cdclk(crtc_state)); + min_cdclk = max(min_cdclk, intel_fbc_min_cdclk(crtc_state)); min_cdclk = max(min_cdclk, hsw_ips_min_cdclk(crtc_state)); min_cdclk = max(min_cdclk, intel_audio_min_cdclk(crtc_state)); min_cdclk = max(min_cdclk, vlv_dsi_min_cdclk(crtc_state)); diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c index 4edb4342833e..90060c60c5f4 100644 --- a/drivers/gpu/drm/i915/display/intel_fbc.c +++ b/drivers/gpu/drm/i915/display/intel_fbc.c @@ -53,7 +53,6 @@ #include "i915_vgpu.h" #include "i915_vma.h" #include "i9xx_plane_regs.h" -#include "intel_cdclk.h" #include "intel_de.h" #include "intel_display_device.h" #include "intel_display_regs.h" @@ -1417,6 +1416,18 @@ intel_fbc_prepare_dirty_rect(struct intel_atomic_state *state, } } +static int _intel_fbc_min_cdclk(const struct intel_crtc_state *crtc_state) +{ + struct intel_display *display = to_intel_display(crtc_state); + + /* WaFbcExceedCdClockThreshold:hsw,bdw */ + if (display->platform.haswell || display->platform.broadwell) + return DIV_ROUND_UP(crtc_state->pixel_rate * 100, 95); + + /* no FBC specific limits to worry about */ + return 0; +} + static int intel_fbc_check_plane(struct intel_atomic_state *state, struct intel_plane *plane) { @@ -1556,18 +1567,9 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state, return 0; } - /* WaFbcExceedCdClockThreshold:hsw,bdw */ - if (display->platform.haswell || display->platform.broadwell) { - const struct intel_cdclk_state *cdclk_state; - - cdclk_state = intel_atomic_get_cdclk_state(state); - if (IS_ERR(cdclk_state)) - return PTR_ERR(cdclk_state); - - if (crtc_state->pixel_rate >= intel_cdclk_logical(cdclk_state) * 95 / 100) { - plane_state->no_fbc_reason = "pixel rate too high"; - return 0; - } + if (_intel_fbc_min_cdclk(crtc_state) > display->cdclk.max_cdclk_freq) { + plane_state->no_fbc_reason = "pixel rate too high"; + return 0; } plane_state->no_fbc_reason = NULL; @@ -1575,6 +1577,27 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state, return 0; } +int intel_fbc_min_cdclk(const struct intel_crtc_state *crtc_state) +{ + struct intel_display *display = to_intel_display(crtc_state); + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); + struct intel_plane *plane = to_intel_plane(crtc->base.primary); + int min_cdclk; + + if (!plane->fbc) + return 0; + + min_cdclk = _intel_fbc_min_cdclk(crtc_state); + + /* + * Do not ask for more than the max CDCLK frequency, + * if that is not enough FBC will simply not be used. + */ + if (min_cdclk > display->cdclk.max_cdclk_freq) + return 0; + + return min_cdclk; +} static bool intel_fbc_can_flip_nuke(struct intel_atomic_state *state, struct intel_crtc *crtc, diff --git a/drivers/gpu/drm/i915/display/intel_fbc.h b/drivers/gpu/drm/i915/display/intel_fbc.h index 0e715cb6b4e6..c86562404a00 100644 --- a/drivers/gpu/drm/i915/display/intel_fbc.h +++ b/drivers/gpu/drm/i915/display/intel_fbc.h @@ -28,6 +28,7 @@ enum intel_fbc_id { }; int intel_fbc_atomic_check(struct intel_atomic_state *state); +int intel_fbc_min_cdclk(const struct intel_crtc_state *crtc_state); bool intel_fbc_pre_update(struct intel_atomic_state *state, struct intel_crtc *crtc); void intel_fbc_post_update(struct intel_atomic_state *state, -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 5/9] drm/i915/fbc: Decouple FBC from intel_cdclk_atomic_check() 2025-10-13 20:12 ` [PATCH 5/9] drm/i915/fbc: Decouple FBC from intel_cdclk_atomic_check() Ville Syrjala @ 2025-10-16 11:40 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 11:40 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-xe <intel-xe-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.13 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 5/9] drm/i915/fbc: Decouple FBC from intel_cdclk_atomic_check() > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Always account for FBC requirements in intel_crtc_compute_min_cdclk() so that we don't to worry about the actual CDCLK > frequency in > intel_fbc_check_plane() any longer. > Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_cdclk.c | 1 + > drivers/gpu/drm/i915/display/intel_fbc.c | 49 ++++++++++++++++------ > drivers/gpu/drm/i915/display/intel_fbc.h | 1 + > 3 files changed, 38 insertions(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c > index 80a6c98eea5d..d55b3dc23356 100644 > --- a/drivers/gpu/drm/i915/display/intel_cdclk.c > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c > @@ -2838,6 +2838,7 @@ static int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_stat > > min_cdclk = intel_pixel_rate_to_cdclk(crtc_state); > min_cdclk = max(min_cdclk, intel_crtc_bw_min_cdclk(crtc_state)); > + min_cdclk = max(min_cdclk, intel_fbc_min_cdclk(crtc_state)); > min_cdclk = max(min_cdclk, hsw_ips_min_cdclk(crtc_state)); > min_cdclk = max(min_cdclk, intel_audio_min_cdclk(crtc_state)); > min_cdclk = max(min_cdclk, vlv_dsi_min_cdclk(crtc_state)); diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c > b/drivers/gpu/drm/i915/display/intel_fbc.c > index 4edb4342833e..90060c60c5f4 100644 > --- a/drivers/gpu/drm/i915/display/intel_fbc.c > +++ b/drivers/gpu/drm/i915/display/intel_fbc.c > @@ -53,7 +53,6 @@ > #include "i915_vgpu.h" > #include "i915_vma.h" > #include "i9xx_plane_regs.h" > -#include "intel_cdclk.h" > #include "intel_de.h" > #include "intel_display_device.h" > #include "intel_display_regs.h" > @@ -1417,6 +1416,18 @@ intel_fbc_prepare_dirty_rect(struct intel_atomic_state *state, > } > } > > +static int _intel_fbc_min_cdclk(const struct intel_crtc_state > +*crtc_state) { > + struct intel_display *display = to_intel_display(crtc_state); > + > + /* WaFbcExceedCdClockThreshold:hsw,bdw */ > + if (display->platform.haswell || display->platform.broadwell) > + return DIV_ROUND_UP(crtc_state->pixel_rate * 100, 95); > + > + /* no FBC specific limits to worry about */ > + return 0; > +} > + > static int intel_fbc_check_plane(struct intel_atomic_state *state, > struct intel_plane *plane) > { > @@ -1556,18 +1567,9 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state, > return 0; > } > > - /* WaFbcExceedCdClockThreshold:hsw,bdw */ > - if (display->platform.haswell || display->platform.broadwell) { > - const struct intel_cdclk_state *cdclk_state; > - > - cdclk_state = intel_atomic_get_cdclk_state(state); > - if (IS_ERR(cdclk_state)) > - return PTR_ERR(cdclk_state); > - > - if (crtc_state->pixel_rate >= intel_cdclk_logical(cdclk_state) * 95 / 100) { > - plane_state->no_fbc_reason = "pixel rate too high"; > - return 0; > - } > + if (_intel_fbc_min_cdclk(crtc_state) > display->cdclk.max_cdclk_freq) { > + plane_state->no_fbc_reason = "pixel rate too high"; > + return 0; > } > > plane_state->no_fbc_reason = NULL; > @@ -1575,6 +1577,27 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state, > return 0; > } > > +int intel_fbc_min_cdclk(const struct intel_crtc_state *crtc_state) { > + struct intel_display *display = to_intel_display(crtc_state); > + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > + struct intel_plane *plane = to_intel_plane(crtc->base.primary); > + int min_cdclk; > + > + if (!plane->fbc) > + return 0; > + > + min_cdclk = _intel_fbc_min_cdclk(crtc_state); > + > + /* > + * Do not ask for more than the max CDCLK frequency, > + * if that is not enough FBC will simply not be used. > + */ > + if (min_cdclk > display->cdclk.max_cdclk_freq) > + return 0; > + > + return min_cdclk; > +} > > static bool intel_fbc_can_flip_nuke(struct intel_atomic_state *state, > struct intel_crtc *crtc, > diff --git a/drivers/gpu/drm/i915/display/intel_fbc.h b/drivers/gpu/drm/i915/display/intel_fbc.h > index 0e715cb6b4e6..c86562404a00 100644 > --- a/drivers/gpu/drm/i915/display/intel_fbc.h > +++ b/drivers/gpu/drm/i915/display/intel_fbc.h > @@ -28,6 +28,7 @@ enum intel_fbc_id { > }; > > int intel_fbc_atomic_check(struct intel_atomic_state *state); > +int intel_fbc_min_cdclk(const struct intel_crtc_state *crtc_state); > bool intel_fbc_pre_update(struct intel_atomic_state *state, > struct intel_crtc *crtc); > void intel_fbc_post_update(struct intel_atomic_state *state, > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 6/9] drm/i915: s/min_cdck[]/plane_min_cdclk[]/ 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala ` (4 preceding siblings ...) 2025-10-13 20:12 ` [PATCH 5/9] drm/i915/fbc: Decouple FBC from intel_cdclk_atomic_check() Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 11:44 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 7/9] drm/i915: Compute per-crtc min_cdclk earlier Ville Syrjala ` (4 subsequent siblings) 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> Rename crtc_state->min_cdclk[] into crtc_state->plane_min_cdclk[] to better reflect what it represents. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_cdclk.c | 2 +- drivers/gpu/drm/i915/display/intel_display_types.h | 2 +- drivers/gpu/drm/i915/display/intel_modeset_setup.c | 6 +++--- drivers/gpu/drm/i915/display/intel_plane.c | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c index d55b3dc23356..ed64fac7897d 100644 --- a/drivers/gpu/drm/i915/display/intel_cdclk.c +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c @@ -2824,7 +2824,7 @@ static int intel_planes_min_cdclk(const struct intel_crtc_state *crtc_state) int min_cdclk = 0; for_each_intel_plane_on_crtc(display->drm, crtc, plane) - min_cdclk = max(min_cdclk, crtc_state->min_cdclk[plane->id]); + min_cdclk = max(min_cdclk, crtc_state->plane_min_cdclk[plane->id]); return min_cdclk; } diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h index 87b7cec35320..f77d120733fd 100644 --- a/drivers/gpu/drm/i915/display/intel_display_types.h +++ b/drivers/gpu/drm/i915/display/intel_display_types.h @@ -1192,7 +1192,7 @@ struct intel_crtc_state { struct intel_crtc_wm_state wm; - int min_cdclk[I915_MAX_PLANES]; + int plane_min_cdclk[I915_MAX_PLANES]; /* for packed/planar CbCr */ u32 data_rate[I915_MAX_PLANES]; diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c index deb877b2aebd..d5c432b613ce 100644 --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c @@ -853,16 +853,16 @@ static void intel_modeset_readout_hw_state(struct intel_display *display) */ if (plane_state->uapi.visible && plane->min_cdclk) { if (crtc_state->double_wide || DISPLAY_VER(display) >= 10) - crtc_state->min_cdclk[plane->id] = + crtc_state->plane_min_cdclk[plane->id] = DIV_ROUND_UP(crtc_state->pixel_rate, 2); else - crtc_state->min_cdclk[plane->id] = + crtc_state->plane_min_cdclk[plane->id] = crtc_state->pixel_rate; } drm_dbg_kms(display->drm, "[PLANE:%d:%s] min_cdclk %d kHz\n", plane->base.base.id, plane->base.name, - crtc_state->min_cdclk[plane->id]); + crtc_state->plane_min_cdclk[plane->id]); } intel_pmdemand_update_port_clock(display, pmdemand_state, pipe, diff --git a/drivers/gpu/drm/i915/display/intel_plane.c b/drivers/gpu/drm/i915/display/intel_plane.c index 074de9275951..78329deb395a 100644 --- a/drivers/gpu/drm/i915/display/intel_plane.c +++ b/drivers/gpu/drm/i915/display/intel_plane.c @@ -304,7 +304,7 @@ static void intel_plane_calc_min_cdclk(struct intel_atomic_state *state, new_crtc_state = intel_atomic_get_new_crtc_state(state, crtc); - new_crtc_state->min_cdclk[plane->id] = + new_crtc_state->plane_min_cdclk[plane->id] = plane->min_cdclk(new_crtc_state, plane_state); } @@ -391,7 +391,7 @@ void intel_plane_set_invisible(struct intel_crtc_state *crtc_state, crtc_state->data_rate_y[plane->id] = 0; crtc_state->rel_data_rate[plane->id] = 0; crtc_state->rel_data_rate_y[plane->id] = 0; - crtc_state->min_cdclk[plane->id] = 0; + crtc_state->plane_min_cdclk[plane->id] = 0; plane_state->uapi.visible = false; } -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 6/9] drm/i915: s/min_cdck[]/plane_min_cdclk[]/ 2025-10-13 20:12 ` [PATCH 6/9] drm/i915: s/min_cdck[]/plane_min_cdclk[]/ Ville Syrjala @ 2025-10-16 11:44 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 11:44 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-xe <intel-xe-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.13 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 6/9] drm/i915: s/min_cdck[]/plane_min_cdclk[]/ > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Rename crtc_state->min_cdclk[] into crtc_state->plane_min_cdclk[] to better reflect what it represents. > Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_cdclk.c | 2 +- > drivers/gpu/drm/i915/display/intel_display_types.h | 2 +- drivers/gpu/drm/i915/display/intel_modeset_setup.c | 6 +++--- > drivers/gpu/drm/i915/display/intel_plane.c | 4 ++-- > 4 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c > index d55b3dc23356..ed64fac7897d 100644 > --- a/drivers/gpu/drm/i915/display/intel_cdclk.c > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c > @@ -2824,7 +2824,7 @@ static int intel_planes_min_cdclk(const struct intel_crtc_state *crtc_state) > int min_cdclk = 0; > > for_each_intel_plane_on_crtc(display->drm, crtc, plane) > - min_cdclk = max(min_cdclk, crtc_state->min_cdclk[plane->id]); > + min_cdclk = max(min_cdclk, crtc_state->plane_min_cdclk[plane->id]); > > return min_cdclk; > } > diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h > index 87b7cec35320..f77d120733fd 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_types.h > +++ b/drivers/gpu/drm/i915/display/intel_display_types.h > @@ -1192,7 +1192,7 @@ struct intel_crtc_state { > > struct intel_crtc_wm_state wm; > > - int min_cdclk[I915_MAX_PLANES]; > + int plane_min_cdclk[I915_MAX_PLANES]; > > /* for packed/planar CbCr */ > u32 data_rate[I915_MAX_PLANES]; > diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c > index deb877b2aebd..d5c432b613ce 100644 > --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c > +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c > @@ -853,16 +853,16 @@ static void intel_modeset_readout_hw_state(struct intel_display *display) > */ > if (plane_state->uapi.visible && plane->min_cdclk) { > if (crtc_state->double_wide || DISPLAY_VER(display) >= 10) > - crtc_state->min_cdclk[plane->id] = > + crtc_state->plane_min_cdclk[plane->id] = > DIV_ROUND_UP(crtc_state->pixel_rate, 2); > else > - crtc_state->min_cdclk[plane->id] = > + crtc_state->plane_min_cdclk[plane->id] = > crtc_state->pixel_rate; > } > drm_dbg_kms(display->drm, > "[PLANE:%d:%s] min_cdclk %d kHz\n", > plane->base.base.id, plane->base.name, > - crtc_state->min_cdclk[plane->id]); > + crtc_state->plane_min_cdclk[plane->id]); > } > > intel_pmdemand_update_port_clock(display, pmdemand_state, pipe, diff --git > a/drivers/gpu/drm/i915/display/intel_plane.c b/drivers/gpu/drm/i915/display/intel_plane.c > index 074de9275951..78329deb395a 100644 > --- a/drivers/gpu/drm/i915/display/intel_plane.c > +++ b/drivers/gpu/drm/i915/display/intel_plane.c > @@ -304,7 +304,7 @@ static void intel_plane_calc_min_cdclk(struct intel_atomic_state *state, > > new_crtc_state = intel_atomic_get_new_crtc_state(state, crtc); > > - new_crtc_state->min_cdclk[plane->id] = > + new_crtc_state->plane_min_cdclk[plane->id] = > plane->min_cdclk(new_crtc_state, plane_state); } > > @@ -391,7 +391,7 @@ void intel_plane_set_invisible(struct intel_crtc_state *crtc_state, > crtc_state->data_rate_y[plane->id] = 0; > crtc_state->rel_data_rate[plane->id] = 0; > crtc_state->rel_data_rate_y[plane->id] = 0; > - crtc_state->min_cdclk[plane->id] = 0; > + crtc_state->plane_min_cdclk[plane->id] = 0; > > plane_state->uapi.visible = false; > } > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 7/9] drm/i915: Compute per-crtc min_cdclk earlier 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala ` (5 preceding siblings ...) 2025-10-13 20:12 ` [PATCH 6/9] drm/i915: s/min_cdck[]/plane_min_cdclk[]/ Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 11:56 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 8/9] drm/i915: Include the per-crtc minimum cdclk in the crtc state dump Ville Syrjala ` (3 subsequent siblings) 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> Currently we compute the min_cdclk for each pipe during intel_cdclk_atomic_check(). But that is too late for the pipe prefill vs. vblank length checks (done during intel_compute_global_watermarks). We can't just reorder these things due to other dependencies, so instead pull only the per-crtc minimum cdclk calculation ahead. We should have enough information for that as soon as we've computed the min cdclk for the planes. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_cdclk.c | 8 ++++---- drivers/gpu/drm/i915/display/intel_cdclk.h | 2 ++ drivers/gpu/drm/i915/display/intel_display.c | 3 +++ drivers/gpu/drm/i915/display/intel_display_types.h | 2 ++ drivers/gpu/drm/i915/display/intel_modeset_setup.c | 5 +++++ 5 files changed, 16 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c index ed64fac7897d..af918e0e72ef 100644 --- a/drivers/gpu/drm/i915/display/intel_cdclk.c +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c @@ -2829,7 +2829,7 @@ static int intel_planes_min_cdclk(const struct intel_crtc_state *crtc_state) return min_cdclk; } -static int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_state) +int intel_crtc_min_cdclk(const struct intel_crtc_state *crtc_state) { int min_cdclk; @@ -3302,8 +3302,8 @@ static int intel_crtcs_calc_min_cdclk(struct intel_atomic_state *state, for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) { ret = intel_cdclk_update_crtc_min_cdclk(state, crtc, - intel_crtc_compute_min_cdclk(old_crtc_state), - intel_crtc_compute_min_cdclk(new_crtc_state), + old_crtc_state->min_cdclk, + new_crtc_state->min_cdclk, need_cdclk_calc); if (ret) return ret; @@ -3523,7 +3523,7 @@ void intel_cdclk_update_hw_state(struct intel_display *display) if (crtc_state->hw.active) cdclk_state->active_pipes |= BIT(pipe); - cdclk_state->min_cdclk[pipe] = intel_crtc_compute_min_cdclk(crtc_state); + cdclk_state->min_cdclk[pipe] = crtc_state->min_cdclk; cdclk_state->min_voltage_level[pipe] = crtc_state->min_voltage_level; } diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.h b/drivers/gpu/drm/i915/display/intel_cdclk.h index d9d7a8b3a48a..bad2da8d45d2 100644 --- a/drivers/gpu/drm/i915/display/intel_cdclk.h +++ b/drivers/gpu/drm/i915/display/intel_cdclk.h @@ -69,4 +69,6 @@ bool intel_cdclk_pmdemand_needs_update(struct intel_atomic_state *state); void intel_cdclk_force_min_cdclk(struct intel_cdclk_state *cdclk_state, int force_min_cdclk); void intel_cdclk_read_hw(struct intel_display *display); +int intel_crtc_min_cdclk(const struct intel_crtc_state *crtc_state); + #endif /* __INTEL_CDCLK_H__ */ diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index d5b2612d4ec2..539017018884 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -6443,6 +6443,9 @@ int intel_atomic_check(struct drm_device *dev, if (ret) goto fail; + for_each_new_intel_crtc_in_state(state, crtc, new_crtc_state, i) + new_crtc_state->min_cdclk = intel_crtc_min_cdclk(new_crtc_state); + ret = intel_compute_global_watermarks(state); if (ret) goto fail; diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h index f77d120733fd..203dd38a9ec4 100644 --- a/drivers/gpu/drm/i915/display/intel_display_types.h +++ b/drivers/gpu/drm/i915/display/intel_display_types.h @@ -1192,6 +1192,8 @@ struct intel_crtc_state { struct intel_crtc_wm_state wm; + int min_cdclk; + int plane_min_cdclk[I915_MAX_PLANES]; /* for packed/planar CbCr */ diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c index d5c432b613ce..0dcb0597879a 100644 --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c @@ -865,6 +865,11 @@ static void intel_modeset_readout_hw_state(struct intel_display *display) crtc_state->plane_min_cdclk[plane->id]); } + crtc_state->min_cdclk = intel_crtc_min_cdclk(crtc_state); + + drm_dbg_kms(display->drm, "[CRTC:%d:%s] min_cdclk %d kHz\n", + crtc->base.base.id, crtc->base.name, crtc_state->min_cdclk); + intel_pmdemand_update_port_clock(display, pmdemand_state, pipe, crtc_state->port_clock); } -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 7/9] drm/i915: Compute per-crtc min_cdclk earlier 2025-10-13 20:12 ` [PATCH 7/9] drm/i915: Compute per-crtc min_cdclk earlier Ville Syrjala @ 2025-10-16 11:56 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 11:56 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.13 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 7/9] drm/i915: Compute per-crtc min_cdclk earlier > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Currently we compute the min_cdclk for each pipe during intel_cdclk_atomic_check(). But that is too late for the pipe prefill vs. > vblank length checks (done during intel_compute_global_watermarks). > > We can't just reorder these things due to other dependencies, so instead pull only the per-crtc minimum cdclk calculation ahead. > We should have enough information for that as soon as we've computed the min cdclk for the planes. > Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_cdclk.c | 8 ++++---- > drivers/gpu/drm/i915/display/intel_cdclk.h | 2 ++ > drivers/gpu/drm/i915/display/intel_display.c | 3 +++ > drivers/gpu/drm/i915/display/intel_display_types.h | 2 ++ drivers/gpu/drm/i915/display/intel_modeset_setup.c | 5 +++++ > 5 files changed, 16 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c > index ed64fac7897d..af918e0e72ef 100644 > --- a/drivers/gpu/drm/i915/display/intel_cdclk.c > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c > @@ -2829,7 +2829,7 @@ static int intel_planes_min_cdclk(const struct intel_crtc_state *crtc_state) > return min_cdclk; > } > > -static int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_state) > +int intel_crtc_min_cdclk(const struct intel_crtc_state *crtc_state) > { > int min_cdclk; > > @@ -3302,8 +3302,8 @@ static int intel_crtcs_calc_min_cdclk(struct intel_atomic_state *state, > for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, > new_crtc_state, i) { > ret = intel_cdclk_update_crtc_min_cdclk(state, crtc, > - intel_crtc_compute_min_cdclk(old_crtc_state), > - intel_crtc_compute_min_cdclk(new_crtc_state), > + old_crtc_state->min_cdclk, > + new_crtc_state->min_cdclk, > need_cdclk_calc); > if (ret) > return ret; > @@ -3523,7 +3523,7 @@ void intel_cdclk_update_hw_state(struct intel_display *display) > if (crtc_state->hw.active) > cdclk_state->active_pipes |= BIT(pipe); > > - cdclk_state->min_cdclk[pipe] = intel_crtc_compute_min_cdclk(crtc_state); > + cdclk_state->min_cdclk[pipe] = crtc_state->min_cdclk; > cdclk_state->min_voltage_level[pipe] = crtc_state->min_voltage_level; > } > > diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.h b/drivers/gpu/drm/i915/display/intel_cdclk.h > index d9d7a8b3a48a..bad2da8d45d2 100644 > --- a/drivers/gpu/drm/i915/display/intel_cdclk.h > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.h > @@ -69,4 +69,6 @@ bool intel_cdclk_pmdemand_needs_update(struct intel_atomic_state *state); void > intel_cdclk_force_min_cdclk(struct intel_cdclk_state *cdclk_state, int force_min_cdclk); void intel_cdclk_read_hw(struct > intel_display *display); > > +int intel_crtc_min_cdclk(const struct intel_crtc_state *crtc_state); > + > #endif /* __INTEL_CDCLK_H__ */ > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index d5b2612d4ec2..539017018884 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -6443,6 +6443,9 @@ int intel_atomic_check(struct drm_device *dev, > if (ret) > goto fail; > > + for_each_new_intel_crtc_in_state(state, crtc, new_crtc_state, i) > + new_crtc_state->min_cdclk = intel_crtc_min_cdclk(new_crtc_state); > + > ret = intel_compute_global_watermarks(state); > if (ret) > goto fail; > diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h > index f77d120733fd..203dd38a9ec4 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_types.h > +++ b/drivers/gpu/drm/i915/display/intel_display_types.h > @@ -1192,6 +1192,8 @@ struct intel_crtc_state { > > struct intel_crtc_wm_state wm; > > + int min_cdclk; > + > int plane_min_cdclk[I915_MAX_PLANES]; > > /* for packed/planar CbCr */ > diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c > index d5c432b613ce..0dcb0597879a 100644 > --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c > +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c > @@ -865,6 +865,11 @@ static void intel_modeset_readout_hw_state(struct intel_display *display) > crtc_state->plane_min_cdclk[plane->id]); > } > > + crtc_state->min_cdclk = intel_crtc_min_cdclk(crtc_state); > + > + drm_dbg_kms(display->drm, "[CRTC:%d:%s] min_cdclk %d kHz\n", > + crtc->base.base.id, crtc->base.name, crtc_state->min_cdclk); > + > intel_pmdemand_update_port_clock(display, pmdemand_state, pipe, > crtc_state->port_clock); > } > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 8/9] drm/i915: Include the per-crtc minimum cdclk in the crtc state dump 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala ` (6 preceding siblings ...) 2025-10-13 20:12 ` [PATCH 7/9] drm/i915: Compute per-crtc min_cdclk earlier Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 11:56 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 9/9] drm/i915: Neuter cdclk_prefill_adjustment() Ville Syrjala ` (2 subsequent siblings) 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> Include the crtc minimum cdclk in the crtc state dump. Might help figuring out who needed how much cdclk. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_crtc_state_dump.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c index a14bcda4446c..23e25e97d060 100644 --- a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c +++ b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c @@ -314,9 +314,9 @@ void intel_crtc_state_dump(const struct intel_crtc_state *pipe_config, drm_printf(&p, "pipe mode: " DRM_MODE_FMT "\n", DRM_MODE_ARG(&pipe_config->hw.pipe_mode)); intel_dump_crtc_timings(&p, &pipe_config->hw.pipe_mode); - drm_printf(&p, "port clock: %d, pipe src: " DRM_RECT_FMT ", pixel rate %d\n", + drm_printf(&p, "port clock: %d, pipe src: " DRM_RECT_FMT ", pixel rate %d, min cdclk %d\n", pipe_config->port_clock, DRM_RECT_ARG(&pipe_config->pipe_src), - pipe_config->pixel_rate); + pipe_config->pixel_rate, pipe_config->min_cdclk); drm_printf(&p, "linetime: %d, ips linetime: %d\n", pipe_config->linetime, pipe_config->ips_linetime); -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 8/9] drm/i915: Include the per-crtc minimum cdclk in the crtc state dump 2025-10-13 20:12 ` [PATCH 8/9] drm/i915: Include the per-crtc minimum cdclk in the crtc state dump Ville Syrjala @ 2025-10-16 11:56 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 11:56 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.13 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 8/9] drm/i915: Include the per-crtc minimum cdclk in the crtc state dump > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Include the crtc minimum cdclk in the crtc state dump. Might help figuring out who needed how much cdclk. > Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_crtc_state_dump.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c > index a14bcda4446c..23e25e97d060 100644 > --- a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c > +++ b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c > @@ -314,9 +314,9 @@ void intel_crtc_state_dump(const struct intel_crtc_state *pipe_config, > drm_printf(&p, "pipe mode: " DRM_MODE_FMT "\n", > DRM_MODE_ARG(&pipe_config->hw.pipe_mode)); > intel_dump_crtc_timings(&p, &pipe_config->hw.pipe_mode); > - drm_printf(&p, "port clock: %d, pipe src: " DRM_RECT_FMT ", pixel rate %d\n", > + drm_printf(&p, "port clock: %d, pipe src: " DRM_RECT_FMT ", pixel rate > +%d, min cdclk %d\n", > pipe_config->port_clock, DRM_RECT_ARG(&pipe_config->pipe_src), > - pipe_config->pixel_rate); > + pipe_config->pixel_rate, pipe_config->min_cdclk); > > drm_printf(&p, "linetime: %d, ips linetime: %d\n", > pipe_config->linetime, pipe_config->ips_linetime); > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 9/9] drm/i915: Neuter cdclk_prefill_adjustment() 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala ` (7 preceding siblings ...) 2025-10-13 20:12 ` [PATCH 8/9] drm/i915: Include the per-crtc minimum cdclk in the crtc state dump Ville Syrjala @ 2025-10-13 20:12 ` Ville Syrjala 2025-10-16 11:59 ` Kahola, Mika 2025-10-13 23:44 ` ✓ i915.CI.BAT: success for drm/i915: Reorder cdclk stuff for vblank/guardband length checks Patchwork 2025-10-14 8:33 ` ✓ i915.CI.Full: " Patchwork 10 siblings, 1 reply; 21+ messages in thread From: Ville Syrjala @ 2025-10-13 20:12 UTC (permalink / raw) To: intel-gfx; +Cc: intel-xe From: Ville Syrjälä <ville.syrjala@linux.intel.com> cdclk_prefill_adjustment() currently uses a stale cdclk value. And even if it was using the correct value it'd still just 'return 1' because the ratio that it's calculating is always <= 1.0, and it just rounds the ratio into an integer (and clamps the result to a maximum of 1). So for the moment, let's just 'return 1' since that's what the code ends up doing anyway. This is actually safe because 1.0 is the worst case (ie. slowest prefill) and thus the actual prefill is always guaranteed to be at least as fast as what we assumed during the check. We'll replace this soon with something that gives more accurate estimates. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/skl_watermark.c | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c index 9df9ee137bf9..1b062c6c0e03 100644 --- a/drivers/gpu/drm/i915/display/skl_watermark.c +++ b/drivers/gpu/drm/i915/display/skl_watermark.c @@ -2148,19 +2148,7 @@ static int icl_build_plane_wm(struct intel_crtc_state *crtc_state, static int cdclk_prefill_adjustment(const struct intel_crtc_state *crtc_state) { - struct intel_display *display = to_intel_display(crtc_state); - struct intel_atomic_state *state = - to_intel_atomic_state(crtc_state->uapi.state); - const struct intel_cdclk_state *cdclk_state; - - cdclk_state = intel_atomic_get_cdclk_state(state); - if (IS_ERR(cdclk_state)) { - drm_WARN_ON(display->drm, PTR_ERR(cdclk_state)); - return 1; - } - - return min(1, DIV_ROUND_UP(crtc_state->pixel_rate, - 2 * intel_cdclk_logical(cdclk_state))); + return 1; } static int -- 2.49.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* RE: [PATCH 9/9] drm/i915: Neuter cdclk_prefill_adjustment() 2025-10-13 20:12 ` [PATCH 9/9] drm/i915: Neuter cdclk_prefill_adjustment() Ville Syrjala @ 2025-10-16 11:59 ` Kahola, Mika 0 siblings, 0 replies; 21+ messages in thread From: Kahola, Mika @ 2025-10-16 11:59 UTC (permalink / raw) To: Ville Syrjala, intel-gfx@lists.freedesktop.org Cc: intel-xe@lists.freedesktop.org > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville Syrjala > Sent: Monday, 13 October 2025 23.13 > To: intel-gfx@lists.freedesktop.org > Cc: intel-xe@lists.freedesktop.org > Subject: [PATCH 9/9] drm/i915: Neuter cdclk_prefill_adjustment() > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > cdclk_prefill_adjustment() currently uses a stale cdclk value. And even if it was using the correct value it'd still just 'return 1' > because the ratio that it's calculating is always <= 1.0, and it just rounds the ratio into an integer (and clamps the result to a > maximum of 1). > So for the moment, let's just 'return 1' since that's what the code ends up doing anyway. > > This is actually safe because 1.0 is the worst case (ie. slowest > prefill) and thus the actual prefill is always guaranteed to be at least as fast as what we assumed during the check. > > We'll replace this soon with something that gives more accurate estimates. > I'll buy the explanation Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/skl_watermark.c | 14 +------------- > 1 file changed, 1 insertion(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c > index 9df9ee137bf9..1b062c6c0e03 100644 > --- a/drivers/gpu/drm/i915/display/skl_watermark.c > +++ b/drivers/gpu/drm/i915/display/skl_watermark.c > @@ -2148,19 +2148,7 @@ static int icl_build_plane_wm(struct intel_crtc_state *crtc_state, static int > cdclk_prefill_adjustment(const struct intel_crtc_state *crtc_state) { > - struct intel_display *display = to_intel_display(crtc_state); > - struct intel_atomic_state *state = > - to_intel_atomic_state(crtc_state->uapi.state); > - const struct intel_cdclk_state *cdclk_state; > - > - cdclk_state = intel_atomic_get_cdclk_state(state); > - if (IS_ERR(cdclk_state)) { > - drm_WARN_ON(display->drm, PTR_ERR(cdclk_state)); > - return 1; > - } > - > - return min(1, DIV_ROUND_UP(crtc_state->pixel_rate, > - 2 * intel_cdclk_logical(cdclk_state))); > + return 1; > } > > static int > -- > 2.49.1 ^ permalink raw reply [flat|nested] 21+ messages in thread
* ✓ i915.CI.BAT: success for drm/i915: Reorder cdclk stuff for vblank/guardband length checks 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala ` (8 preceding siblings ...) 2025-10-13 20:12 ` [PATCH 9/9] drm/i915: Neuter cdclk_prefill_adjustment() Ville Syrjala @ 2025-10-13 23:44 ` Patchwork 2025-10-14 8:33 ` ✓ i915.CI.Full: " Patchwork 10 siblings, 0 replies; 21+ messages in thread From: Patchwork @ 2025-10-13 23:44 UTC (permalink / raw) To: Ville Syrjälä; +Cc: intel-gfx [-- Attachment #1: Type: text/plain, Size: 6826 bytes --] == Series Details == Series: drm/i915: Reorder cdclk stuff for vblank/guardband length checks URL : https://patchwork.freedesktop.org/series/155860/ State : success == Summary == CI Bug Log - changes from CI_DRM_17352 -> Patchwork_155860v1 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/index.html Participating hosts (41 -> 40) ------------------------------ Missing (1): fi-snb-2520m Known issues ------------ Here are the changes found in Patchwork_155860v1 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_lmem_swapping@parallel-random-engines: - fi-kbl-7567u: NOTRUN -> [SKIP][1] ([i915#4613]) +3 other tests skip [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-kbl-7567u/igt@gem_lmem_swapping@parallel-random-engines.html * igt@i915_module_load@reload: - fi-kbl-7567u: NOTRUN -> [DMESG-WARN][2] ([i915#13735] / [i915#13890] / [i915#180]) +1 other test dmesg-warn [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-kbl-7567u/igt@i915_module_load@reload.html - fi-cfl-8109u: [PASS][3] -> [DMESG-WARN][4] ([i915#13735] / [i915#13890]) +2 other tests dmesg-warn [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/fi-cfl-8109u/igt@i915_module_load@reload.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-cfl-8109u/igt@i915_module_load@reload.html * igt@i915_selftest@live: - bat-mtlp-8: [PASS][5] -> [DMESG-FAIL][6] ([i915#12061]) +1 other test dmesg-fail [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/bat-mtlp-8/igt@i915_selftest@live.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/bat-mtlp-8/igt@i915_selftest@live.html * igt@i915_selftest@live@guc: - bat-adlp-6: [PASS][7] -> [ABORT][8] ([i915#14365]) +1 other test abort [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/bat-adlp-6/igt@i915_selftest@live@guc.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/bat-adlp-6/igt@i915_selftest@live@guc.html * igt@i915_selftest@live@sanitycheck: - fi-kbl-7567u: NOTRUN -> [DMESG-WARN][9] ([i915#13735]) +37 other tests dmesg-warn [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-kbl-7567u/igt@i915_selftest@live@sanitycheck.html * igt@i915_selftest@live@workarounds: - bat-dg2-9: [PASS][10] -> [DMESG-FAIL][11] ([i915#12061]) +1 other test dmesg-fail [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/bat-dg2-9/igt@i915_selftest@live@workarounds.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/bat-dg2-9/igt@i915_selftest@live@workarounds.html - bat-mtlp-9: [PASS][12] -> [DMESG-FAIL][13] ([i915#12061]) +1 other test dmesg-fail [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/bat-mtlp-9/igt@i915_selftest@live@workarounds.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/bat-mtlp-9/igt@i915_selftest@live@workarounds.html * igt@kms_addfb_basic@too-high: - fi-cfl-8109u: [PASS][14] -> [DMESG-WARN][15] ([i915#13735]) +47 other tests dmesg-warn [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/fi-cfl-8109u/igt@kms_addfb_basic@too-high.html [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-cfl-8109u/igt@kms_addfb_basic@too-high.html * igt@kms_psr@psr-primary-mmap-gtt: - fi-bsw-n3050: NOTRUN -> [SKIP][16] +21 other tests skip [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-bsw-n3050/igt@kms_psr@psr-primary-mmap-gtt.html #### Possible fixes #### * igt@core_auth@basic-auth: - fi-cfl-8109u: [DMESG-WARN][17] ([i915#13890]) -> [PASS][18] +1 other test pass [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/fi-cfl-8109u/igt@core_auth@basic-auth.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-cfl-8109u/igt@core_auth@basic-auth.html * igt@i915_selftest@live: - bat-arlh-3: [INCOMPLETE][19] ([i915#14764] / [i915#14818] / [i915#14837] / [i915#14838]) -> [PASS][20] [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/bat-arlh-3/igt@i915_selftest@live.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/bat-arlh-3/igt@i915_selftest@live.html * igt@i915_selftest@live@gem: - bat-arlh-3: [INCOMPLETE][21] -> [PASS][22] [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/bat-arlh-3/igt@i915_selftest@live@gem.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/bat-arlh-3/igt@i915_selftest@live@gem.html #### Warnings #### * igt@core_hotunplug@unbind-rebind: - fi-kbl-7567u: [ABORT][23] ([i915#180]) -> [DMESG-WARN][24] ([i915#13735] / [i915#13890] / [i915#180]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/fi-kbl-7567u/igt@core_hotunplug@unbind-rebind.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-kbl-7567u/igt@core_hotunplug@unbind-rebind.html * igt@kms_pipe_crc_basic@read-crc: - fi-cfl-8109u: [DMESG-WARN][25] ([i915#13890]) -> [DMESG-WARN][26] ([i915#13735] / [i915#13890]) +46 other tests dmesg-warn [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/fi-cfl-8109u/igt@kms_pipe_crc_basic@read-crc.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/fi-cfl-8109u/igt@kms_pipe_crc_basic@read-crc.html [i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061 [i915#13735]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13735 [i915#13890]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13890 [i915#14365]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14365 [i915#14764]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14764 [i915#14818]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14818 [i915#14837]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14837 [i915#14838]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14838 [i915#180]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/180 [i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613 Build changes ------------- * Linux: CI_DRM_17352 -> Patchwork_155860v1 CI-20190529: 20190529 CI_DRM_17352: c917f7d11493984be9f381ca0a7667bd3e587ada @ git://anongit.freedesktop.org/gfx-ci/linux IGT_8582: 8582 Patchwork_155860v1: c917f7d11493984be9f381ca0a7667bd3e587ada @ git://anongit.freedesktop.org/gfx-ci/linux == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/index.html [-- Attachment #2: Type: text/html, Size: 8793 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* ✓ i915.CI.Full: success for drm/i915: Reorder cdclk stuff for vblank/guardband length checks 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala ` (9 preceding siblings ...) 2025-10-13 23:44 ` ✓ i915.CI.BAT: success for drm/i915: Reorder cdclk stuff for vblank/guardband length checks Patchwork @ 2025-10-14 8:33 ` Patchwork 10 siblings, 0 replies; 21+ messages in thread From: Patchwork @ 2025-10-14 8:33 UTC (permalink / raw) To: Ville Syrjälä; +Cc: intel-gfx [-- Attachment #1: Type: text/plain, Size: 131805 bytes --] == Series Details == Series: drm/i915: Reorder cdclk stuff for vblank/guardband length checks URL : https://patchwork.freedesktop.org/series/155860/ State : success == Summary == CI Bug Log - changes from CI_DRM_17352_full -> Patchwork_155860v1_full ==================================================== Summary ------- **WARNING** Minor unknown changes coming with Patchwork_155860v1_full need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_155860v1_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them to document this new failure mode, which will reduce false positives in CI. Participating hosts (12 -> 12) ------------------------------ No changes in participating hosts Possible new issues ------------------- Here are the unknown changes that may have been introduced in Patchwork_155860v1_full: ### IGT changes ### #### Warnings #### * igt@gem_lmem_swapping@smem-oom@lmem0: - shard-dg1: [TIMEOUT][1] ([i915#5493]) -> [ABORT][2] +1 other test abort [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-17/igt@gem_lmem_swapping@smem-oom@lmem0.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-12/igt@gem_lmem_swapping@smem-oom@lmem0.html Known issues ------------ Here are the changes found in Patchwork_155860v1_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@api_intel_bb@object-reloc-keep-cache: - shard-dg2-9: NOTRUN -> [SKIP][3] ([i915#8411]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@api_intel_bb@object-reloc-keep-cache.html * igt@api_intel_bb@object-reloc-purge-cache: - shard-mtlp: NOTRUN -> [SKIP][4] ([i915#8411]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@api_intel_bb@object-reloc-purge-cache.html * igt@device_reset@cold-reset-bound: - shard-tglu: NOTRUN -> [SKIP][5] ([i915#11078]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@device_reset@cold-reset-bound.html * igt@drm_buddy@drm_buddy: - shard-dg2-9: NOTRUN -> [DMESG-WARN][6] ([i915#15095]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@drm_buddy@drm_buddy.html * igt@gem_bad_reloc@negative-reloc-lut: - shard-dg2-9: NOTRUN -> [SKIP][7] ([i915#3281]) +7 other tests skip [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_bad_reloc@negative-reloc-lut.html * igt@gem_ccs@ctrl-surf-copy: - shard-mtlp: NOTRUN -> [SKIP][8] ([i915#3555] / [i915#9323]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gem_ccs@ctrl-surf-copy.html * igt@gem_ccs@large-ctrl-surf-copy: - shard-tglu: NOTRUN -> [SKIP][9] ([i915#13008]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@gem_ccs@large-ctrl-surf-copy.html * igt@gem_close_race@multigpu-basic-process: - shard-tglu: NOTRUN -> [SKIP][10] ([i915#7697]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@gem_close_race@multigpu-basic-process.html * igt@gem_create@create-ext-cpu-access-big: - shard-dg2-9: NOTRUN -> [ABORT][11] ([i915#13427]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_create@create-ext-cpu-access-big.html * igt@gem_ctx_isolation@preservation-s3: - shard-rkl: [PASS][12] -> [INCOMPLETE][13] ([i915#12353]) +1 other test incomplete [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-2/igt@gem_ctx_isolation@preservation-s3.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@gem_ctx_isolation@preservation-s3.html * igt@gem_ctx_isolation@preservation-s3@rcs0: - shard-glk: NOTRUN -> [INCOMPLETE][14] ([i915#12353]) +1 other test incomplete [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk5/igt@gem_ctx_isolation@preservation-s3@rcs0.html * igt@gem_ctx_persistence@saturated-hostile-nopreempt: - shard-dg2: NOTRUN -> [SKIP][15] ([i915#5882]) +7 other tests skip [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@gem_ctx_persistence@saturated-hostile-nopreempt.html * igt@gem_ctx_sseu@engines: - shard-tglu-1: NOTRUN -> [SKIP][16] ([i915#280]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@gem_ctx_sseu@engines.html * igt@gem_ctx_sseu@mmap-args: - shard-mtlp: NOTRUN -> [SKIP][17] ([i915#280]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gem_ctx_sseu@mmap-args.html * igt@gem_exec_balancer@bonded-pair: - shard-dg2: NOTRUN -> [SKIP][18] ([i915#4771]) [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@gem_exec_balancer@bonded-pair.html * igt@gem_exec_balancer@bonded-true-hang: - shard-dg2-9: NOTRUN -> [SKIP][19] ([i915#4812]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_exec_balancer@bonded-true-hang.html * igt@gem_exec_balancer@noheartbeat: - shard-dg2: NOTRUN -> [SKIP][20] ([i915#8555]) +1 other test skip [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@gem_exec_balancer@noheartbeat.html * igt@gem_exec_balancer@parallel-contexts: - shard-tglu: NOTRUN -> [SKIP][21] ([i915#4525]) +1 other test skip [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@gem_exec_balancer@parallel-contexts.html * igt@gem_exec_balancer@parallel-dmabuf-import-out-fence: - shard-tglu-1: NOTRUN -> [SKIP][22] ([i915#4525]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@gem_exec_balancer@parallel-dmabuf-import-out-fence.html * igt@gem_exec_capture@capture-invisible@smem0: - shard-rkl: NOTRUN -> [SKIP][23] ([i915#6334]) +1 other test skip [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gem_exec_capture@capture-invisible@smem0.html * igt@gem_exec_flush@basic-uc-pro-default: - shard-dg2: NOTRUN -> [SKIP][24] ([i915#3539] / [i915#4852]) +2 other tests skip [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@gem_exec_flush@basic-uc-pro-default.html * igt@gem_exec_flush@basic-wb-rw-default: - shard-dg2-9: NOTRUN -> [SKIP][25] ([i915#3539] / [i915#4852]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_exec_flush@basic-wb-rw-default.html * igt@gem_exec_reloc@basic-cpu-wc: - shard-rkl: NOTRUN -> [SKIP][26] ([i915#3281]) +2 other tests skip [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gem_exec_reloc@basic-cpu-wc.html * igt@gem_exec_reloc@basic-gtt-read: - shard-dg2: NOTRUN -> [SKIP][27] ([i915#3281]) +6 other tests skip [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@gem_exec_reloc@basic-gtt-read.html * igt@gem_exec_reloc@basic-wc-gtt: - shard-mtlp: NOTRUN -> [SKIP][28] ([i915#3281]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gem_exec_reloc@basic-wc-gtt.html * igt@gem_fence_thrash@bo-write-verify-y: - shard-dg2-9: NOTRUN -> [SKIP][29] ([i915#4860]) +2 other tests skip [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_fence_thrash@bo-write-verify-y.html * igt@gem_fenced_exec_thrash@2-spare-fences: - shard-dg2: NOTRUN -> [SKIP][30] ([i915#4860]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@gem_fenced_exec_thrash@2-spare-fences.html * igt@gem_huc_copy@huc-copy: - shard-tglu: NOTRUN -> [SKIP][31] ([i915#2190]) [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@gem_huc_copy@huc-copy.html * igt@gem_lmem_swapping@basic: - shard-glk: NOTRUN -> [SKIP][32] ([i915#4613]) [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk5/igt@gem_lmem_swapping@basic.html * igt@gem_lmem_swapping@heavy-verify-random: - shard-tglu-1: NOTRUN -> [SKIP][33] ([i915#4613]) +1 other test skip [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@gem_lmem_swapping@heavy-verify-random.html * igt@gem_lmem_swapping@parallel-random: - shard-rkl: NOTRUN -> [SKIP][34] ([i915#4613]) [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gem_lmem_swapping@parallel-random.html * igt@gem_lmem_swapping@verify-ccs: - shard-mtlp: NOTRUN -> [SKIP][35] ([i915#4613]) [35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gem_lmem_swapping@verify-ccs.html * igt@gem_lmem_swapping@verify-random: - shard-tglu: NOTRUN -> [SKIP][36] ([i915#4613]) [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@gem_lmem_swapping@verify-random.html * igt@gem_media_fill@media-fill: - shard-dg2: NOTRUN -> [SKIP][37] ([i915#8289]) [37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@gem_media_fill@media-fill.html * igt@gem_mmap_gtt@fault-concurrent-x: - shard-dg2-9: NOTRUN -> [SKIP][38] ([i915#4077]) +5 other tests skip [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_mmap_gtt@fault-concurrent-x.html * igt@gem_mmap_wc@copy: - shard-dg2: NOTRUN -> [SKIP][39] ([i915#4083]) +2 other tests skip [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@gem_mmap_wc@copy.html * igt@gem_mmap_wc@invalid-flags: - shard-dg2-9: NOTRUN -> [SKIP][40] ([i915#4083]) +2 other tests skip [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_mmap_wc@invalid-flags.html * igt@gem_partial_pwrite_pread@reads-uncached: - shard-mtlp: NOTRUN -> [SKIP][41] ([i915#3282]) [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gem_partial_pwrite_pread@reads-uncached.html * igt@gem_partial_pwrite_pread@writes-after-reads-snoop: - shard-dg2: NOTRUN -> [SKIP][42] ([i915#3282]) +4 other tests skip [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@gem_partial_pwrite_pread@writes-after-reads-snoop.html * igt@gem_pread@exhaustion: - shard-tglu: NOTRUN -> [WARN][43] ([i915#2658]) [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@gem_pread@exhaustion.html * igt@gem_pwrite@basic-exhaustion: - shard-glk: NOTRUN -> [WARN][44] ([i915#14702] / [i915#2658]) [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk5/igt@gem_pwrite@basic-exhaustion.html * igt@gem_pwrite@basic-random: - shard-rkl: NOTRUN -> [SKIP][45] ([i915#3282]) [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gem_pwrite@basic-random.html * igt@gem_pxp@create-valid-protected-context: - shard-rkl: [PASS][46] -> [SKIP][47] ([i915#4270]) [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-8/igt@gem_pxp@create-valid-protected-context.html [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@gem_pxp@create-valid-protected-context.html * igt@gem_pxp@fail-invalid-protected-context: - shard-rkl: [PASS][48] -> [TIMEOUT][49] ([i915#12964]) [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-8/igt@gem_pxp@fail-invalid-protected-context.html [49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gem_pxp@fail-invalid-protected-context.html * igt@gem_pxp@hw-rejects-pxp-context: - shard-tglu: NOTRUN -> [SKIP][50] ([i915#13398]) [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@gem_pxp@hw-rejects-pxp-context.html * igt@gem_pxp@regular-baseline-src-copy-readible: - shard-dg2: NOTRUN -> [SKIP][51] ([i915#4270]) +2 other tests skip [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@gem_pxp@regular-baseline-src-copy-readible.html * igt@gem_pxp@verify-pxp-execution-after-suspend-resume: - shard-rkl: [PASS][52] -> [TIMEOUT][53] ([i915#12917] / [i915#12964]) +3 other tests timeout [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-8/igt@gem_pxp@verify-pxp-execution-after-suspend-resume.html [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-5/igt@gem_pxp@verify-pxp-execution-after-suspend-resume.html * igt@gem_pxp@verify-pxp-stale-buf-execution: - shard-dg2-9: NOTRUN -> [SKIP][54] ([i915#4270]) +2 other tests skip [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_pxp@verify-pxp-stale-buf-execution.html * igt@gem_pxp@verify-pxp-stale-ctx-execution: - shard-rkl: NOTRUN -> [TIMEOUT][55] ([i915#12917] / [i915#12964]) [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gem_pxp@verify-pxp-stale-ctx-execution.html * igt@gem_readwrite@write-bad-handle: - shard-dg2-9: NOTRUN -> [SKIP][56] ([i915#3282]) [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_readwrite@write-bad-handle.html * igt@gem_render_copy@y-tiled-mc-ccs-to-vebox-y-tiled: - shard-mtlp: NOTRUN -> [SKIP][57] ([i915#8428]) [57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gem_render_copy@y-tiled-mc-ccs-to-vebox-y-tiled.html * igt@gem_render_copy@y-tiled-to-vebox-linear: - shard-dg2: NOTRUN -> [SKIP][58] ([i915#5190] / [i915#8428]) +6 other tests skip [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@gem_render_copy@y-tiled-to-vebox-linear.html * igt@gem_render_copy@y-tiled-to-vebox-y-tiled: - shard-dg2-9: NOTRUN -> [SKIP][59] ([i915#5190] / [i915#8428]) +2 other tests skip [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_render_copy@y-tiled-to-vebox-y-tiled.html * igt@gem_set_tiling_vs_blt@untiled-to-tiled: - shard-dg2: NOTRUN -> [SKIP][60] ([i915#4079]) +1 other test skip [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@gem_set_tiling_vs_blt@untiled-to-tiled.html * igt@gem_tiled_pread_basic: - shard-dg2-9: NOTRUN -> [SKIP][61] ([i915#4079]) [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gem_tiled_pread_basic.html * igt@gem_userptr_blits@coherency-sync: - shard-mtlp: NOTRUN -> [SKIP][62] ([i915#3297]) [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gem_userptr_blits@coherency-sync.html * igt@gem_userptr_blits@create-destroy-unsync: - shard-dg2: NOTRUN -> [SKIP][63] ([i915#3297]) +2 other tests skip [63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@gem_userptr_blits@create-destroy-unsync.html * igt@gem_userptr_blits@dmabuf-sync: - shard-rkl: NOTRUN -> [SKIP][64] ([i915#3297] / [i915#3323]) [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gem_userptr_blits@dmabuf-sync.html * igt@gem_userptr_blits@unsync-overlap: - shard-rkl: NOTRUN -> [SKIP][65] ([i915#3297]) [65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gem_userptr_blits@unsync-overlap.html * igt@gem_userptr_blits@unsync-unmap-cycles: - shard-tglu: NOTRUN -> [SKIP][66] ([i915#3297]) +1 other test skip [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@gem_userptr_blits@unsync-unmap-cycles.html * igt@gen3_mixed_blits: - shard-dg2-9: NOTRUN -> [SKIP][67] +4 other tests skip [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gen3_mixed_blits.html * igt@gen9_exec_parse@bb-chained: - shard-dg2: NOTRUN -> [SKIP][68] ([i915#2856]) +1 other test skip [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@gen9_exec_parse@bb-chained.html * igt@gen9_exec_parse@bb-start-cmd: - shard-tglu-1: NOTRUN -> [SKIP][69] ([i915#2527] / [i915#2856]) +3 other tests skip [69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@gen9_exec_parse@bb-start-cmd.html * igt@gen9_exec_parse@bb-start-far: - shard-mtlp: NOTRUN -> [SKIP][70] ([i915#2856]) [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gen9_exec_parse@bb-start-far.html * igt@gen9_exec_parse@secure-batches: - shard-rkl: NOTRUN -> [SKIP][71] ([i915#2527]) [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@gen9_exec_parse@secure-batches.html * igt@gen9_exec_parse@unaligned-access: - shard-dg2-9: NOTRUN -> [SKIP][72] ([i915#2856]) +3 other tests skip [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@gen9_exec_parse@unaligned-access.html * igt@gen9_exec_parse@unaligned-jump: - shard-tglu: NOTRUN -> [SKIP][73] ([i915#2527] / [i915#2856]) +2 other tests skip [73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@gen9_exec_parse@unaligned-jump.html * igt@i915_drm_fdinfo@busy-idle-check-all@vcs0: - shard-dg2: NOTRUN -> [SKIP][74] ([i915#11527]) +7 other tests skip [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@i915_drm_fdinfo@busy-idle-check-all@vcs0.html * igt@i915_drm_fdinfo@busy@rcs0: - shard-mtlp: NOTRUN -> [SKIP][75] ([i915#14073]) +6 other tests skip [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@i915_drm_fdinfo@busy@rcs0.html * igt@i915_drm_fdinfo@most-busy-check-all@vecs0: - shard-dg2: NOTRUN -> [SKIP][76] ([i915#14073]) +7 other tests skip [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@i915_drm_fdinfo@most-busy-check-all@vecs0.html * igt@i915_drm_fdinfo@virtual-busy-idle: - shard-dg2-9: NOTRUN -> [SKIP][77] ([i915#14118]) [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@i915_drm_fdinfo@virtual-busy-idle.html * igt@i915_fb_tiling@basic-x-tiling: - shard-dg2: NOTRUN -> [SKIP][78] ([i915#13786]) [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@i915_fb_tiling@basic-x-tiling.html * igt@i915_module_load@reload-no-display: - shard-dg2: [PASS][79] -> [DMESG-WARN][80] ([i915#13029] / [i915#14545]) [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-8/igt@i915_module_load@reload-no-display.html [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-7/igt@i915_module_load@reload-no-display.html * igt@i915_pm_freq_api@freq-reset-multiple: - shard-tglu-1: NOTRUN -> [SKIP][81] ([i915#8399]) +1 other test skip [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@i915_pm_freq_api@freq-reset-multiple.html * igt@i915_pm_rc6_residency@rc6-fence: - shard-tglu-1: NOTRUN -> [WARN][82] ([i915#13790] / [i915#2681]) +1 other test warn [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@i915_pm_rc6_residency@rc6-fence.html * igt@i915_pm_rps@min-max-config-loaded: - shard-dg2: NOTRUN -> [SKIP][83] ([i915#11681] / [i915#6621]) [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@i915_pm_rps@min-max-config-loaded.html * igt@i915_pm_rps@reset: - shard-snb: [PASS][84] -> [INCOMPLETE][85] ([i915#13729] / [i915#13821]) [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-snb1/igt@i915_pm_rps@reset.html [85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-snb1/igt@i915_pm_rps@reset.html * igt@i915_query@query-topology-coherent-slice-mask: - shard-dg2-9: NOTRUN -> [SKIP][86] ([i915#6188]) [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@i915_query@query-topology-coherent-slice-mask.html * igt@i915_suspend@basic-s3-without-i915: - shard-dg1: [PASS][87] -> [DMESG-WARN][88] ([i915#4391] / [i915#4423]) [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-17/igt@i915_suspend@basic-s3-without-i915.html [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-12/igt@i915_suspend@basic-s3-without-i915.html * igt@i915_suspend@fence-restore-untiled: - shard-dg2: NOTRUN -> [SKIP][89] ([i915#4077]) +11 other tests skip [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@i915_suspend@fence-restore-untiled.html * igt@intel_hwmon@hwmon-read: - shard-tglu-1: NOTRUN -> [SKIP][90] ([i915#7707]) [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@intel_hwmon@hwmon-read.html * igt@kms_addfb_basic@addfb25-framebuffer-vs-set-tiling: - shard-mtlp: NOTRUN -> [SKIP][91] ([i915#4212]) [91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_addfb_basic@addfb25-framebuffer-vs-set-tiling.html * igt@kms_addfb_basic@basic-x-tiled-legacy: - shard-dg2: NOTRUN -> [SKIP][92] ([i915#4212]) [92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_addfb_basic@basic-x-tiled-legacy.html * igt@kms_addfb_basic@invalid-smem-bo-on-discrete: - shard-tglu-1: NOTRUN -> [SKIP][93] ([i915#12454] / [i915#12712]) [93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html * igt@kms_async_flips@async-flip-suspend-resume: - shard-rkl: NOTRUN -> [INCOMPLETE][94] ([i915#12761]) +1 other test incomplete [94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_async_flips@async-flip-suspend-resume.html * igt@kms_atomic@plane-primary-overlay-mutable-zpos: - shard-dg2: NOTRUN -> [SKIP][95] ([i915#9531]) [95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html * igt@kms_atomic_transition@plane-all-modeset-transition-fencing: - shard-mtlp: NOTRUN -> [SKIP][96] ([i915#1769] / [i915#3555]) [96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html * igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels: - shard-dg2: NOTRUN -> [SKIP][97] ([i915#1769] / [i915#3555]) [97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html * igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-3: - shard-dg2: [PASS][98] -> [FAIL][99] ([i915#5956]) +1 other test fail [98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-6/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-3.html [99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-5/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-3.html * igt@kms_big_fb@4-tiled-8bpp-rotate-180: - shard-tglu: NOTRUN -> [SKIP][100] ([i915#5286]) +4 other tests skip [100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_big_fb@4-tiled-8bpp-rotate-180.html * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip: - shard-tglu-1: NOTRUN -> [SKIP][101] ([i915#5286]) +3 other tests skip [101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html * igt@kms_big_fb@linear-16bpp-rotate-90: - shard-rkl: NOTRUN -> [SKIP][102] ([i915#3638]) [102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_big_fb@linear-16bpp-rotate-90.html * igt@kms_big_fb@x-tiled-32bpp-rotate-270: - shard-dg2: NOTRUN -> [SKIP][103] +8 other tests skip [103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html * igt@kms_big_fb@y-tiled-64bpp-rotate-0: - shard-dg2: NOTRUN -> [SKIP][104] ([i915#4538] / [i915#5190]) +7 other tests skip [104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_big_fb@y-tiled-64bpp-rotate-0.html * igt@kms_big_fb@yf-tiled-addfb-size-overflow: - shard-rkl: NOTRUN -> [SKIP][105] +2 other tests skip [105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip: - shard-dg2-9: NOTRUN -> [SKIP][106] ([i915#4538] / [i915#5190]) +8 other tests skip [106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html * igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-2: - shard-rkl: NOTRUN -> [SKIP][107] ([i915#6095]) +30 other tests skip [107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-2.html * igt@kms_ccs@ccs-on-another-bo-y-tiled-ccs@pipe-b-edp-1: - shard-mtlp: NOTRUN -> [SKIP][108] ([i915#6095]) +4 other tests skip [108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_ccs@ccs-on-another-bo-y-tiled-ccs@pipe-b-edp-1.html * igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-2: - shard-dg2-9: NOTRUN -> [SKIP][109] ([i915#10307] / [i915#6095]) +53 other tests skip [109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-2.html * igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs: - shard-tglu-1: NOTRUN -> [SKIP][110] ([i915#12313]) +1 other test skip [110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html - shard-dg2-9: NOTRUN -> [SKIP][111] ([i915#12313]) [111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html * igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-1: - shard-tglu: NOTRUN -> [SKIP][112] ([i915#6095]) +54 other tests skip [112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-1.html * igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs: - shard-dg2: NOTRUN -> [SKIP][113] ([i915#12313]) +3 other tests skip [113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs.html * igt@kms_ccs@crc-primary-basic-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-1: - shard-dg2: NOTRUN -> [SKIP][114] ([i915#10307] / [i915#6095]) +87 other tests skip [114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-1.html * igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs: - shard-dg2-9: NOTRUN -> [SKIP][115] ([i915#10307] / [i915#10434] / [i915#6095]) [115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs.html * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs: - shard-tglu: NOTRUN -> [SKIP][116] ([i915#12805]) [116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html * igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs@pipe-c-hdmi-a-1: - shard-dg2: NOTRUN -> [SKIP][117] ([i915#6095]) +7 other tests skip [117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs@pipe-c-hdmi-a-1.html * igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-mc-ccs@pipe-b-hdmi-a-2: - shard-dg2-9: NOTRUN -> [SKIP][118] ([i915#6095]) +9 other tests skip [118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-mc-ccs@pipe-b-hdmi-a-2.html * igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-4: - shard-dg1: NOTRUN -> [SKIP][119] ([i915#6095]) +170 other tests skip [119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-18/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-4.html * igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs@pipe-a-hdmi-a-3: - shard-dg1: NOTRUN -> [SKIP][120] ([i915#4423] / [i915#6095]) [120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-12/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs@pipe-a-hdmi-a-3.html * igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1: - shard-dg2: NOTRUN -> [SKIP][121] ([i915#10307] / [i915#10434] / [i915#6095]) +1 other test skip [121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1.html * igt@kms_ccs@missing-ccs-buffer-y-tiled-gen12-mc-ccs@pipe-b-hdmi-a-1: - shard-tglu-1: NOTRUN -> [SKIP][122] ([i915#6095]) +59 other tests skip [122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_ccs@missing-ccs-buffer-y-tiled-gen12-mc-ccs@pipe-b-hdmi-a-1.html * igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-2: - shard-rkl: NOTRUN -> [SKIP][123] ([i915#14098] / [i915#6095]) +35 other tests skip [123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-2.html * igt@kms_cdclk@mode-transition-all-outputs: - shard-dg2: NOTRUN -> [SKIP][124] ([i915#13784]) [124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_cdclk@mode-transition-all-outputs.html * igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3: - shard-dg2: NOTRUN -> [SKIP][125] ([i915#13783]) +3 other tests skip [125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-3/igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3.html * igt@kms_chamelium_audio@hdmi-audio: - shard-dg2-9: NOTRUN -> [SKIP][126] ([i915#11151] / [i915#7828]) +5 other tests skip [126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_chamelium_audio@hdmi-audio.html * igt@kms_chamelium_color@ctm-blue-to-red: - shard-mtlp: NOTRUN -> [SKIP][127] +3 other tests skip [127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_chamelium_color@ctm-blue-to-red.html * igt@kms_chamelium_frames@dp-frame-dump: - shard-dg2: NOTRUN -> [SKIP][128] ([i915#11151] / [i915#7828]) +7 other tests skip [128]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_chamelium_frames@dp-frame-dump.html * igt@kms_chamelium_hpd@dp-hpd-storm-disable: - shard-tglu-1: NOTRUN -> [SKIP][129] ([i915#11151] / [i915#7828]) +5 other tests skip [129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_chamelium_hpd@dp-hpd-storm-disable.html * igt@kms_chamelium_hpd@hdmi-hpd-storm: - shard-rkl: NOTRUN -> [SKIP][130] ([i915#11151] / [i915#7828]) [130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_chamelium_hpd@hdmi-hpd-storm.html * igt@kms_chamelium_hpd@hdmi-hpd-storm-disable: - shard-mtlp: NOTRUN -> [SKIP][131] ([i915#11151] / [i915#7828]) [131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_chamelium_hpd@hdmi-hpd-storm-disable.html * igt@kms_chamelium_hpd@hdmi-hpd-with-enabled-mode: - shard-tglu: NOTRUN -> [SKIP][132] ([i915#11151] / [i915#7828]) +4 other tests skip [132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_chamelium_hpd@hdmi-hpd-with-enabled-mode.html * igt@kms_color@ctm-red-to-blue: - shard-rkl: [PASS][133] -> [SKIP][134] ([i915#12655] / [i915#14544]) [133]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_color@ctm-red-to-blue.html [134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_color@ctm-red-to-blue.html * igt@kms_content_protection@content-type-change: - shard-dg2-9: NOTRUN -> [SKIP][135] ([i915#9424]) [135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_content_protection@content-type-change.html * igt@kms_content_protection@dp-mst-lic-type-0: - shard-dg2: NOTRUN -> [SKIP][136] ([i915#3299]) [136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_content_protection@dp-mst-lic-type-0.html * igt@kms_content_protection@dp-mst-type-0: - shard-dg2-9: NOTRUN -> [SKIP][137] ([i915#3299]) [137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_content_protection@dp-mst-type-0.html - shard-tglu-1: NOTRUN -> [SKIP][138] ([i915#3116] / [i915#3299]) [138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_content_protection@dp-mst-type-0.html * igt@kms_content_protection@mei-interface: - shard-rkl: NOTRUN -> [SKIP][139] ([i915#9424]) [139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_content_protection@mei-interface.html * igt@kms_content_protection@srm: - shard-tglu: NOTRUN -> [SKIP][140] ([i915#6944] / [i915#7116] / [i915#7118]) [140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_content_protection@srm.html * igt@kms_content_protection@uevent: - shard-dg2: NOTRUN -> [SKIP][141] ([i915#7118] / [i915#9424]) [141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@kms_content_protection@uevent.html * igt@kms_cursor_crc@cursor-offscreen-512x170: - shard-rkl: NOTRUN -> [SKIP][142] ([i915#13049]) +1 other test skip [142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_cursor_crc@cursor-offscreen-512x170.html * igt@kms_cursor_crc@cursor-onscreen-256x85: - shard-tglu: NOTRUN -> [FAIL][143] ([i915#13566]) +3 other tests fail [143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_cursor_crc@cursor-onscreen-256x85.html * igt@kms_cursor_crc@cursor-onscreen-512x170: - shard-dg2: NOTRUN -> [SKIP][144] ([i915#13049]) [144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_cursor_crc@cursor-onscreen-512x170.html * igt@kms_cursor_crc@cursor-random-max-size: - shard-glk: NOTRUN -> [SKIP][145] +59 other tests skip [145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk5/igt@kms_cursor_crc@cursor-random-max-size.html * igt@kms_cursor_crc@cursor-sliding-256x85@pipe-a-hdmi-a-1: - shard-rkl: NOTRUN -> [FAIL][146] ([i915#13566]) [146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_cursor_crc@cursor-sliding-256x85@pipe-a-hdmi-a-1.html * igt@kms_cursor_crc@cursor-sliding-32x10: - shard-mtlp: NOTRUN -> [SKIP][147] ([i915#3555] / [i915#8814]) +1 other test skip [147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_cursor_crc@cursor-sliding-32x10.html * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic: - shard-dg2-9: NOTRUN -> [SKIP][148] ([i915#13046] / [i915#5354]) +3 other tests skip [148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size: - shard-dg2: NOTRUN -> [SKIP][149] ([i915#4103] / [i915#4213]) [149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions: - shard-glk: [PASS][150] -> [SKIP][151] +5 other tests skip [150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-glk5/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html [151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk8/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html * igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size: - shard-dg2: NOTRUN -> [SKIP][152] ([i915#13046] / [i915#5354]) +5 other tests skip [152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html * igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot: - shard-dg2: NOTRUN -> [SKIP][153] ([i915#9067]) [153]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html * igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size: - shard-tglu: NOTRUN -> [SKIP][154] ([i915#4103]) +1 other test skip [154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html * igt@kms_dirtyfb@drrs-dirtyfb-ioctl: - shard-dg2-9: NOTRUN -> [SKIP][155] ([i915#9833]) [155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html * igt@kms_dp_aux_dev: - shard-tglu-1: NOTRUN -> [SKIP][156] ([i915#1257]) [156]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_dp_aux_dev.html - shard-dg2-9: NOTRUN -> [SKIP][157] ([i915#1257]) [157]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_dp_aux_dev.html * igt@kms_dp_link_training@uhbr-mst: - shard-rkl: NOTRUN -> [SKIP][158] ([i915#13748]) [158]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_dp_link_training@uhbr-mst.html * igt@kms_dp_linktrain_fallback@dp-fallback: - shard-tglu: NOTRUN -> [SKIP][159] ([i915#13707]) [159]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_dp_linktrain_fallback@dp-fallback.html * igt@kms_dp_linktrain_fallback@dsc-fallback: - shard-rkl: NOTRUN -> [SKIP][160] ([i915#13707]) [160]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_dp_linktrain_fallback@dsc-fallback.html * igt@kms_dsc@dsc-basic: - shard-tglu-1: NOTRUN -> [SKIP][161] ([i915#3555] / [i915#3840]) [161]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_dsc@dsc-basic.html - shard-dg2-9: NOTRUN -> [SKIP][162] ([i915#3555] / [i915#3840]) [162]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_dsc@dsc-basic.html * igt@kms_dsc@dsc-fractional-bpp: - shard-tglu: NOTRUN -> [SKIP][163] ([i915#3840]) [163]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_dsc@dsc-fractional-bpp.html * igt@kms_dsc@dsc-with-bpc: - shard-dg2: NOTRUN -> [SKIP][164] ([i915#3555] / [i915#3840]) [164]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_dsc@dsc-with-bpc.html * igt@kms_dsc@dsc-with-output-formats: - shard-tglu: NOTRUN -> [SKIP][165] ([i915#3555] / [i915#3840]) [165]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_dsc@dsc-with-output-formats.html * igt@kms_fbcon_fbt@psr-suspend: - shard-dg2: NOTRUN -> [SKIP][166] ([i915#3469]) [166]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_fbcon_fbt@psr-suspend.html * igt@kms_feature_discovery@chamelium: - shard-dg2: NOTRUN -> [SKIP][167] ([i915#4854]) [167]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_feature_discovery@chamelium.html * igt@kms_feature_discovery@display-3x: - shard-dg2: NOTRUN -> [SKIP][168] ([i915#1839]) [168]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_feature_discovery@display-3x.html * igt@kms_feature_discovery@display-4x: - shard-tglu-1: NOTRUN -> [SKIP][169] ([i915#1839]) [169]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_feature_discovery@display-4x.html - shard-dg2-9: NOTRUN -> [SKIP][170] ([i915#1839]) [170]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_feature_discovery@display-4x.html * igt@kms_feature_discovery@psr1: - shard-tglu: NOTRUN -> [SKIP][171] ([i915#658]) [171]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_feature_discovery@psr1.html * igt@kms_flip@2x-absolute-wf_vblank: - shard-dg2: NOTRUN -> [SKIP][172] ([i915#9934]) +9 other tests skip [172]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_flip@2x-absolute-wf_vblank.html * igt@kms_flip@2x-flip-vs-expired-vblank: - shard-rkl: NOTRUN -> [SKIP][173] ([i915#9934]) [173]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_flip@2x-flip-vs-expired-vblank.html * igt@kms_flip@2x-flip-vs-fences-interruptible: - shard-mtlp: NOTRUN -> [SKIP][174] ([i915#8381]) [174]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_flip@2x-flip-vs-fences-interruptible.html * igt@kms_flip@2x-flip-vs-panning-interruptible: - shard-dg2-9: NOTRUN -> [SKIP][175] ([i915#9934]) +3 other tests skip [175]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_flip@2x-flip-vs-panning-interruptible.html * igt@kms_flip@2x-flip-vs-suspend: - shard-glk: NOTRUN -> [INCOMPLETE][176] ([i915#12745] / [i915#4839]) [176]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk6/igt@kms_flip@2x-flip-vs-suspend.html * igt@kms_flip@2x-flip-vs-suspend@ab-hdmi-a1-hdmi-a2: - shard-glk: NOTRUN -> [INCOMPLETE][177] ([i915#4839]) [177]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk6/igt@kms_flip@2x-flip-vs-suspend@ab-hdmi-a1-hdmi-a2.html * igt@kms_flip@2x-nonexisting-fb: - shard-tglu: NOTRUN -> [SKIP][178] ([i915#3637] / [i915#9934]) +5 other tests skip [178]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_flip@2x-nonexisting-fb.html * igt@kms_flip@2x-plain-flip: - shard-tglu-1: NOTRUN -> [SKIP][179] ([i915#3637] / [i915#9934]) +3 other tests skip [179]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_flip@2x-plain-flip.html * igt@kms_flip@blocking-wf_vblank: - shard-rkl: [PASS][180] -> [SKIP][181] ([i915#14544] / [i915#3637]) [180]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_flip@blocking-wf_vblank.html [181]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_flip@blocking-wf_vblank.html * igt@kms_flip@plain-flip-fb-recreate-interruptible: - shard-mtlp: [PASS][182] -> [FAIL][183] ([i915#10826]) +1 other test fail [182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-mtlp-7/igt@kms_flip@plain-flip-fb-recreate-interruptible.html [183]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-7/igt@kms_flip@plain-flip-fb-recreate-interruptible.html * igt@kms_flip@plain-flip-ts-check-interruptible: - shard-tglu: [PASS][184] -> [FAIL][185] ([i915#14600]) +1 other test fail [184]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-tglu-8/igt@kms_flip@plain-flip-ts-check-interruptible.html [185]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-7/igt@kms_flip@plain-flip-ts-check-interruptible.html * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling: - shard-rkl: NOTRUN -> [SKIP][186] ([i915#2672] / [i915#3555]) [186]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling: - shard-tglu-1: NOTRUN -> [SKIP][187] ([i915#2672] / [i915#3555]) +2 other tests skip [187]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode: - shard-tglu-1: NOTRUN -> [SKIP][188] ([i915#2587] / [i915#2672]) +3 other tests skip [188]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode.html * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling: - shard-tglu: NOTRUN -> [SKIP][189] ([i915#2672] / [i915#3555]) +1 other test skip [189]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling.html * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode: - shard-dg2-9: NOTRUN -> [SKIP][190] ([i915#2672]) +2 other tests skip [190]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode.html - shard-rkl: NOTRUN -> [SKIP][191] ([i915#2672]) +1 other test skip [191]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode.html * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling: - shard-dg2: NOTRUN -> [SKIP][192] ([i915#2672] / [i915#3555]) [192]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling.html * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling@pipe-a-default-mode: - shard-mtlp: NOTRUN -> [SKIP][193] ([i915#2672] / [i915#3555] / [i915#8813]) +1 other test skip [193]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling@pipe-a-default-mode.html * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling: - shard-dg2: NOTRUN -> [SKIP][194] ([i915#2672] / [i915#3555] / [i915#5190]) +1 other test skip [194]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling.html * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling@pipe-a-valid-mode: - shard-dg2: NOTRUN -> [SKIP][195] ([i915#2672]) +2 other tests skip [195]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling@pipe-a-valid-mode.html * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling: - shard-tglu: NOTRUN -> [SKIP][196] ([i915#2587] / [i915#2672] / [i915#3555]) [196]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling@pipe-a-valid-mode: - shard-tglu: NOTRUN -> [SKIP][197] ([i915#2587] / [i915#2672]) +2 other tests skip [197]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling@pipe-a-valid-mode.html * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling: - shard-dg2-9: NOTRUN -> [SKIP][198] ([i915#2672] / [i915#3555] / [i915#5190]) [198]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html - shard-tglu-1: NOTRUN -> [SKIP][199] ([i915#2587] / [i915#2672] / [i915#3555]) [199]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html * igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling: - shard-rkl: [PASS][200] -> [SKIP][201] ([i915#14544] / [i915#3555]) [200]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling.html [201]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling.html * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling: - shard-dg2-9: NOTRUN -> [SKIP][202] ([i915#2672] / [i915#3555]) +1 other test skip [202]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt: - shard-tglu: NOTRUN -> [SKIP][203] +46 other tests skip [203]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-gtt: - shard-rkl: NOTRUN -> [SKIP][204] ([i915#1825]) +8 other tests skip [204]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbc-suspend: - shard-rkl: [PASS][205] -> [SKIP][206] ([i915#14544] / [i915#1849] / [i915#5354]) +1 other test skip [205]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_frontbuffer_tracking@fbc-suspend.html [206]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-suspend.html * igt@kms_frontbuffer_tracking@fbc-tiling-4: - shard-tglu-1: NOTRUN -> [SKIP][207] ([i915#5439]) [207]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_frontbuffer_tracking@fbc-tiling-4.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-render: - shard-rkl: NOTRUN -> [SKIP][208] ([i915#15102] / [i915#3023]) +2 other tests skip [208]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-render.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-fullscreen: - shard-dg2-9: NOTRUN -> [SKIP][209] ([i915#15102] / [i915#3458]) +5 other tests skip [209]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-fullscreen.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-gtt: - shard-mtlp: NOTRUN -> [SKIP][210] ([i915#8708]) [210]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-render: - shard-dg2: NOTRUN -> [SKIP][211] ([i915#5354]) +21 other tests skip [211]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-render.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-move: - shard-dg2-9: NOTRUN -> [SKIP][212] ([i915#5354]) +13 other tests skip [212]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-move.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-wc: - shard-dg2-9: NOTRUN -> [SKIP][213] ([i915#8708]) +14 other tests skip [213]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-wc: - shard-mtlp: NOTRUN -> [SKIP][214] ([i915#1825]) +3 other tests skip [214]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-wc: - shard-tglu-1: NOTRUN -> [SKIP][215] ([i915#15102]) +10 other tests skip [215]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@fbcpsr-tiling-y: - shard-dg2-9: NOTRUN -> [SKIP][216] ([i915#10055]) [216]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-mmap-wc: - shard-dg2: NOTRUN -> [SKIP][217] ([i915#8708]) +12 other tests skip [217]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary: - shard-dg2: NOTRUN -> [SKIP][218] ([i915#15102] / [i915#3458]) +11 other tests skip [218]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary.html * igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-gtt: - shard-tglu: NOTRUN -> [SKIP][219] ([i915#15102]) +14 other tests skip [219]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-gtt.html * igt@kms_hdr@static-toggle: - shard-tglu-1: NOTRUN -> [SKIP][220] ([i915#3555] / [i915#8228]) [220]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_hdr@static-toggle.html - shard-dg2-9: NOTRUN -> [SKIP][221] ([i915#3555] / [i915#8228]) [221]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_hdr@static-toggle.html * igt@kms_hdr@static-toggle-suspend: - shard-dg2: NOTRUN -> [SKIP][222] ([i915#3555] / [i915#8228]) +2 other tests skip [222]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_hdr@static-toggle-suspend.html * igt@kms_joiner@basic-big-joiner: - shard-tglu: NOTRUN -> [SKIP][223] ([i915#10656]) [223]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_joiner@basic-big-joiner.html * igt@kms_joiner@basic-max-non-joiner: - shard-dg2-9: NOTRUN -> [SKIP][224] ([i915#13688]) [224]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_joiner@basic-max-non-joiner.html - shard-tglu-1: NOTRUN -> [SKIP][225] ([i915#13688]) [225]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_joiner@basic-max-non-joiner.html * igt@kms_joiner@invalid-modeset-force-big-joiner: - shard-tglu-1: NOTRUN -> [SKIP][226] ([i915#12388]) [226]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_joiner@invalid-modeset-force-big-joiner.html - shard-dg2-9: NOTRUN -> [SKIP][227] ([i915#12388]) [227]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_joiner@invalid-modeset-force-big-joiner.html * igt@kms_joiner@invalid-modeset-force-ultra-joiner: - shard-rkl: NOTRUN -> [SKIP][228] ([i915#12394]) +1 other test skip [228]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html * igt@kms_lease@lease-invalid-plane: - shard-rkl: [PASS][229] -> [SKIP][230] ([i915#14544]) +15 other tests skip [229]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_lease@lease-invalid-plane.html [230]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_lease@lease-invalid-plane.html * igt@kms_pipe_b_c_ivb@enable-pipe-c-while-b-has-3-lanes: - shard-tglu-1: NOTRUN -> [SKIP][231] +42 other tests skip [231]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_pipe_b_c_ivb@enable-pipe-c-while-b-has-3-lanes.html * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence: - shard-rkl: [PASS][232] -> [SKIP][233] ([i915#11190] / [i915#14544]) [232]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html [233]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html - shard-glk10: NOTRUN -> [SKIP][234] ([i915#11190]) [234]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk10/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html * igt@kms_pipe_stress@stress-xrgb8888-ytiled: - shard-dg2-9: NOTRUN -> [SKIP][235] ([i915#13705]) [235]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html * igt@kms_plane_multiple@2x-tiling-4: - shard-tglu: NOTRUN -> [SKIP][236] ([i915#13958]) [236]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_plane_multiple@2x-tiling-4.html * igt@kms_plane_multiple@2x-tiling-yf: - shard-dg2: NOTRUN -> [SKIP][237] ([i915#13958]) [237]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_plane_multiple@2x-tiling-yf.html * igt@kms_plane_multiple@tiling-4: - shard-tglu: NOTRUN -> [SKIP][238] ([i915#14259]) [238]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_plane_multiple@tiling-4.html * igt@kms_plane_multiple@tiling-y: - shard-dg2-9: NOTRUN -> [SKIP][239] ([i915#14259]) [239]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_plane_multiple@tiling-y.html * igt@kms_plane_multiple@tiling-yf: - shard-dg2: NOTRUN -> [SKIP][240] ([i915#14259]) [240]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@kms_plane_multiple@tiling-yf.html * igt@kms_plane_scaling@plane-upscale-factor-0-25-with-rotation: - shard-rkl: NOTRUN -> [SKIP][241] ([i915#12247]) +3 other tests skip [241]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_plane_scaling@plane-upscale-factor-0-25-with-rotation.html * igt@kms_pm_backlight@brightness-with-dpms: - shard-tglu: NOTRUN -> [SKIP][242] ([i915#12343]) [242]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_pm_backlight@brightness-with-dpms.html * igt@kms_pm_dc@dc5-psr: - shard-dg2-9: NOTRUN -> [SKIP][243] ([i915#9685]) +2 other tests skip [243]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_pm_dc@dc5-psr.html * igt@kms_pm_dc@dc5-retention-flops: - shard-mtlp: NOTRUN -> [SKIP][244] ([i915#3828]) [244]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_pm_dc@dc5-retention-flops.html * igt@kms_pm_dc@dc6-dpms: - shard-dg2: NOTRUN -> [SKIP][245] ([i915#14104]) [245]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_pm_dc@dc6-dpms.html * igt@kms_pm_dc@dc6-psr: - shard-dg2: NOTRUN -> [SKIP][246] ([i915#9685]) [246]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@kms_pm_dc@dc6-psr.html * igt@kms_pm_lpsp@kms-lpsp: - shard-dg2: [PASS][247] -> [SKIP][248] ([i915#9340]) [247]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-4/igt@kms_pm_lpsp@kms-lpsp.html [248]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-3/igt@kms_pm_lpsp@kms-lpsp.html * igt@kms_pm_rpm@dpms-mode-unset-lpsp: - shard-dg2: [PASS][249] -> [SKIP][250] ([i915#15073]) [249]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-4/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html [250]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-6/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html * igt@kms_pm_rpm@modeset-lpsp-stress-no-wait: - shard-dg2: NOTRUN -> [SKIP][251] ([i915#15073]) [251]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_pm_rpm@modeset-lpsp-stress-no-wait.html * igt@kms_pm_rpm@modeset-non-lpsp: - shard-tglu-1: NOTRUN -> [SKIP][252] ([i915#15073]) [252]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_pm_rpm@modeset-non-lpsp.html * igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait: - shard-tglu: NOTRUN -> [SKIP][253] ([i915#15073]) +1 other test skip [253]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait.html * igt@kms_prime@basic-crc-vgem: - shard-dg2: NOTRUN -> [SKIP][254] ([i915#6524] / [i915#6805]) [254]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@kms_prime@basic-crc-vgem.html * igt@kms_prime@basic-modeset-hybrid: - shard-dg2-9: NOTRUN -> [SKIP][255] ([i915#6524] / [i915#6805]) [255]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_prime@basic-modeset-hybrid.html * igt@kms_psr2_sf@fbc-pr-cursor-plane-update-sf: - shard-tglu: NOTRUN -> [SKIP][256] ([i915#11520]) +5 other tests skip [256]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_psr2_sf@fbc-pr-cursor-plane-update-sf.html * igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area: - shard-dg2: NOTRUN -> [SKIP][257] ([i915#11520]) +7 other tests skip [257]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area.html * igt@kms_psr2_sf@fbc-psr2-cursor-plane-update-sf: - shard-glk10: NOTRUN -> [SKIP][258] ([i915#11520]) +11 other tests skip [258]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk10/igt@kms_psr2_sf@fbc-psr2-cursor-plane-update-sf.html * igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-fully-sf: - shard-dg2-9: NOTRUN -> [SKIP][259] ([i915#11520]) +4 other tests skip [259]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-fully-sf.html * igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area: - shard-rkl: NOTRUN -> [SKIP][260] ([i915#11520]) +1 other test skip [260]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area.html * igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf: - shard-mtlp: NOTRUN -> [SKIP][261] ([i915#12316]) [261]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf.html * igt@kms_psr2_sf@psr2-overlay-plane-update-continuous-sf: - shard-tglu-1: NOTRUN -> [SKIP][262] ([i915#11520]) +5 other tests skip [262]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_psr2_sf@psr2-overlay-plane-update-continuous-sf.html * igt@kms_psr2_sf@psr2-overlay-primary-update-sf-dmg-area: - shard-glk: NOTRUN -> [SKIP][263] ([i915#11520]) +2 other tests skip [263]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk5/igt@kms_psr2_sf@psr2-overlay-primary-update-sf-dmg-area.html * igt@kms_psr2_su@frontbuffer-xrgb8888: - shard-dg2: NOTRUN -> [SKIP][264] ([i915#9683]) [264]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_psr2_su@frontbuffer-xrgb8888.html * igt@kms_psr2_su@page_flip-xrgb8888: - shard-tglu: NOTRUN -> [SKIP][265] ([i915#9683]) [265]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_psr2_su@page_flip-xrgb8888.html * igt@kms_psr@fbc-pr-primary-blt: - shard-dg2-9: NOTRUN -> [SKIP][266] ([i915#1072] / [i915#9732]) +14 other tests skip [266]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_psr@fbc-pr-primary-blt.html * igt@kms_psr@fbc-pr-sprite-mmap-gtt: - shard-mtlp: NOTRUN -> [SKIP][267] ([i915#9688]) [267]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_psr@fbc-pr-sprite-mmap-gtt.html * igt@kms_psr@fbc-psr-cursor-plane-onoff: - shard-tglu: NOTRUN -> [SKIP][268] ([i915#9732]) +14 other tests skip [268]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_psr@fbc-psr-cursor-plane-onoff.html * igt@kms_psr@fbc-psr2-basic: - shard-tglu-1: NOTRUN -> [SKIP][269] ([i915#9732]) +14 other tests skip [269]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_psr@fbc-psr2-basic.html * igt@kms_psr@fbc-psr2-sprite-render: - shard-rkl: NOTRUN -> [SKIP][270] ([i915#1072] / [i915#9732]) +4 other tests skip [270]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_psr@fbc-psr2-sprite-render.html * igt@kms_psr@pr-primary-mmap-gtt: - shard-dg2: NOTRUN -> [SKIP][271] ([i915#1072] / [i915#9732]) +17 other tests skip [271]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_psr@pr-primary-mmap-gtt.html * igt@kms_psr_stress_test@flip-primary-invalidate-overlay: - shard-tglu-1: NOTRUN -> [SKIP][272] ([i915#9685]) +1 other test skip [272]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html * igt@kms_rotation_crc@primary-y-tiled-reflect-x-90: - shard-dg2-9: NOTRUN -> [SKIP][273] ([i915#12755] / [i915#5190]) [273]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_rotation_crc@primary-y-tiled-reflect-x-90.html * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0: - shard-dg2: NOTRUN -> [SKIP][274] ([i915#5190]) +2 other tests skip [274]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180: - shard-dg2-9: NOTRUN -> [SKIP][275] ([i915#5190]) +1 other test skip [275]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270: - shard-tglu: NOTRUN -> [SKIP][276] ([i915#5289]) +2 other tests skip [276]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html * igt@kms_rotation_crc@sprite-rotation-90: - shard-dg2-9: NOTRUN -> [SKIP][277] ([i915#12755]) +1 other test skip [277]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_rotation_crc@sprite-rotation-90.html * igt@kms_selftest@drm_format_helper@drm_format_helper_test-drm_test_fb_xrgb8888_to_argb1555: - shard-glk10: NOTRUN -> [FAIL][278] ([i915#15119]) +17 other tests fail [278]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk10/igt@kms_selftest@drm_format_helper@drm_format_helper_test-drm_test_fb_xrgb8888_to_argb1555.html * igt@kms_selftest@drm_plane_helper@drm_test_check_invalid_plane_state: - shard-rkl: NOTRUN -> [FAIL][279] ([i915#15119]) +2 other tests fail [279]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@kms_selftest@drm_plane_helper@drm_test_check_invalid_plane_state.html * igt@kms_setmode@basic-clone-single-crtc: - shard-dg2: NOTRUN -> [SKIP][280] ([i915#3555]) +6 other tests skip [280]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@kms_setmode@basic-clone-single-crtc.html * igt@kms_setmode@invalid-clone-exclusive-crtc: - shard-dg2-9: NOTRUN -> [SKIP][281] ([i915#3555]) +3 other tests skip [281]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_setmode@invalid-clone-exclusive-crtc.html * igt@kms_setmode@invalid-clone-single-crtc: - shard-tglu-1: NOTRUN -> [SKIP][282] ([i915#3555]) +2 other tests skip [282]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_setmode@invalid-clone-single-crtc.html * igt@kms_setmode@invalid-clone-single-crtc-stealing: - shard-mtlp: NOTRUN -> [SKIP][283] ([i915#3555] / [i915#8809]) [283]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@kms_setmode@invalid-clone-single-crtc-stealing.html * igt@kms_tiled_display@basic-test-pattern: - shard-tglu: NOTRUN -> [SKIP][284] ([i915#8623]) [284]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_tiled_display@basic-test-pattern.html * igt@kms_vblank@ts-continuation-idle-hang: - shard-glk10: NOTRUN -> [SKIP][285] +454 other tests skip [285]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk10/igt@kms_vblank@ts-continuation-idle-hang.html * igt@kms_vblank@wait-forked-busy-hang: - shard-rkl: [PASS][286] -> [DMESG-WARN][287] ([i915#12964]) +15 other tests dmesg-warn [286]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-8/igt@kms_vblank@wait-forked-busy-hang.html [287]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_vblank@wait-forked-busy-hang.html * igt@kms_vblank@wait-forked-busy-hang@pipe-b-hdmi-a-1: - shard-rkl: NOTRUN -> [DMESG-WARN][288] ([i915#12964]) +4 other tests dmesg-warn [288]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_vblank@wait-forked-busy-hang@pipe-b-hdmi-a-1.html * igt@kms_vrr@flip-basic-fastset: - shard-dg2: NOTRUN -> [SKIP][289] ([i915#9906]) [289]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_vrr@flip-basic-fastset.html * igt@kms_vrr@flip-suspend: - shard-tglu: NOTRUN -> [SKIP][290] ([i915#3555]) +2 other tests skip [290]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-3/igt@kms_vrr@flip-suspend.html * igt@kms_vrr@seamless-rr-switch-virtual: - shard-tglu-1: NOTRUN -> [SKIP][291] ([i915#9906]) [291]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_vrr@seamless-rr-switch-virtual.html * igt@kms_writeback@writeback-check-output: - shard-dg2-9: NOTRUN -> [SKIP][292] ([i915#2437]) [292]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@kms_writeback@writeback-check-output.html - shard-tglu-1: NOTRUN -> [SKIP][293] ([i915#2437]) [293]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@kms_writeback@writeback-check-output.html * igt@kms_writeback@writeback-check-output-xrgb2101010: - shard-tglu: NOTRUN -> [SKIP][294] ([i915#2437] / [i915#9412]) [294]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_writeback@writeback-check-output-xrgb2101010.html * igt@kms_writeback@writeback-fb-id: - shard-tglu: NOTRUN -> [SKIP][295] ([i915#2437]) [295]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-4/igt@kms_writeback@writeback-fb-id.html * igt@perf@global-sseu-config-invalid: - shard-dg2: NOTRUN -> [SKIP][296] ([i915#7387]) [296]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@perf@global-sseu-config-invalid.html * igt@perf@non-zero-reason: - shard-dg2-9: NOTRUN -> [FAIL][297] ([i915#9100]) +1 other test fail [297]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@perf@non-zero-reason.html * igt@perf_pmu@interrupts-sync: - shard-rkl: [PASS][298] -> [FAIL][299] ([i915#14470]) [298]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-8/igt@perf_pmu@interrupts-sync.html [299]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@perf_pmu@interrupts-sync.html * igt@perf_pmu@module-unload: - shard-rkl: NOTRUN -> [FAIL][300] ([i915#14433]) [300]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-7/igt@perf_pmu@module-unload.html * igt@perf_pmu@most-busy-idle-check-all: - shard-rkl: [PASS][301] -> [FAIL][302] ([i915#4349]) +1 other test fail [301]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-7/igt@perf_pmu@most-busy-idle-check-all.html [302]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-2/igt@perf_pmu@most-busy-idle-check-all.html * igt@perf_pmu@rc6-suspend: - shard-glk: NOTRUN -> [INCOMPLETE][303] ([i915#13356]) [303]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-glk8/igt@perf_pmu@rc6-suspend.html * igt@perf_pmu@rc6@other-idle-gt0: - shard-dg2-9: NOTRUN -> [SKIP][304] ([i915#8516]) [304]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@perf_pmu@rc6@other-idle-gt0.html - shard-tglu-1: NOTRUN -> [SKIP][305] ([i915#8516]) [305]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-1/igt@perf_pmu@rc6@other-idle-gt0.html * igt@prime_vgem@basic-fence-mmap: - shard-dg2: NOTRUN -> [SKIP][306] ([i915#3708] / [i915#4077]) [306]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@prime_vgem@basic-fence-mmap.html * igt@prime_vgem@basic-fence-read: - shard-dg2: NOTRUN -> [SKIP][307] ([i915#3291] / [i915#3708]) [307]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@prime_vgem@basic-fence-read.html * igt@prime_vgem@basic-gtt: - shard-dg2-9: NOTRUN -> [SKIP][308] ([i915#3708] / [i915#4077]) [308]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-9/igt@prime_vgem@basic-gtt.html * igt@prime_vgem@fence-flip-hang: - shard-dg2: NOTRUN -> [SKIP][309] ([i915#3708]) +1 other test skip [309]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@prime_vgem@fence-flip-hang.html * igt@sriov_basic@bind-unbind-vf: - shard-dg2: NOTRUN -> [SKIP][310] ([i915#9917]) +1 other test skip [310]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-1/igt@sriov_basic@bind-unbind-vf.html #### Possible fixes #### * igt@gem_ccs@suspend-resume: - shard-dg2: [INCOMPLETE][311] ([i915#13356]) -> [PASS][312] [311]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-5/igt@gem_ccs@suspend-resume.html [312]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@gem_ccs@suspend-resume.html * igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0: - shard-dg2: [INCOMPLETE][313] ([i915#12392] / [i915#13356]) -> [PASS][314] [313]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-5/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0.html [314]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0.html * igt@gem_ctx_isolation@preservation-s3: - shard-dg1: [DMESG-WARN][315] ([i915#4423]) -> [PASS][316] +2 other tests pass [315]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-18/igt@gem_ctx_isolation@preservation-s3.html [316]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-19/igt@gem_ctx_isolation@preservation-s3.html * igt@gem_eio@in-flight-suspend: - shard-dg1: [DMESG-WARN][317] ([i915#4391] / [i915#4423]) -> [PASS][318] [317]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-12/igt@gem_eio@in-flight-suspend.html [318]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-15/igt@gem_eio@in-flight-suspend.html * igt@gem_eio@reset-stress: - shard-dg1: [FAIL][319] ([i915#5784]) -> [PASS][320] [319]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-15/igt@gem_eio@reset-stress.html [320]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-13/igt@gem_eio@reset-stress.html * igt@gem_mmap_offset@clear-via-pagefault: - shard-mtlp: [ABORT][321] ([i915#14809]) -> [PASS][322] +1 other test pass [321]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-mtlp-4/igt@gem_mmap_offset@clear-via-pagefault.html [322]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-8/igt@gem_mmap_offset@clear-via-pagefault.html * igt@gem_pxp@create-protected-buffer: - shard-rkl: [TIMEOUT][323] ([i915#12964]) -> [PASS][324] [323]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_pxp@create-protected-buffer.html [324]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@gem_pxp@create-protected-buffer.html * igt@gem_pxp@display-protected-crc: - shard-rkl: [TIMEOUT][325] ([i915#12917] / [i915#12964]) -> [PASS][326] +2 other tests pass [325]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-4/igt@gem_pxp@display-protected-crc.html [326]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@gem_pxp@display-protected-crc.html * igt@i915_module_load@reload-no-display: - shard-snb: [DMESG-WARN][327] ([i915#14545]) -> [PASS][328] [327]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-snb5/igt@i915_module_load@reload-no-display.html [328]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-snb1/igt@i915_module_load@reload-no-display.html * igt@i915_module_load@resize-bar: - shard-dg2: [DMESG-WARN][329] ([i915#14545]) -> [PASS][330] [329]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-5/igt@i915_module_load@resize-bar.html [330]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-8/igt@i915_module_load@resize-bar.html * igt@i915_selftest@live@gt_pm: - shard-rkl: [DMESG-FAIL][331] ([i915#12942]) -> [PASS][332] +1 other test pass [331]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@i915_selftest@live@gt_pm.html [332]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@i915_selftest@live@gt_pm.html * igt@i915_selftest@live@workarounds: - shard-dg2: [DMESG-FAIL][333] ([i915#12061]) -> [PASS][334] +1 other test pass [333]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-3/igt@i915_selftest@live@workarounds.html [334]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-5/igt@i915_selftest@live@workarounds.html - shard-mtlp: [DMESG-FAIL][335] ([i915#12061]) -> [PASS][336] +1 other test pass [335]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-mtlp-2/igt@i915_selftest@live@workarounds.html [336]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-4/igt@i915_selftest@live@workarounds.html * igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-edp-1: - shard-mtlp: [FAIL][337] ([i915#5956]) -> [PASS][338] +1 other test pass [337]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-mtlp-4/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-edp-1.html [338]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-mtlp-6/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-edp-1.html * igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc: - shard-rkl: [SKIP][339] ([i915#14544]) -> [PASS][340] +16 other tests pass [339]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc.html [340]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc.html * igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-1: - shard-tglu: [FAIL][341] ([i915#13566]) -> [PASS][342] +1 other test pass [341]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-tglu-9/igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-1.html [342]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-tglu-5/igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-1.html * igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-1: - shard-rkl: [FAIL][343] ([i915#13566]) -> [PASS][344] +1 other test pass [343]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-7/igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-1.html [344]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-2/igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-1.html * igt@kms_cursor_legacy@basic-flip-after-cursor-varying-size: - shard-rkl: [SKIP][345] ([i915#11190] / [i915#14544]) -> [PASS][346] +2 other tests pass [345]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_cursor_legacy@basic-flip-after-cursor-varying-size.html [346]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_cursor_legacy@basic-flip-after-cursor-varying-size.html * igt@kms_flip@2x-flip-vs-suspend@ab-vga1-hdmi-a1: - shard-snb: [TIMEOUT][347] ([i915#14033]) -> [PASS][348] +1 other test pass [347]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-snb4/igt@kms_flip@2x-flip-vs-suspend@ab-vga1-hdmi-a1.html [348]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-snb7/igt@kms_flip@2x-flip-vs-suspend@ab-vga1-hdmi-a1.html * igt@kms_flip@basic-flip-vs-wf_vblank: - shard-rkl: [DMESG-WARN][349] ([i915#12964]) -> [PASS][350] +21 other tests pass [349]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-2/igt@kms_flip@basic-flip-vs-wf_vblank.html [350]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@kms_flip@basic-flip-vs-wf_vblank.html * igt@kms_flip@flip-vs-wf_vblank-interruptible: - shard-rkl: [SKIP][351] ([i915#14544] / [i915#3637]) -> [PASS][352] +2 other tests pass [351]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_flip@flip-vs-wf_vblank-interruptible.html [352]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_flip@flip-vs-wf_vblank-interruptible.html * igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling: - shard-rkl: [SKIP][353] ([i915#14544] / [i915#3555]) -> [PASS][354] [353]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling.html [354]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite: - shard-rkl: [SKIP][355] ([i915#14544] / [i915#1849] / [i915#5354]) -> [PASS][356] +2 other tests pass [355]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html [356]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html * igt@kms_invalid_mode@clock-too-high: - shard-rkl: [SKIP][357] ([i915#14544] / [i915#3555] / [i915#8826]) -> [PASS][358] [357]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_invalid_mode@clock-too-high.html [358]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_invalid_mode@clock-too-high.html * igt@kms_plane_alpha_blend@alpha-7efc: - shard-rkl: [SKIP][359] ([i915#14544] / [i915#7294]) -> [PASS][360] [359]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_plane_alpha_blend@alpha-7efc.html [360]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_plane_alpha_blend@alpha-7efc.html * igt@kms_plane_scaling@planes-scaler-unity-scaling: - shard-rkl: [SKIP][361] ([i915#14544] / [i915#3555] / [i915#8152]) -> [PASS][362] [361]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_plane_scaling@planes-scaler-unity-scaling.html [362]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_plane_scaling@planes-scaler-unity-scaling.html * igt@kms_plane_scaling@planes-scaler-unity-scaling@pipe-a: - shard-rkl: [SKIP][363] ([i915#12247] / [i915#14544]) -> [PASS][364] [363]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_plane_scaling@planes-scaler-unity-scaling@pipe-a.html [364]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_plane_scaling@planes-scaler-unity-scaling@pipe-a.html * igt@kms_plane_scaling@planes-scaler-unity-scaling@pipe-b: - shard-rkl: [SKIP][365] ([i915#12247] / [i915#14544] / [i915#8152]) -> [PASS][366] [365]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_plane_scaling@planes-scaler-unity-scaling@pipe-b.html [366]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_plane_scaling@planes-scaler-unity-scaling@pipe-b.html * igt@kms_pm_rpm@modeset-lpsp-stress: - shard-dg2: [SKIP][367] ([i915#15073]) -> [PASS][368] +1 other test pass [367]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-1/igt@kms_pm_rpm@modeset-lpsp-stress.html [368]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_pm_rpm@modeset-lpsp-stress.html * igt@kms_pm_rpm@modeset-non-lpsp-stress: - shard-rkl: [SKIP][369] ([i915#15073]) -> [PASS][370] [369]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-2/igt@kms_pm_rpm@modeset-non-lpsp-stress.html [370]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-5/igt@kms_pm_rpm@modeset-non-lpsp-stress.html * igt@kms_setmode@basic: - shard-snb: [FAIL][371] ([i915#15106]) -> [PASS][372] +2 other tests pass [371]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-snb1/igt@kms_setmode@basic.html [372]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-snb1/igt@kms_setmode@basic.html #### Warnings #### * igt@gem_bad_reloc@negative-reloc-lut: - shard-rkl: [SKIP][373] ([i915#14544] / [i915#3281]) -> [SKIP][374] ([i915#3281]) +5 other tests skip [373]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@gem_bad_reloc@negative-reloc-lut.html [374]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@gem_bad_reloc@negative-reloc-lut.html * igt@gem_ccs@block-copy-compressed: - shard-rkl: [SKIP][375] ([i915#3555] / [i915#9323]) -> [SKIP][376] ([i915#14544] / [i915#3555] / [i915#9323]) [375]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_ccs@block-copy-compressed.html [376]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@gem_ccs@block-copy-compressed.html * igt@gem_ccs@ctrl-surf-copy-new-ctx: - shard-rkl: [SKIP][377] ([i915#9323]) -> [SKIP][378] ([i915#14544] / [i915#9323]) [377]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_ccs@ctrl-surf-copy-new-ctx.html [378]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@gem_ccs@ctrl-surf-copy-new-ctx.html * igt@gem_create@create-ext-cpu-access-big: - shard-rkl: [SKIP][379] ([i915#14544] / [i915#6335]) -> [SKIP][380] ([i915#6335]) [379]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@gem_create@create-ext-cpu-access-big.html [380]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@gem_create@create-ext-cpu-access-big.html * igt@gem_ctx_sseu@invalid-args: - shard-rkl: [SKIP][381] ([i915#280]) -> [SKIP][382] ([i915#14544] / [i915#280]) [381]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_ctx_sseu@invalid-args.html [382]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@gem_ctx_sseu@invalid-args.html * igt@gem_exec_reloc@basic-cpu-read-noreloc: - shard-rkl: [SKIP][383] ([i915#3281]) -> [SKIP][384] ([i915#14544] / [i915#3281]) +3 other tests skip [383]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_exec_reloc@basic-cpu-read-noreloc.html [384]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@gem_exec_reloc@basic-cpu-read-noreloc.html * igt@gem_lmem_swapping@random-engines: - shard-rkl: [SKIP][385] ([i915#4613]) -> [SKIP][386] ([i915#14544] / [i915#4613]) +1 other test skip [385]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_lmem_swapping@random-engines.html [386]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@gem_lmem_swapping@random-engines.html * igt@gem_pread@self: - shard-rkl: [SKIP][387] ([i915#3282]) -> [SKIP][388] ([i915#14544] / [i915#3282]) [387]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_pread@self.html [388]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@gem_pread@self.html * igt@gem_pxp@hw-rejects-pxp-context: - shard-rkl: [TIMEOUT][389] ([i915#12917] / [i915#12964]) -> [SKIP][390] ([i915#13717]) [389]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_pxp@hw-rejects-pxp-context.html [390]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@gem_pxp@hw-rejects-pxp-context.html * igt@gem_readwrite@write-bad-handle: - shard-rkl: [SKIP][391] ([i915#14544] / [i915#3282]) -> [SKIP][392] ([i915#3282]) [391]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@gem_readwrite@write-bad-handle.html [392]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@gem_readwrite@write-bad-handle.html * igt@gem_userptr_blits@readonly-pwrite-unsync: - shard-rkl: [SKIP][393] ([i915#3297]) -> [SKIP][394] ([i915#14544] / [i915#3297]) [393]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@gem_userptr_blits@readonly-pwrite-unsync.html [394]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@gem_userptr_blits@readonly-pwrite-unsync.html * igt@gen9_exec_parse@batch-without-end: - shard-rkl: [SKIP][395] ([i915#14544] / [i915#2527]) -> [SKIP][396] ([i915#2527]) [395]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@gen9_exec_parse@batch-without-end.html [396]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@gen9_exec_parse@batch-without-end.html * igt@i915_pm_freq_api@freq-reset: - shard-rkl: [SKIP][397] ([i915#8399]) -> [SKIP][398] ([i915#14544] / [i915#8399]) [397]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@i915_pm_freq_api@freq-reset.html [398]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@i915_pm_freq_api@freq-reset.html * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-async-flip: - shard-rkl: [SKIP][399] ([i915#14544]) -> [SKIP][400] ([i915#5286]) [399]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html [400]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip: - shard-rkl: [SKIP][401] ([i915#5286]) -> [SKIP][402] ([i915#14544]) +1 other test skip [401]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html [402]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html * igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-2: - shard-rkl: [SKIP][403] ([i915#14098] / [i915#6095]) -> [SKIP][404] ([i915#6095]) +8 other tests skip [403]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-2.html [404]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-2.html * igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs: - shard-rkl: [SKIP][405] ([i915#12313]) -> [SKIP][406] ([i915#14544]) [405]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs.html [406]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs.html * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs: - shard-rkl: [SKIP][407] ([i915#14098] / [i915#6095]) -> [SKIP][408] ([i915#14544]) +4 other tests skip [407]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs.html [408]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs.html * igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs@pipe-b-hdmi-a-2: - shard-rkl: [SKIP][409] ([i915#6095]) -> [SKIP][410] ([i915#14098] / [i915#6095]) +4 other tests skip [409]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-8/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs@pipe-b-hdmi-a-2.html [410]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-5/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs@pipe-b-hdmi-a-2.html * igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs: - shard-rkl: [SKIP][411] ([i915#14544]) -> [SKIP][412] ([i915#14098] / [i915#6095]) +1 other test skip [411]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs.html [412]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs.html * igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs: - shard-dg1: [SKIP][413] ([i915#6095]) -> [SKIP][414] ([i915#4423] / [i915#6095]) [413]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-17/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs.html [414]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-12/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs.html * igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs: - shard-dg1: [SKIP][415] ([i915#4423] / [i915#6095]) -> [SKIP][416] ([i915#6095]) +3 other tests skip [415]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-13/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs.html [416]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-17/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs.html * igt@kms_chamelium_edid@hdmi-mode-timings: - shard-rkl: [SKIP][417] ([i915#11151] / [i915#14544] / [i915#7828]) -> [SKIP][418] ([i915#11151] / [i915#7828]) +1 other test skip [417]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_chamelium_edid@hdmi-mode-timings.html [418]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_chamelium_edid@hdmi-mode-timings.html * igt@kms_chamelium_hpd@vga-hpd-with-enabled-mode: - shard-rkl: [SKIP][419] ([i915#11151] / [i915#7828]) -> [SKIP][420] ([i915#11151] / [i915#14544] / [i915#7828]) +1 other test skip [419]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_chamelium_hpd@vga-hpd-with-enabled-mode.html [420]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_chamelium_hpd@vga-hpd-with-enabled-mode.html * igt@kms_content_protection@content-type-change: - shard-rkl: [SKIP][421] ([i915#14544]) -> [SKIP][422] ([i915#9424]) [421]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_content_protection@content-type-change.html [422]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_content_protection@content-type-change.html * igt@kms_content_protection@type1: - shard-rkl: [SKIP][423] ([i915#7118] / [i915#9424]) -> [SKIP][424] ([i915#14544]) [423]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_content_protection@type1.html [424]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_content_protection@type1.html * igt@kms_cursor_crc@cursor-rapid-movement-32x10: - shard-rkl: [SKIP][425] ([i915#14544]) -> [SKIP][426] ([i915#3555]) [425]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_cursor_crc@cursor-rapid-movement-32x10.html [426]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_cursor_crc@cursor-rapid-movement-32x10.html * igt@kms_cursor_legacy@cursora-vs-flipb-varying-size: - shard-rkl: [SKIP][427] -> [SKIP][428] ([i915#14544]) +3 other tests skip [427]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html [428]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html * igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size: - shard-rkl: [SKIP][429] ([i915#14544]) -> [SKIP][430] +5 other tests skip [429]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html [430]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html * igt@kms_dirtyfb@drrs-dirtyfb-ioctl: - shard-rkl: [SKIP][431] ([i915#14544]) -> [SKIP][432] ([i915#9723]) [431]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html [432]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html * igt@kms_dsc@dsc-with-formats: - shard-rkl: [SKIP][433] ([i915#3555] / [i915#3840]) -> [SKIP][434] ([i915#14544]) [433]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_dsc@dsc-with-formats.html [434]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_dsc@dsc-with-formats.html * igt@kms_flip@2x-flip-vs-dpms-on-nop: - shard-rkl: [SKIP][435] ([i915#9934]) -> [SKIP][436] ([i915#14544] / [i915#9934]) +1 other test skip [435]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_flip@2x-flip-vs-dpms-on-nop.html [436]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_flip@2x-flip-vs-dpms-on-nop.html * igt@kms_flip@2x-flip-vs-panning-interruptible: - shard-rkl: [SKIP][437] ([i915#14544] / [i915#9934]) -> [SKIP][438] ([i915#9934]) [437]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_flip@2x-flip-vs-panning-interruptible.html [438]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_flip@2x-flip-vs-panning-interruptible.html * igt@kms_flip@2x-plain-flip-interruptible: - shard-dg1: [SKIP][439] ([i915#9934]) -> [SKIP][440] ([i915#4423] / [i915#9934]) [439]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-19/igt@kms_flip@2x-plain-flip-interruptible.html [440]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-16/igt@kms_flip@2x-plain-flip-interruptible.html * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling: - shard-rkl: [SKIP][441] ([i915#14544] / [i915#3555]) -> [SKIP][442] ([i915#2672] / [i915#3555]) [441]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling.html [442]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-pwrite: - shard-rkl: [SKIP][443] ([i915#15102] / [i915#3023]) -> [SKIP][444] ([i915#14544] / [i915#1849] / [i915#5354]) +6 other tests skip [443]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-pwrite.html [444]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-pwrite.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-move: - shard-dg1: [SKIP][445] ([i915#4423]) -> [SKIP][446] +1 other test skip [445]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-12/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-move.html [446]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-15/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-move.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-gtt: - shard-rkl: [SKIP][447] ([i915#1825]) -> [SKIP][448] ([i915#14544] / [i915#1849] / [i915#5354]) +7 other tests skip [447]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-gtt.html [448]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-gtt: - shard-dg1: [SKIP][449] ([i915#4423] / [i915#8708]) -> [SKIP][450] ([i915#8708]) [449]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-12/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-gtt.html [450]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-15/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbcpsr-suspend: - shard-dg2: [SKIP][451] ([i915#10433] / [i915#15102] / [i915#3458]) -> [SKIP][452] ([i915#15102] / [i915#3458]) +1 other test skip [451]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html [452]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-6/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-cpu: - shard-dg2: [SKIP][453] ([i915#15102] / [i915#3458]) -> [SKIP][454] ([i915#10433] / [i915#15102] / [i915#3458]) [453]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg2-1/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-cpu.html [454]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg2-4/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-cpu.html * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-render: - shard-rkl: [SKIP][455] ([i915#14544] / [i915#1849] / [i915#5354]) -> [SKIP][456] ([i915#1825]) +5 other tests skip [455]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-render.html [456]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-render.html * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-pwrite: - shard-dg1: [SKIP][457] -> [SKIP][458] ([i915#4423]) [457]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-19/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-pwrite.html [458]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-16/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-pwrite.html * igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render: - shard-rkl: [SKIP][459] ([i915#14544] / [i915#1849] / [i915#5354]) -> [SKIP][460] ([i915#15102] / [i915#3023]) +6 other tests skip [459]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render.html [460]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render.html * igt@kms_frontbuffer_tracking@psr-rgb565-draw-blt: - shard-dg1: [SKIP][461] ([i915#15102] / [i915#3458] / [i915#4423]) -> [SKIP][462] ([i915#15102] / [i915#3458]) [461]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-15/igt@kms_frontbuffer_tracking@psr-rgb565-draw-blt.html [462]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-13/igt@kms_frontbuffer_tracking@psr-rgb565-draw-blt.html * igt@kms_hdr@bpc-switch: - shard-rkl: [SKIP][463] ([i915#3555] / [i915#8228]) -> [SKIP][464] ([i915#14544]) +1 other test skip [463]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_hdr@bpc-switch.html [464]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_hdr@bpc-switch.html * igt@kms_hdr@brightness-with-hdr: - shard-dg1: [SKIP][465] ([i915#12713]) -> [SKIP][466] ([i915#1187] / [i915#12713]) [465]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-17/igt@kms_hdr@brightness-with-hdr.html [466]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-13/igt@kms_hdr@brightness-with-hdr.html * igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-a: - shard-rkl: [SKIP][467] ([i915#12247]) -> [SKIP][468] ([i915#12247] / [i915#14544]) [467]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-a.html [468]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-a.html * igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-b: - shard-rkl: [SKIP][469] ([i915#12247]) -> [SKIP][470] ([i915#12247] / [i915#14544] / [i915#8152]) +1 other test skip [469]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-b.html [470]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-b.html * igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-a: - shard-rkl: [SKIP][471] ([i915#12247] / [i915#14544]) -> [SKIP][472] ([i915#12247]) [471]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-a.html [472]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-a.html * igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-b: - shard-rkl: [SKIP][473] ([i915#12247] / [i915#14544] / [i915#8152]) -> [SKIP][474] ([i915#12247]) +1 other test skip [473]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-b.html [474]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-b.html * igt@kms_pm_backlight@fade: - shard-rkl: [SKIP][475] ([i915#5354]) -> [SKIP][476] ([i915#14544] / [i915#5354]) [475]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_pm_backlight@fade.html [476]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_pm_backlight@fade.html * igt@kms_pm_dc@dc5-psr: - shard-rkl: [SKIP][477] ([i915#14544] / [i915#9685]) -> [SKIP][478] ([i915#9685]) [477]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_pm_dc@dc5-psr.html [478]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_pm_dc@dc5-psr.html * igt@kms_pm_dc@dc9-dpms: - shard-rkl: [SKIP][479] ([i915#4281]) -> [SKIP][480] ([i915#3361]) [479]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_pm_dc@dc9-dpms.html [480]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@kms_pm_dc@dc9-dpms.html * igt@kms_pm_rpm@dpms-lpsp: - shard-rkl: [SKIP][481] ([i915#12916]) -> [SKIP][482] ([i915#15073]) [481]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_pm_rpm@dpms-lpsp.html [482]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-8/igt@kms_pm_rpm@dpms-lpsp.html * igt@kms_pm_rpm@modeset-lpsp-stress-no-wait: - shard-rkl: [DMESG-WARN][483] ([i915#12964]) -> [SKIP][484] ([i915#15073]) [483]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-2/igt@kms_pm_rpm@modeset-lpsp-stress-no-wait.html [484]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-5/igt@kms_pm_rpm@modeset-lpsp-stress-no-wait.html * igt@kms_prime@basic-modeset-hybrid: - shard-rkl: [SKIP][485] ([i915#14544] / [i915#6524]) -> [SKIP][486] ([i915#6524]) [485]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_prime@basic-modeset-hybrid.html [486]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_prime@basic-modeset-hybrid.html * igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-fully-sf: - shard-rkl: [SKIP][487] ([i915#11520]) -> [SKIP][488] ([i915#11520] / [i915#14544]) +1 other test skip [487]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-fully-sf.html [488]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-fully-sf.html * igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf: - shard-rkl: [SKIP][489] ([i915#11520] / [i915#14544]) -> [SKIP][490] ([i915#11520]) +1 other test skip [489]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html [490]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html * igt@kms_psr@pr-cursor-plane-onoff: - shard-rkl: [SKIP][491] ([i915#1072] / [i915#9732]) -> [SKIP][492] ([i915#1072] / [i915#14544] / [i915#9732]) +4 other tests skip [491]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@kms_psr@pr-cursor-plane-onoff.html [492]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@kms_psr@pr-cursor-plane-onoff.html * igt@kms_psr@pr-primary-blt: - shard-rkl: [SKIP][493] ([i915#1072] / [i915#14544] / [i915#9732]) -> [SKIP][494] ([i915#1072] / [i915#9732]) +4 other tests skip [493]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_psr@pr-primary-blt.html [494]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_psr@pr-primary-blt.html * igt@kms_psr@psr2-cursor-blt: - shard-dg1: [SKIP][495] ([i915#1072] / [i915#4423] / [i915#9732]) -> [SKIP][496] ([i915#1072] / [i915#9732]) [495]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-dg1-13/igt@kms_psr@psr2-cursor-blt.html [496]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-dg1-17/igt@kms_psr@psr2-cursor-blt.html * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180: - shard-rkl: [SKIP][497] ([i915#14544]) -> [SKIP][498] ([i915#5289]) [497]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html [498]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html * igt@kms_setmode@invalid-clone-exclusive-crtc: - shard-rkl: [SKIP][499] ([i915#14544] / [i915#3555]) -> [SKIP][500] ([i915#3555]) [499]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-6/igt@kms_setmode@invalid-clone-exclusive-crtc.html [500]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-4/igt@kms_setmode@invalid-clone-exclusive-crtc.html * igt@perf@gen8-unprivileged-single-ctx-counters: - shard-rkl: [SKIP][501] ([i915#2436]) -> [SKIP][502] ([i915#14544] / [i915#2436]) [501]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_17352/shard-rkl-5/igt@perf@gen8-unprivileged-single-ctx-counters.html [502]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/shard-rkl-6/igt@perf@gen8-unprivileged-single-ctx-counters.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [i915#10055]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10055 [i915#10307]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10307 [i915#10433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10433 [i915#10434]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10434 [i915#10656]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10656 [i915#1072]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1072 [i915#10826]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10826 [i915#11078]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11078 [i915#11151]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11151 [i915#11190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11190 [i915#11520]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11520 [i915#11527]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11527 [i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681 [i915#1187]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1187 [i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061 [i915#12247]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12247 [i915#12313]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12313 [i915#12316]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12316 [i915#12343]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12343 [i915#12353]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12353 [i915#12388]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12388 [i915#12392]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12392 [i915#12394]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12394 [i915#12454]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12454 [i915#1257]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1257 [i915#12655]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12655 [i915#12712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12712 [i915#12713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12713 [i915#12745]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12745 [i915#12755]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12755 [i915#12761]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12761 [i915#12805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12805 [i915#12916]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12916 [i915#12917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12917 [i915#12942]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12942 [i915#12964]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12964 [i915#13008]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13008 [i915#13029]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13029 [i915#13046]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13046 [i915#13049]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13049 [i915#13356]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13356 [i915#13398]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13398 [i915#13427]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13427 [i915#13566]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13566 [i915#13688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13688 [i915#13705]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13705 [i915#13707]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13707 [i915#13717]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13717 [i915#13729]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13729 [i915#13748]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13748 [i915#13783]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13783 [i915#13784]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13784 [i915#13786]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13786 [i915#13790]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13790 [i915#13821]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13821 [i915#13958]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13958 [i915#14033]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14033 [i915#14073]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14073 [i915#14098]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14098 [i915#14104]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14104 [i915#14118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14118 [i915#14259]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14259 [i915#14433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14433 [i915#14470]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14470 [i915#14544]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14544 [i915#14545]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14545 [i915#14600]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14600 [i915#14702]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14702 [i915#14712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14712 [i915#14809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14809 [i915#15073]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15073 [i915#15095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15095 [i915#15102]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15102 [i915#15104]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15104 [i915#15106]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15106 [i915#15119]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15119 [i915#1769]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1769 [i915#1825]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1825 [i915#1839]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1839 [i915#1849]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1849 [i915#2190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2190 [i915#2436]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2436 [i915#2437]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2437 [i915#2527]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2527 [i915#2587]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2587 [i915#2658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2658 [i915#2672]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2672 [i915#2681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2681 [i915#280]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/280 [i915#2856]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2856 [i915#3023]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3023 [i915#3116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3116 [i915#3281]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3281 [i915#3282]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3282 [i915#3291]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3291 [i915#3297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3297 [i915#3299]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3299 [i915#3323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3323 [i915#3361]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3361 [i915#3458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3458 [i915#3469]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3469 [i915#3539]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3539 [i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555 [i915#3637]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3637 [i915#3638]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3638 [i915#3708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3708 [i915#3828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3828 [i915#3840]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3840 [i915#4077]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4077 [i915#4079]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4079 [i915#4083]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4083 [i915#4103]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4103 [i915#4212]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4212 [i915#4213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4213 [i915#4270]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4270 [i915#4281]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4281 [i915#4349]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4349 [i915#4391]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4391 [i915#4423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4423 [i915#4525]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4525 [i915#4538]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4538 [i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613 [i915#4771]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4771 [i915#4812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4812 [i915#4839]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4839 [i915#4852]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4852 [i915#4854]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4854 [i915#4860]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4860 [i915#5190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5190 [i915#5286]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5286 [i915#5289]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5289 [i915#5354]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5354 [i915#5439]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5439 [i915#5493]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5493 [i915#5784]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5784 [i915#5882]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5882 [i915#5956]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5956 [i915#6095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6095 [i915#6188]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6188 [i915#6334]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6334 [i915#6335]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6335 [i915#6524]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6524 [i915#658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/658 [i915#6621]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6621 [i915#6805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6805 [i915#6944]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6944 [i915#7116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7116 [i915#7118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7118 [i915#7294]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7294 [i915#7387]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7387 [i915#7697]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7697 [i915#7707]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7707 [i915#7828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7828 [i915#8152]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8152 [i915#8228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8228 [i915#8289]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8289 [i915#8381]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8381 [i915#8399]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8399 [i915#8411]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8411 [i915#8428]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8428 [i915#8516]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8516 [i915#8555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8555 [i915#8623]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8623 [i915#8708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8708 [i915#8809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8809 [i915#8813]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8813 [i915#8814]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8814 [i915#8826]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8826 [i915#9067]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9067 [i915#9100]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9100 [i915#9323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9323 [i915#9340]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9340 [i915#9412]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9412 [i915#9424]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9424 [i915#9531]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9531 [i915#9683]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9683 [i915#9685]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9685 [i915#9688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9688 [i915#9723]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9723 [i915#9732]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9732 [i915#9833]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9833 [i915#9906]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9906 [i915#9917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9917 [i915#9934]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9934 Build changes ------------- * Linux: CI_DRM_17352 -> Patchwork_155860v1 CI-20190529: 20190529 CI_DRM_17352: c917f7d11493984be9f381ca0a7667bd3e587ada @ git://anongit.freedesktop.org/gfx-ci/linux IGT_8582: 8582 Patchwork_155860v1: c917f7d11493984be9f381ca0a7667bd3e587ada @ git://anongit.freedesktop.org/gfx-ci/linux piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_155860v1/index.html [-- Attachment #2: Type: text/html, Size: 173549 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
end of thread, other threads:[~2025-10-16 11:59 UTC | newest] Thread overview: 21+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-10-13 20:12 [PATCH 0/9] drm/i915: Reorder cdclk stuff for vblank/guardband length checks Ville Syrjala 2025-10-13 20:12 ` [PATCH 1/9] drm/i915/bw: Untangle dbuf bw from the sagv/mem bw stuff Ville Syrjala 2025-10-16 10:39 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 2/9] drm/i915: s/"not not"/"not"/ Ville Syrjala 2025-10-16 10:41 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 3/9] drm/i915/bw: Relocate intel_bw_crtc_min_cdclk() Ville Syrjala 2025-10-16 10:43 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 4/9] drm/i915/ips: Eliminate the cdclk_state stuff from hsw_ips_compute_config() Ville Syrjala 2025-10-16 10:57 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 5/9] drm/i915/fbc: Decouple FBC from intel_cdclk_atomic_check() Ville Syrjala 2025-10-16 11:40 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 6/9] drm/i915: s/min_cdck[]/plane_min_cdclk[]/ Ville Syrjala 2025-10-16 11:44 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 7/9] drm/i915: Compute per-crtc min_cdclk earlier Ville Syrjala 2025-10-16 11:56 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 8/9] drm/i915: Include the per-crtc minimum cdclk in the crtc state dump Ville Syrjala 2025-10-16 11:56 ` Kahola, Mika 2025-10-13 20:12 ` [PATCH 9/9] drm/i915: Neuter cdclk_prefill_adjustment() Ville Syrjala 2025-10-16 11:59 ` Kahola, Mika 2025-10-13 23:44 ` ✓ i915.CI.BAT: success for drm/i915: Reorder cdclk stuff for vblank/guardband length checks Patchwork 2025-10-14 8:33 ` ✓ i915.CI.Full: " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox