* [PATCH 0/4] drm/i915/pmdemand: cleanups
@ 2024-12-31 16:27 Jani Nikula
2024-12-31 16:27 ` [PATCH 1/4] drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function Jani Nikula
` (6 more replies)
0 siblings, 7 replies; 13+ messages in thread
From: Jani Nikula @ 2024-12-31 16:27 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula, Gustavo Sousa, ville.syrjala
Make pmdemand state opaque, convert pmdemand and global state to struct
intel_display, and make pmdemand independent of i915_drv.h.
This is what I'd like to be done to all global state management. All
opaque, all converted to struct intel_display.
BR,
Jani.
Jani Nikula (4):
drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function
drm/i915/pmdemand: make struct intel_pmdemand_state opaque
drm/i915/pmdemand: convert to struct intel_display
drm/i915/display: convert global state to struct intel_display
drivers/gpu/drm/i915/display/intel_bw.c | 3 +-
drivers/gpu/drm/i915/display/intel_cdclk.c | 3 +-
.../drm/i915/display/intel_display_driver.c | 8 +-
.../drm/i915/display/intel_display_power.c | 4 +-
.../gpu/drm/i915/display/intel_global_state.c | 42 ++--
.../gpu/drm/i915/display/intel_global_state.h | 6 +-
.../drm/i915/display/intel_modeset_setup.c | 17 +-
drivers/gpu/drm/i915/display/intel_pmdemand.c | 195 ++++++++++--------
drivers/gpu/drm/i915/display/intel_pmdemand.h | 51 ++---
drivers/gpu/drm/i915/display/skl_watermark.c | 3 +-
10 files changed, 170 insertions(+), 162 deletions(-)
--
2.39.5
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 1/4] drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function
2024-12-31 16:27 [PATCH 0/4] drm/i915/pmdemand: cleanups Jani Nikula
@ 2024-12-31 16:27 ` Jani Nikula
2024-12-31 19:11 ` Gustavo Sousa
2024-12-31 16:27 ` [PATCH 2/4] drm/i915/pmdemand: make struct intel_pmdemand_state opaque Jani Nikula
` (5 subsequent siblings)
6 siblings, 1 reply; 13+ messages in thread
From: Jani Nikula @ 2024-12-31 16:27 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula, Gustavo Sousa, ville.syrjala
In preparation for making struct intel_pmdemand_state an opaque type,
convert to_intel_pmdemand_state() to a function.
Cc: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
This is the simplest change. There could be other alternatives.
Outside of intel_pmdemand.c, this is only used to convert
display.pmdemand.obj.state to struct intel_pmdemand_state *. Maybe we
could just pass the global object or state pointer instead? Or we could
have a function to get the current state from, say, struct
intel_display? What we currently have is a bit cumbersome.
---
drivers/gpu/drm/i915/display/intel_pmdemand.c | 5 +++++
drivers/gpu/drm/i915/display/intel_pmdemand.h | 3 +--
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
index cdd314956a31..69b40b3735b3 100644
--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
@@ -15,6 +15,11 @@
#include "intel_pmdemand.h"
#include "skl_watermark.h"
+struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state)
+{
+ return container_of(obj_state, struct intel_pmdemand_state, base);
+}
+
static struct intel_global_state *
intel_pmdemand_duplicate_state(struct intel_global_obj *obj)
{
diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.h b/drivers/gpu/drm/i915/display/intel_pmdemand.h
index a1c49efdc493..89296364ec3b 100644
--- a/drivers/gpu/drm/i915/display/intel_pmdemand.h
+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.h
@@ -43,8 +43,7 @@ struct intel_pmdemand_state {
struct pmdemand_params params;
};
-#define to_intel_pmdemand_state(global_state) \
- container_of_const((global_state), struct intel_pmdemand_state, base)
+struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state);
void intel_pmdemand_init_early(struct drm_i915_private *i915);
int intel_pmdemand_init(struct drm_i915_private *i915);
--
2.39.5
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 2/4] drm/i915/pmdemand: make struct intel_pmdemand_state opaque
2024-12-31 16:27 [PATCH 0/4] drm/i915/pmdemand: cleanups Jani Nikula
2024-12-31 16:27 ` [PATCH 1/4] drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function Jani Nikula
@ 2024-12-31 16:27 ` Jani Nikula
2024-12-31 19:31 ` Gustavo Sousa
2024-12-31 16:27 ` [PATCH 3/4] drm/i915/pmdemand: convert to struct intel_display Jani Nikula
` (4 subsequent siblings)
6 siblings, 1 reply; 13+ messages in thread
From: Jani Nikula @ 2024-12-31 16:27 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula, Gustavo Sousa, ville.syrjala
Only intel_pmdemand.c should look inside the struct
intel_pmdemand_state. Indeed, this is already the case. Finish the job
and make struct intel_pmdemand_state opaque, preventing any direct pokes
at the guts of it in the future.
Cc: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_pmdemand.c | 28 +++++++++++++++
drivers/gpu/drm/i915/display/intel_pmdemand.h | 34 +++----------------
2 files changed, 32 insertions(+), 30 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
index 69b40b3735b3..500faf639290 100644
--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
@@ -15,6 +15,34 @@
#include "intel_pmdemand.h"
#include "skl_watermark.h"
+struct pmdemand_params {
+ u16 qclk_gv_bw;
+ u8 voltage_index;
+ u8 qclk_gv_index;
+ u8 active_pipes;
+ u8 active_dbufs; /* pre-Xe3 only */
+ /* Total number of non type C active phys from active_phys_mask */
+ u8 active_phys;
+ u8 plls;
+ u16 cdclk_freq_mhz;
+ /* max from ddi_clocks[] */
+ u16 ddiclk_max;
+ u8 scalers; /* pre-Xe3 only */
+};
+
+struct intel_pmdemand_state {
+ struct intel_global_state base;
+
+ /* Maintain a persistent list of port clocks across all crtcs */
+ int ddi_clocks[I915_MAX_PIPES];
+
+ /* Maintain a persistent list of non type C phys mask */
+ u16 active_combo_phys_mask;
+
+ /* Parameters to be configured in the pmdemand registers */
+ struct pmdemand_params params;
+};
+
struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state)
{
return container_of(obj_state, struct intel_pmdemand_state, base);
diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.h b/drivers/gpu/drm/i915/display/intel_pmdemand.h
index 89296364ec3b..34f68912fe04 100644
--- a/drivers/gpu/drm/i915/display/intel_pmdemand.h
+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.h
@@ -6,42 +6,16 @@
#ifndef __INTEL_PMDEMAND_H__
#define __INTEL_PMDEMAND_H__
-#include "intel_display_limits.h"
-#include "intel_global_state.h"
+#include <linux/types.h>
+enum pipe;
struct drm_i915_private;
struct intel_atomic_state;
struct intel_crtc_state;
struct intel_encoder;
+struct intel_global_state;
struct intel_plane_state;
-
-struct pmdemand_params {
- u16 qclk_gv_bw;
- u8 voltage_index;
- u8 qclk_gv_index;
- u8 active_pipes;
- u8 active_dbufs; /* pre-Xe3 only */
- /* Total number of non type C active phys from active_phys_mask */
- u8 active_phys;
- u8 plls;
- u16 cdclk_freq_mhz;
- /* max from ddi_clocks[] */
- u16 ddiclk_max;
- u8 scalers; /* pre-Xe3 only */
-};
-
-struct intel_pmdemand_state {
- struct intel_global_state base;
-
- /* Maintain a persistent list of port clocks across all crtcs */
- int ddi_clocks[I915_MAX_PIPES];
-
- /* Maintain a persistent list of non type C phys mask */
- u16 active_combo_phys_mask;
-
- /* Parameters to be configured in the pmdemand registers */
- struct pmdemand_params params;
-};
+struct intel_pmdemand_state;
struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state);
--
2.39.5
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 3/4] drm/i915/pmdemand: convert to struct intel_display
2024-12-31 16:27 [PATCH 0/4] drm/i915/pmdemand: cleanups Jani Nikula
2024-12-31 16:27 ` [PATCH 1/4] drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function Jani Nikula
2024-12-31 16:27 ` [PATCH 2/4] drm/i915/pmdemand: make struct intel_pmdemand_state opaque Jani Nikula
@ 2024-12-31 16:27 ` Jani Nikula
2024-12-31 19:39 ` Gustavo Sousa
2024-12-31 16:27 ` [PATCH 4/4] drm/i915/display: convert global state " Jani Nikula
` (3 subsequent siblings)
6 siblings, 1 reply; 13+ messages in thread
From: Jani Nikula @ 2024-12-31 16:27 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula, Gustavo Sousa, ville.syrjala
Going forward, struct intel_display is the main display device
structure. Convert pmdemand to it.
Cc: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
.../drm/i915/display/intel_display_driver.c | 4 +-
.../drm/i915/display/intel_display_power.c | 4 +-
.../drm/i915/display/intel_modeset_setup.c | 17 +-
drivers/gpu/drm/i915/display/intel_pmdemand.c | 160 +++++++++---------
drivers/gpu/drm/i915/display/intel_pmdemand.h | 14 +-
5 files changed, 101 insertions(+), 98 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
index 497b4a1f045f..c4cfb0406fa2 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
@@ -233,7 +233,7 @@ int intel_display_driver_probe_noirq(struct intel_display *display)
if (ret < 0)
goto cleanup_vga;
- intel_pmdemand_init_early(i915);
+ intel_pmdemand_init_early(display);
intel_power_domains_init_hw(display, false);
@@ -265,7 +265,7 @@ int intel_display_driver_probe_noirq(struct intel_display *display)
if (ret)
goto cleanup_vga_client_pw_domain_dmc;
- ret = intel_pmdemand_init(i915);
+ ret = intel_pmdemand_init(display);
if (ret)
goto cleanup_vga_client_pw_domain_dmc;
diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c b/drivers/gpu/drm/i915/display/intel_display_power.c
index 34465d56def0..d3b8453a1705 100644
--- a/drivers/gpu/drm/i915/display/intel_display_power.c
+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
@@ -1103,7 +1103,7 @@ static void gen9_dbuf_enable(struct intel_display *display)
slices_mask = BIT(DBUF_S1) | display->dbuf.enabled_slices;
if (DISPLAY_VER(display) >= 14)
- intel_pmdemand_program_dbuf(dev_priv, slices_mask);
+ intel_pmdemand_program_dbuf(display, slices_mask);
/*
* Just power up at least 1 slice, we will
@@ -1119,7 +1119,7 @@ static void gen9_dbuf_disable(struct intel_display *display)
gen9_dbuf_slices_update(dev_priv, 0);
if (DISPLAY_VER(display) >= 14)
- intel_pmdemand_program_dbuf(dev_priv, 0);
+ intel_pmdemand_program_dbuf(display, 0);
}
static void gen12_dbuf_slices_config(struct intel_display *display)
diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c
index 9db30db428f7..9a2bea19f17b 100644
--- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c
+++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c
@@ -116,6 +116,7 @@ static void set_encoder_for_connector(struct intel_connector *connector,
static void reset_encoder_connector_state(struct intel_encoder *encoder)
{
+ struct intel_display *display = to_intel_display(encoder);
struct drm_i915_private *i915 = to_i915(encoder->base.dev);
struct intel_pmdemand_state *pmdemand_state =
to_intel_pmdemand_state(i915->display.pmdemand.obj.state);
@@ -128,7 +129,7 @@ static void reset_encoder_connector_state(struct intel_encoder *encoder)
continue;
/* Clear the corresponding bit in pmdemand active phys mask */
- intel_pmdemand_update_phys_mask(i915, encoder,
+ intel_pmdemand_update_phys_mask(display, encoder,
pmdemand_state, false);
set_encoder_for_connector(connector, NULL);
@@ -152,6 +153,7 @@ static void reset_crtc_encoder_state(struct intel_crtc *crtc)
static void intel_crtc_disable_noatomic_complete(struct intel_crtc *crtc)
{
+ struct intel_display *display = to_intel_display(crtc);
struct drm_i915_private *i915 = to_i915(crtc->base.dev);
struct intel_bw_state *bw_state =
to_intel_bw_state(i915->display.bw.obj.state);
@@ -185,7 +187,7 @@ static void intel_crtc_disable_noatomic_complete(struct intel_crtc *crtc)
bw_state->data_rate[pipe] = 0;
bw_state->num_active_planes[pipe] = 0;
- intel_pmdemand_update_port_clock(i915, pmdemand_state, pipe, 0);
+ intel_pmdemand_update_port_clock(display, pmdemand_state, pipe, 0);
}
/*
@@ -582,6 +584,7 @@ static bool has_bogus_dpll_config(const struct intel_crtc_state *crtc_state)
static void intel_sanitize_encoder(struct intel_encoder *encoder)
{
+ struct intel_display *display = to_intel_display(encoder);
struct drm_i915_private *i915 = to_i915(encoder->base.dev);
struct intel_connector *connector;
struct intel_crtc *crtc = to_intel_crtc(encoder->base.crtc);
@@ -613,7 +616,7 @@ static void intel_sanitize_encoder(struct intel_encoder *encoder)
encoder->base.name);
/* Clear the corresponding bit in pmdemand active phys mask */
- intel_pmdemand_update_phys_mask(i915, encoder,
+ intel_pmdemand_update_phys_mask(display, encoder,
pmdemand_state, false);
/*
@@ -770,11 +773,11 @@ static void intel_modeset_readout_hw_state(struct drm_i915_private *i915)
}
}
- intel_pmdemand_update_phys_mask(i915, encoder,
+ intel_pmdemand_update_phys_mask(display, encoder,
pmdemand_state,
true);
} else {
- intel_pmdemand_update_phys_mask(i915, encoder,
+ intel_pmdemand_update_phys_mask(display, encoder,
pmdemand_state,
false);
@@ -899,13 +902,13 @@ static void intel_modeset_readout_hw_state(struct drm_i915_private *i915)
cdclk_state->min_voltage_level[crtc->pipe] =
crtc_state->min_voltage_level;
- intel_pmdemand_update_port_clock(i915, pmdemand_state, pipe,
+ intel_pmdemand_update_port_clock(display, pmdemand_state, pipe,
crtc_state->port_clock);
intel_bw_crtc_update(bw_state, crtc_state);
}
- intel_pmdemand_init_pmdemand_params(i915, pmdemand_state);
+ intel_pmdemand_init_pmdemand_params(display, pmdemand_state);
}
static void
diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
index 500faf639290..9373cf2885ab 100644
--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
@@ -74,10 +74,10 @@ static const struct intel_global_state_funcs intel_pmdemand_funcs = {
static struct intel_pmdemand_state *
intel_atomic_get_pmdemand_state(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_global_state *pmdemand_state =
intel_atomic_get_global_obj_state(state,
- &i915->display.pmdemand.obj);
+ &display->pmdemand.obj);
if (IS_ERR(pmdemand_state))
return ERR_CAST(pmdemand_state);
@@ -88,10 +88,10 @@ intel_atomic_get_pmdemand_state(struct intel_atomic_state *state)
static struct intel_pmdemand_state *
intel_atomic_get_old_pmdemand_state(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_global_state *pmdemand_state =
intel_atomic_get_old_global_obj_state(state,
- &i915->display.pmdemand.obj);
+ &display->pmdemand.obj);
if (!pmdemand_state)
return NULL;
@@ -102,10 +102,10 @@ intel_atomic_get_old_pmdemand_state(struct intel_atomic_state *state)
static struct intel_pmdemand_state *
intel_atomic_get_new_pmdemand_state(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_global_state *pmdemand_state =
intel_atomic_get_new_global_obj_state(state,
- &i915->display.pmdemand.obj);
+ &display->pmdemand.obj);
if (!pmdemand_state)
return NULL;
@@ -113,40 +113,41 @@ intel_atomic_get_new_pmdemand_state(struct intel_atomic_state *state)
return to_intel_pmdemand_state(pmdemand_state);
}
-int intel_pmdemand_init(struct drm_i915_private *i915)
+int intel_pmdemand_init(struct intel_display *display)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
struct intel_pmdemand_state *pmdemand_state;
pmdemand_state = kzalloc(sizeof(*pmdemand_state), GFP_KERNEL);
if (!pmdemand_state)
return -ENOMEM;
- intel_atomic_global_obj_init(i915, &i915->display.pmdemand.obj,
+ intel_atomic_global_obj_init(i915, &display->pmdemand.obj,
&pmdemand_state->base,
&intel_pmdemand_funcs);
- if (IS_DISPLAY_VERx100_STEP(i915, 1400, STEP_A0, STEP_C0))
+ if (IS_DISPLAY_VERx100_STEP(display, 1400, STEP_A0, STEP_C0))
/* Wa_14016740474 */
- intel_de_rmw(i915, XELPD_CHICKEN_DCPR_3, 0, DMD_RSP_TIMEOUT_DISABLE);
+ intel_de_rmw(display, XELPD_CHICKEN_DCPR_3, 0, DMD_RSP_TIMEOUT_DISABLE);
return 0;
}
-void intel_pmdemand_init_early(struct drm_i915_private *i915)
+void intel_pmdemand_init_early(struct intel_display *display)
{
- mutex_init(&i915->display.pmdemand.lock);
- init_waitqueue_head(&i915->display.pmdemand.waitqueue);
+ mutex_init(&display->pmdemand.lock);
+ init_waitqueue_head(&display->pmdemand.waitqueue);
}
void
-intel_pmdemand_update_phys_mask(struct drm_i915_private *i915,
+intel_pmdemand_update_phys_mask(struct intel_display *display,
struct intel_encoder *encoder,
struct intel_pmdemand_state *pmdemand_state,
bool set_bit)
{
enum phy phy;
- if (DISPLAY_VER(i915) < 14)
+ if (DISPLAY_VER(display) < 14)
return;
if (!encoder)
@@ -164,18 +165,18 @@ intel_pmdemand_update_phys_mask(struct drm_i915_private *i915,
}
void
-intel_pmdemand_update_port_clock(struct drm_i915_private *i915,
+intel_pmdemand_update_port_clock(struct intel_display *display,
struct intel_pmdemand_state *pmdemand_state,
enum pipe pipe, int port_clock)
{
- if (DISPLAY_VER(i915) < 14)
+ if (DISPLAY_VER(display) < 14)
return;
pmdemand_state->ddi_clocks[pipe] = port_clock;
}
static void
-intel_pmdemand_update_max_ddiclk(struct drm_i915_private *i915,
+intel_pmdemand_update_max_ddiclk(struct intel_display *display,
struct intel_atomic_state *state,
struct intel_pmdemand_state *pmdemand_state)
{
@@ -185,7 +186,7 @@ intel_pmdemand_update_max_ddiclk(struct drm_i915_private *i915,
int i;
for_each_new_intel_crtc_in_state(state, crtc, new_crtc_state, i)
- intel_pmdemand_update_port_clock(i915, pmdemand_state,
+ intel_pmdemand_update_port_clock(display, pmdemand_state,
crtc->pipe,
new_crtc_state->port_clock);
@@ -196,7 +197,7 @@ intel_pmdemand_update_max_ddiclk(struct drm_i915_private *i915,
}
static void
-intel_pmdemand_update_connector_phys(struct drm_i915_private *i915,
+intel_pmdemand_update_connector_phys(struct intel_display *display,
struct intel_atomic_state *state,
struct drm_connector_state *conn_state,
bool set_bit,
@@ -217,12 +218,12 @@ intel_pmdemand_update_connector_phys(struct drm_i915_private *i915,
if (!crtc_state->hw.active)
return;
- intel_pmdemand_update_phys_mask(i915, encoder, pmdemand_state,
+ intel_pmdemand_update_phys_mask(display, encoder, pmdemand_state,
set_bit);
}
static void
-intel_pmdemand_update_active_non_tc_phys(struct drm_i915_private *i915,
+intel_pmdemand_update_active_non_tc_phys(struct intel_display *display,
struct intel_atomic_state *state,
struct intel_pmdemand_state *pmdemand_state)
{
@@ -237,12 +238,12 @@ intel_pmdemand_update_active_non_tc_phys(struct drm_i915_private *i915,
continue;
/* First clear the active phys in the old connector state */
- intel_pmdemand_update_connector_phys(i915, state,
+ intel_pmdemand_update_connector_phys(display, state,
old_conn_state, false,
pmdemand_state);
/* Then set the active phys in new connector state */
- intel_pmdemand_update_connector_phys(i915, state,
+ intel_pmdemand_update_connector_phys(display, state,
new_conn_state, true,
pmdemand_state);
}
@@ -253,7 +254,7 @@ intel_pmdemand_update_active_non_tc_phys(struct drm_i915_private *i915,
}
static bool
-intel_pmdemand_encoder_has_tc_phy(struct drm_i915_private *i915,
+intel_pmdemand_encoder_has_tc_phy(struct intel_display *display,
struct intel_encoder *encoder)
{
return encoder && intel_encoder_is_tc(encoder);
@@ -262,7 +263,7 @@ intel_pmdemand_encoder_has_tc_phy(struct drm_i915_private *i915,
static bool
intel_pmdemand_connector_needs_update(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct drm_connector_state *old_conn_state;
struct drm_connector_state *new_conn_state;
struct drm_connector *connector;
@@ -279,8 +280,8 @@ intel_pmdemand_connector_needs_update(struct intel_atomic_state *state)
continue;
if (old_encoder == new_encoder ||
- (intel_pmdemand_encoder_has_tc_phy(i915, old_encoder) &&
- intel_pmdemand_encoder_has_tc_phy(i915, new_encoder)))
+ (intel_pmdemand_encoder_has_tc_phy(display, old_encoder) &&
+ intel_pmdemand_encoder_has_tc_phy(display, new_encoder)))
continue;
return true;
@@ -337,13 +338,13 @@ static bool intel_pmdemand_needs_update(struct intel_atomic_state *state)
int intel_pmdemand_atomic_check(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
const struct intel_bw_state *new_bw_state;
const struct intel_cdclk_state *new_cdclk_state;
const struct intel_dbuf_state *new_dbuf_state;
struct intel_pmdemand_state *new_pmdemand_state;
- if (DISPLAY_VER(i915) < 14)
+ if (DISPLAY_VER(display) < 14)
return 0;
if (!intel_pmdemand_needs_update(state))
@@ -365,14 +366,14 @@ int intel_pmdemand_atomic_check(struct intel_atomic_state *state)
if (IS_ERR(new_dbuf_state))
return PTR_ERR(new_dbuf_state);
- if (DISPLAY_VER(i915) < 30) {
+ if (DISPLAY_VER(display) < 30) {
new_pmdemand_state->params.active_dbufs =
min_t(u8, hweight8(new_dbuf_state->enabled_slices), 3);
new_pmdemand_state->params.active_pipes =
min_t(u8, hweight8(new_dbuf_state->active_pipes), 3);
} else {
new_pmdemand_state->params.active_pipes =
- min_t(u8, hweight8(new_dbuf_state->active_pipes), INTEL_NUM_PIPES(i915));
+ min_t(u8, hweight8(new_dbuf_state->active_pipes), INTEL_NUM_PIPES(display));
}
new_cdclk_state = intel_atomic_get_cdclk_state(state);
@@ -384,9 +385,9 @@ int intel_pmdemand_atomic_check(struct intel_atomic_state *state)
new_pmdemand_state->params.cdclk_freq_mhz =
DIV_ROUND_UP(new_cdclk_state->actual.cdclk, 1000);
- intel_pmdemand_update_max_ddiclk(i915, state, new_pmdemand_state);
+ intel_pmdemand_update_max_ddiclk(display, state, new_pmdemand_state);
- intel_pmdemand_update_active_non_tc_phys(i915, state, new_pmdemand_state);
+ intel_pmdemand_update_active_non_tc_phys(display, state, new_pmdemand_state);
/*
* Active_PLLs starts with 1 because of CDCLK PLL.
@@ -407,36 +408,36 @@ int intel_pmdemand_atomic_check(struct intel_atomic_state *state)
return intel_atomic_lock_global_state(&new_pmdemand_state->base);
}
-static bool intel_pmdemand_check_prev_transaction(struct drm_i915_private *i915)
+static bool intel_pmdemand_check_prev_transaction(struct intel_display *display)
{
- return !(intel_de_wait_for_clear(i915,
+ return !(intel_de_wait_for_clear(display,
XELPDP_INITIATE_PMDEMAND_REQUEST(1),
XELPDP_PMDEMAND_REQ_ENABLE, 10) ||
- intel_de_wait_for_clear(i915,
+ intel_de_wait_for_clear(display,
GEN12_DCPR_STATUS_1,
XELPDP_PMDEMAND_INFLIGHT_STATUS, 10));
}
void
-intel_pmdemand_init_pmdemand_params(struct drm_i915_private *i915,
+intel_pmdemand_init_pmdemand_params(struct intel_display *display,
struct intel_pmdemand_state *pmdemand_state)
{
u32 reg1, reg2;
- if (DISPLAY_VER(i915) < 14)
+ if (DISPLAY_VER(display) < 14)
return;
- mutex_lock(&i915->display.pmdemand.lock);
- if (drm_WARN_ON(&i915->drm,
- !intel_pmdemand_check_prev_transaction(i915))) {
+ mutex_lock(&display->pmdemand.lock);
+ if (drm_WARN_ON(display->drm,
+ !intel_pmdemand_check_prev_transaction(display))) {
memset(&pmdemand_state->params, 0,
sizeof(pmdemand_state->params));
goto unlock;
}
- reg1 = intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(0));
+ reg1 = intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(0));
- reg2 = intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1));
+ reg2 = intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1));
pmdemand_state->params.qclk_gv_bw =
REG_FIELD_GET(XELPDP_PMDEMAND_QCLK_GV_BW_MASK, reg1);
@@ -452,7 +453,7 @@ intel_pmdemand_init_pmdemand_params(struct drm_i915_private *i915,
pmdemand_state->params.ddiclk_max =
REG_FIELD_GET(XELPDP_PMDEMAND_DDICLK_FREQ_MASK, reg2);
- if (DISPLAY_VER(i915) >= 30) {
+ if (DISPLAY_VER(display) >= 30) {
pmdemand_state->params.active_pipes =
REG_FIELD_GET(XE3_PMDEMAND_PIPES_MASK, reg1);
} else {
@@ -466,49 +467,49 @@ intel_pmdemand_init_pmdemand_params(struct drm_i915_private *i915,
}
unlock:
- mutex_unlock(&i915->display.pmdemand.lock);
+ mutex_unlock(&display->pmdemand.lock);
}
-static bool intel_pmdemand_req_complete(struct drm_i915_private *i915)
+static bool intel_pmdemand_req_complete(struct intel_display *display)
{
- return !(intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1)) &
+ return !(intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1)) &
XELPDP_PMDEMAND_REQ_ENABLE);
}
-static void intel_pmdemand_wait(struct drm_i915_private *i915)
+static void intel_pmdemand_wait(struct intel_display *display)
{
- if (!wait_event_timeout(i915->display.pmdemand.waitqueue,
- intel_pmdemand_req_complete(i915),
+ if (!wait_event_timeout(display->pmdemand.waitqueue,
+ intel_pmdemand_req_complete(display),
msecs_to_jiffies_timeout(10)))
- drm_err(&i915->drm,
+ drm_err(display->drm,
"timed out waiting for Punit PM Demand Response\n");
}
/* Required to be programmed during Display Init Sequences. */
-void intel_pmdemand_program_dbuf(struct drm_i915_private *i915,
+void intel_pmdemand_program_dbuf(struct intel_display *display,
u8 dbuf_slices)
{
u32 dbufs = min_t(u32, hweight8(dbuf_slices), 3);
/* PM Demand only tracks active dbufs on pre-Xe3 platforms */
- if (DISPLAY_VER(i915) >= 30)
+ if (DISPLAY_VER(display) >= 30)
return;
- mutex_lock(&i915->display.pmdemand.lock);
- if (drm_WARN_ON(&i915->drm,
- !intel_pmdemand_check_prev_transaction(i915)))
+ mutex_lock(&display->pmdemand.lock);
+ if (drm_WARN_ON(display->drm,
+ !intel_pmdemand_check_prev_transaction(display)))
goto unlock;
- intel_de_rmw(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(0),
+ intel_de_rmw(display, XELPDP_INITIATE_PMDEMAND_REQUEST(0),
XELPDP_PMDEMAND_DBUFS_MASK,
REG_FIELD_PREP(XELPDP_PMDEMAND_DBUFS_MASK, dbufs));
- intel_de_rmw(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1), 0,
+ intel_de_rmw(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1), 0,
XELPDP_PMDEMAND_REQ_ENABLE);
- intel_pmdemand_wait(i915);
+ intel_pmdemand_wait(display);
unlock:
- mutex_unlock(&i915->display.pmdemand.lock);
+ mutex_unlock(&display->pmdemand.lock);
}
static void
@@ -568,38 +569,37 @@ intel_pmdemand_update_params(struct intel_display *display,
}
static void
-intel_pmdemand_program_params(struct drm_i915_private *i915,
+intel_pmdemand_program_params(struct intel_display *display,
const struct intel_pmdemand_state *new,
const struct intel_pmdemand_state *old,
bool serialized)
{
- struct intel_display *display = &i915->display;
bool changed = false;
u32 reg1, mod_reg1;
u32 reg2, mod_reg2;
- mutex_lock(&i915->display.pmdemand.lock);
- if (drm_WARN_ON(&i915->drm,
- !intel_pmdemand_check_prev_transaction(i915)))
+ mutex_lock(&display->pmdemand.lock);
+ if (drm_WARN_ON(display->drm,
+ !intel_pmdemand_check_prev_transaction(display)))
goto unlock;
- reg1 = intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(0));
+ reg1 = intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(0));
mod_reg1 = reg1;
- reg2 = intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1));
+ reg2 = intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1));
mod_reg2 = reg2;
intel_pmdemand_update_params(display, new, old, &mod_reg1, &mod_reg2,
serialized);
if (reg1 != mod_reg1) {
- intel_de_write(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(0),
+ intel_de_write(display, XELPDP_INITIATE_PMDEMAND_REQUEST(0),
mod_reg1);
changed = true;
}
if (reg2 != mod_reg2) {
- intel_de_write(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1),
+ intel_de_write(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1),
mod_reg2);
changed = true;
}
@@ -608,17 +608,17 @@ intel_pmdemand_program_params(struct drm_i915_private *i915,
if (!changed)
goto unlock;
- drm_dbg_kms(&i915->drm,
+ drm_dbg_kms(display->drm,
"initate pmdemand request values: (0x%x 0x%x)\n",
mod_reg1, mod_reg2);
- intel_de_rmw(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1), 0,
+ intel_de_rmw(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1), 0,
XELPDP_PMDEMAND_REQ_ENABLE);
- intel_pmdemand_wait(i915);
+ intel_pmdemand_wait(display);
unlock:
- mutex_unlock(&i915->display.pmdemand.lock);
+ mutex_unlock(&display->pmdemand.lock);
}
static bool
@@ -630,13 +630,13 @@ intel_pmdemand_state_changed(const struct intel_pmdemand_state *new,
void intel_pmdemand_pre_plane_update(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
const struct intel_pmdemand_state *new_pmdemand_state =
intel_atomic_get_new_pmdemand_state(state);
const struct intel_pmdemand_state *old_pmdemand_state =
intel_atomic_get_old_pmdemand_state(state);
- if (DISPLAY_VER(i915) < 14)
+ if (DISPLAY_VER(display) < 14)
return;
if (!new_pmdemand_state ||
@@ -646,20 +646,20 @@ void intel_pmdemand_pre_plane_update(struct intel_atomic_state *state)
WARN_ON(!new_pmdemand_state->base.changed);
- intel_pmdemand_program_params(i915, new_pmdemand_state,
+ intel_pmdemand_program_params(display, new_pmdemand_state,
old_pmdemand_state,
intel_atomic_global_state_is_serialized(state));
}
void intel_pmdemand_post_plane_update(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
const struct intel_pmdemand_state *new_pmdemand_state =
intel_atomic_get_new_pmdemand_state(state);
const struct intel_pmdemand_state *old_pmdemand_state =
intel_atomic_get_old_pmdemand_state(state);
- if (DISPLAY_VER(i915) < 14)
+ if (DISPLAY_VER(display) < 14)
return;
if (!new_pmdemand_state ||
@@ -669,6 +669,6 @@ void intel_pmdemand_post_plane_update(struct intel_atomic_state *state)
WARN_ON(!new_pmdemand_state->base.changed);
- intel_pmdemand_program_params(i915, new_pmdemand_state, NULL,
+ intel_pmdemand_program_params(display, new_pmdemand_state, NULL,
intel_atomic_global_state_is_serialized(state));
}
diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.h b/drivers/gpu/drm/i915/display/intel_pmdemand.h
index 34f68912fe04..821ef2c4134a 100644
--- a/drivers/gpu/drm/i915/display/intel_pmdemand.h
+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.h
@@ -9,9 +9,9 @@
#include <linux/types.h>
enum pipe;
-struct drm_i915_private;
struct intel_atomic_state;
struct intel_crtc_state;
+struct intel_display;
struct intel_encoder;
struct intel_global_state;
struct intel_plane_state;
@@ -19,18 +19,18 @@ struct intel_pmdemand_state;
struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state);
-void intel_pmdemand_init_early(struct drm_i915_private *i915);
-int intel_pmdemand_init(struct drm_i915_private *i915);
-void intel_pmdemand_init_pmdemand_params(struct drm_i915_private *i915,
+void intel_pmdemand_init_early(struct intel_display *display);
+int intel_pmdemand_init(struct intel_display *display);
+void intel_pmdemand_init_pmdemand_params(struct intel_display *display,
struct intel_pmdemand_state *pmdemand_state);
-void intel_pmdemand_update_port_clock(struct drm_i915_private *i915,
+void intel_pmdemand_update_port_clock(struct intel_display *display,
struct intel_pmdemand_state *pmdemand_state,
enum pipe pipe, int port_clock);
-void intel_pmdemand_update_phys_mask(struct drm_i915_private *i915,
+void intel_pmdemand_update_phys_mask(struct intel_display *display,
struct intel_encoder *encoder,
struct intel_pmdemand_state *pmdemand_state,
bool clear_bit);
-void intel_pmdemand_program_dbuf(struct drm_i915_private *i915,
+void intel_pmdemand_program_dbuf(struct intel_display *display,
u8 dbuf_slices);
void intel_pmdemand_pre_plane_update(struct intel_atomic_state *state);
void intel_pmdemand_post_plane_update(struct intel_atomic_state *state);
--
2.39.5
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 4/4] drm/i915/display: convert global state to struct intel_display
2024-12-31 16:27 [PATCH 0/4] drm/i915/pmdemand: cleanups Jani Nikula
` (2 preceding siblings ...)
2024-12-31 16:27 ` [PATCH 3/4] drm/i915/pmdemand: convert to struct intel_display Jani Nikula
@ 2024-12-31 16:27 ` Jani Nikula
2024-12-31 19:55 ` Gustavo Sousa
2024-12-31 17:05 ` ✗ Fi.CI.SPARSE: warning for drm/i915/pmdemand: cleanups Patchwork
` (2 subsequent siblings)
6 siblings, 1 reply; 13+ messages in thread
From: Jani Nikula @ 2024-12-31 16:27 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula, Gustavo Sousa, ville.syrjala
Going forward, struct intel_display is the main display device
structure. Convert intel_global_state.[ch] to it.
This allows us to make intel_pmdemand.c completely independent of
i915_drv.h.
Cc: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_bw.c | 3 +-
drivers/gpu/drm/i915/display/intel_cdclk.c | 3 +-
.../drm/i915/display/intel_display_driver.c | 4 +-
.../gpu/drm/i915/display/intel_global_state.c | 42 +++++++++----------
.../gpu/drm/i915/display/intel_global_state.h | 6 +--
drivers/gpu/drm/i915/display/intel_pmdemand.c | 6 +--
drivers/gpu/drm/i915/display/skl_watermark.c | 3 +-
7 files changed, 33 insertions(+), 34 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
index 08e8a67ca74c..23edc81741de 100644
--- a/drivers/gpu/drm/i915/display/intel_bw.c
+++ b/drivers/gpu/drm/i915/display/intel_bw.c
@@ -1447,13 +1447,14 @@ static const struct intel_global_state_funcs intel_bw_funcs = {
int intel_bw_init(struct drm_i915_private *i915)
{
+ struct intel_display *display = &i915->display;
struct intel_bw_state *state;
state = kzalloc(sizeof(*state), GFP_KERNEL);
if (!state)
return -ENOMEM;
- intel_atomic_global_obj_init(i915, &i915->display.bw.obj,
+ intel_atomic_global_obj_init(display, &display->bw.obj,
&state->base, &intel_bw_funcs);
/*
diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c
index 3506e576bf6b..c7a603589412 100644
--- a/drivers/gpu/drm/i915/display/intel_cdclk.c
+++ b/drivers/gpu/drm/i915/display/intel_cdclk.c
@@ -3217,14 +3217,13 @@ int intel_cdclk_state_set_joined_mbus(struct intel_atomic_state *state, bool joi
int intel_cdclk_init(struct intel_display *display)
{
- struct drm_i915_private *dev_priv = to_i915(display->drm);
struct intel_cdclk_state *cdclk_state;
cdclk_state = kzalloc(sizeof(*cdclk_state), GFP_KERNEL);
if (!cdclk_state)
return -ENOMEM;
- intel_atomic_global_obj_init(dev_priv, &display->cdclk.obj,
+ intel_atomic_global_obj_init(display, &display->cdclk.obj,
&cdclk_state->base, &intel_cdclk_funcs);
return 0;
diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
index c4cfb0406fa2..1aa0b298c278 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
@@ -163,9 +163,7 @@ static void intel_mode_config_init(struct intel_display *display)
static void intel_mode_config_cleanup(struct intel_display *display)
{
- struct drm_i915_private *i915 = to_i915(display->drm);
-
- intel_atomic_global_obj_cleanup(i915);
+ intel_atomic_global_obj_cleanup(display);
drm_mode_config_cleanup(display->drm);
}
diff --git a/drivers/gpu/drm/i915/display/intel_global_state.c b/drivers/gpu/drm/i915/display/intel_global_state.c
index cbcd1e91b7be..8a49e2bb37fa 100644
--- a/drivers/gpu/drm/i915/display/intel_global_state.c
+++ b/drivers/gpu/drm/i915/display/intel_global_state.c
@@ -75,7 +75,7 @@ intel_atomic_global_state_get(struct intel_global_state *obj_state)
return obj_state;
}
-void intel_atomic_global_obj_init(struct drm_i915_private *dev_priv,
+void intel_atomic_global_obj_init(struct intel_display *display,
struct intel_global_obj *obj,
struct intel_global_state *state,
const struct intel_global_state_funcs *funcs)
@@ -88,26 +88,26 @@ void intel_atomic_global_obj_init(struct drm_i915_private *dev_priv,
obj->state = state;
obj->funcs = funcs;
- list_add_tail(&obj->head, &dev_priv->display.global.obj_list);
+ list_add_tail(&obj->head, &display->global.obj_list);
}
-void intel_atomic_global_obj_cleanup(struct drm_i915_private *dev_priv)
+void intel_atomic_global_obj_cleanup(struct intel_display *display)
{
struct intel_global_obj *obj, *next;
- list_for_each_entry_safe(obj, next, &dev_priv->display.global.obj_list, head) {
+ list_for_each_entry_safe(obj, next, &display->global.obj_list, head) {
list_del(&obj->head);
- drm_WARN_ON(&dev_priv->drm, kref_read(&obj->state->ref) != 1);
+ drm_WARN_ON(display->drm, kref_read(&obj->state->ref) != 1);
intel_atomic_global_state_put(obj->state);
}
}
-static void assert_global_state_write_locked(struct drm_i915_private *dev_priv)
+static void assert_global_state_write_locked(struct intel_display *display)
{
struct intel_crtc *crtc;
- for_each_intel_crtc(&dev_priv->drm, crtc)
+ for_each_intel_crtc(display->drm, crtc)
drm_modeset_lock_assert_held(&crtc->base.mutex);
}
@@ -126,23 +126,23 @@ static bool modeset_lock_is_held(struct drm_modeset_acquire_ctx *ctx,
static void assert_global_state_read_locked(struct intel_atomic_state *state)
{
+ struct intel_display *display = to_intel_display(state);
struct drm_modeset_acquire_ctx *ctx = state->base.acquire_ctx;
- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
struct intel_crtc *crtc;
- for_each_intel_crtc(&dev_priv->drm, crtc) {
+ for_each_intel_crtc(display->drm, crtc) {
if (modeset_lock_is_held(ctx, &crtc->base.mutex))
return;
}
- drm_WARN(&dev_priv->drm, 1, "Global state not read locked\n");
+ drm_WARN(display->drm, 1, "Global state not read locked\n");
}
struct intel_global_state *
intel_atomic_get_global_obj_state(struct intel_atomic_state *state,
struct intel_global_obj *obj)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
int index, num_objs, i;
size_t size;
struct __intel_global_objs_state *arr;
@@ -184,7 +184,7 @@ intel_atomic_get_global_obj_state(struct intel_atomic_state *state,
state->num_global_objs = num_objs;
- drm_dbg_atomic(&i915->drm, "Added new global object %p state %p to %p\n",
+ drm_dbg_atomic(display->drm, "Added new global object %p state %p to %p\n",
obj, obj_state, state);
return obj_state;
@@ -218,14 +218,14 @@ intel_atomic_get_new_global_obj_state(struct intel_atomic_state *state,
void intel_atomic_swap_global_state(struct intel_atomic_state *state)
{
- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_global_state *old_obj_state, *new_obj_state;
struct intel_global_obj *obj;
int i;
for_each_oldnew_global_obj_in_state(state, obj, old_obj_state,
new_obj_state, i) {
- drm_WARN_ON(&dev_priv->drm, obj->state != old_obj_state);
+ drm_WARN_ON(display->drm, obj->state != old_obj_state);
/*
* If the new state wasn't modified (and properly
@@ -234,7 +234,7 @@ void intel_atomic_swap_global_state(struct intel_atomic_state *state)
if (!new_obj_state->changed)
continue;
- assert_global_state_write_locked(dev_priv);
+ assert_global_state_write_locked(display);
old_obj_state->state = state;
new_obj_state->state = NULL;
@@ -265,10 +265,10 @@ void intel_atomic_clear_global_state(struct intel_atomic_state *state)
int intel_atomic_lock_global_state(struct intel_global_state *obj_state)
{
struct intel_atomic_state *state = obj_state->state;
- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_crtc *crtc;
- for_each_intel_crtc(&dev_priv->drm, crtc) {
+ for_each_intel_crtc(display->drm, crtc) {
int ret;
ret = drm_modeset_lock(&crtc->base.mutex,
@@ -298,10 +298,10 @@ int intel_atomic_serialize_global_state(struct intel_global_state *obj_state)
bool
intel_atomic_global_state_is_serialized(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_crtc *crtc;
- for_each_intel_crtc(&i915->drm, crtc)
+ for_each_intel_crtc(display->drm, crtc)
if (!intel_atomic_get_new_crtc_state(state, crtc))
return false;
return true;
@@ -344,7 +344,7 @@ intel_atomic_global_state_setup_commit(struct intel_atomic_state *state)
int
intel_atomic_global_state_wait_for_dependencies(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
const struct intel_global_state *old_obj_state;
struct intel_global_obj *obj;
int i;
@@ -358,7 +358,7 @@ intel_atomic_global_state_wait_for_dependencies(struct intel_atomic_state *state
ret = wait_for_completion_timeout(&commit->done, 10 * HZ);
if (ret == 0) {
- drm_err(&i915->drm, "global state timed out\n");
+ drm_err(display->drm, "global state timed out\n");
return -ETIMEDOUT;
}
}
diff --git a/drivers/gpu/drm/i915/display/intel_global_state.h b/drivers/gpu/drm/i915/display/intel_global_state.h
index 6506a8e32972..d42fb2547ee9 100644
--- a/drivers/gpu/drm/i915/display/intel_global_state.h
+++ b/drivers/gpu/drm/i915/display/intel_global_state.h
@@ -9,8 +9,8 @@
#include <linux/kref.h>
#include <linux/list.h>
-struct drm_i915_private;
struct intel_atomic_state;
+struct intel_display;
struct intel_global_obj;
struct intel_global_state;
@@ -69,11 +69,11 @@ struct __intel_global_objs_state {
struct intel_global_state *state, *old_state, *new_state;
};
-void intel_atomic_global_obj_init(struct drm_i915_private *dev_priv,
+void intel_atomic_global_obj_init(struct intel_display *display,
struct intel_global_obj *obj,
struct intel_global_state *state,
const struct intel_global_state_funcs *funcs);
-void intel_atomic_global_obj_cleanup(struct drm_i915_private *dev_priv);
+void intel_atomic_global_obj_cleanup(struct intel_display *display);
struct intel_global_state *
intel_atomic_get_global_obj_state(struct intel_atomic_state *state,
diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
index 9373cf2885ab..975520322136 100644
--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
@@ -5,14 +5,15 @@
#include <linux/bitops.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_de.h"
#include "intel_display_trace.h"
#include "intel_pmdemand.h"
+#include "intel_step.h"
#include "skl_watermark.h"
struct pmdemand_params {
@@ -115,14 +116,13 @@ intel_atomic_get_new_pmdemand_state(struct intel_atomic_state *state)
int intel_pmdemand_init(struct intel_display *display)
{
- struct drm_i915_private *i915 = to_i915(display->drm);
struct intel_pmdemand_state *pmdemand_state;
pmdemand_state = kzalloc(sizeof(*pmdemand_state), GFP_KERNEL);
if (!pmdemand_state)
return -ENOMEM;
- intel_atomic_global_obj_init(i915, &display->pmdemand.obj,
+ intel_atomic_global_obj_init(display, &display->pmdemand.obj,
&pmdemand_state->base,
&intel_pmdemand_funcs);
diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
index 29e8ea91c858..5e6f2afe3cfe 100644
--- a/drivers/gpu/drm/i915/display/skl_watermark.c
+++ b/drivers/gpu/drm/i915/display/skl_watermark.c
@@ -3326,13 +3326,14 @@ intel_atomic_get_dbuf_state(struct intel_atomic_state *state)
int intel_dbuf_init(struct drm_i915_private *i915)
{
+ struct intel_display *display = &i915->display;
struct intel_dbuf_state *dbuf_state;
dbuf_state = kzalloc(sizeof(*dbuf_state), GFP_KERNEL);
if (!dbuf_state)
return -ENOMEM;
- intel_atomic_global_obj_init(i915, &i915->display.dbuf.obj,
+ intel_atomic_global_obj_init(display, &display->dbuf.obj,
&dbuf_state->base, &intel_dbuf_funcs);
return 0;
--
2.39.5
^ permalink raw reply related [flat|nested] 13+ messages in thread
* ✗ Fi.CI.SPARSE: warning for drm/i915/pmdemand: cleanups
2024-12-31 16:27 [PATCH 0/4] drm/i915/pmdemand: cleanups Jani Nikula
` (3 preceding siblings ...)
2024-12-31 16:27 ` [PATCH 4/4] drm/i915/display: convert global state " Jani Nikula
@ 2024-12-31 17:05 ` Patchwork
2024-12-31 17:16 ` ✓ i915.CI.BAT: success " Patchwork
2024-12-31 19:42 ` ✗ i915.CI.Full: failure " Patchwork
6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2024-12-31 17:05 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/pmdemand: cleanups
URL : https://patchwork.freedesktop.org/series/143040/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
^ permalink raw reply [flat|nested] 13+ messages in thread
* ✓ i915.CI.BAT: success for drm/i915/pmdemand: cleanups
2024-12-31 16:27 [PATCH 0/4] drm/i915/pmdemand: cleanups Jani Nikula
` (4 preceding siblings ...)
2024-12-31 17:05 ` ✗ Fi.CI.SPARSE: warning for drm/i915/pmdemand: cleanups Patchwork
@ 2024-12-31 17:16 ` Patchwork
2024-12-31 19:42 ` ✗ i915.CI.Full: failure " Patchwork
6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2024-12-31 17:16 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/pmdemand: cleanups
URL : https://patchwork.freedesktop.org/series/143040/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_15892 -> Patchwork_143040v1
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/index.html
Participating hosts (41 -> 39)
------------------------------
Missing (2): bat-twl-1 fi-snb-2520m
Known issues
------------
Here are the changes found in Patchwork_143040v1 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@fbdev@info:
- fi-bsw-nick: NOTRUN -> [SKIP][1] ([i915#1849])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/fi-bsw-nick/igt@fbdev@info.html
* igt@gem_lmem_swapping@parallel-random-engines:
- fi-bsw-nick: NOTRUN -> [SKIP][2] +42 other tests skip
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/fi-bsw-nick/igt@gem_lmem_swapping@parallel-random-engines.html
* igt@i915_module_load@load:
- fi-pnv-d510: [PASS][3] -> [ABORT][4] ([i915#13203])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/fi-pnv-d510/igt@i915_module_load@load.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/fi-pnv-d510/igt@i915_module_load@load.html
* igt@i915_selftest@live:
- bat-arlh-3: [PASS][5] -> [DMESG-FAIL][6] ([i915#12435] / [i915#13393])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/bat-arlh-3/igt@i915_selftest@live.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/bat-arlh-3/igt@i915_selftest@live.html
* igt@i915_selftest@live@workarounds:
- bat-arlh-3: [PASS][7] -> [DMESG-FAIL][8] ([i915#13393])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/bat-arlh-3/igt@i915_selftest@live@workarounds.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/bat-arlh-3/igt@i915_selftest@live@workarounds.html
* igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence:
- bat-dg2-11: [PASS][9] -> [SKIP][10] ([i915#9197]) +3 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html
#### Possible fixes ####
* igt@core_hotunplug@unbind-rebind:
- bat-rpls-4: [DMESG-WARN][11] ([i915#13400]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/bat-rpls-4/igt@core_hotunplug@unbind-rebind.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/bat-rpls-4/igt@core_hotunplug@unbind-rebind.html
* igt@i915_selftest@live:
- bat-adlp-9: [ABORT][13] ([i915#13399]) -> [PASS][14] +1 other test pass
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/bat-adlp-9/igt@i915_selftest@live.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/bat-adlp-9/igt@i915_selftest@live.html
* igt@i915_selftest@live@workarounds:
- bat-mtlp-6: [DMESG-FAIL][15] ([i915#13393]) -> [PASS][16] +1 other test pass
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/bat-mtlp-6/igt@i915_selftest@live@workarounds.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/bat-mtlp-6/igt@i915_selftest@live@workarounds.html
- {bat-arls-6}: [DMESG-FAIL][17] ([i915#13393]) -> [PASS][18] +1 other test pass
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/bat-arls-6/igt@i915_selftest@live@workarounds.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/bat-arls-6/igt@i915_selftest@live@workarounds.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[i915#12435]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12435
[i915#13203]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13203
[i915#13393]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13393
[i915#13399]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13399
[i915#13400]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13400
[i915#1849]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1849
[i915#9197]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9197
Build changes
-------------
* Linux: CI_DRM_15892 -> Patchwork_143040v1
CI-20190529: 20190529
CI_DRM_15892: 08bd590935a5258ffd79355c59adffd72fb2c642 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_8172: 9112581619aa198fa03041d5c7e18e02f42ac00f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_143040v1: 08bd590935a5258ffd79355c59adffd72fb2c642 @ git://anongit.freedesktop.org/gfx-ci/linux
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/index.html
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function
2024-12-31 16:27 ` [PATCH 1/4] drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function Jani Nikula
@ 2024-12-31 19:11 ` Gustavo Sousa
2025-01-07 17:43 ` Jani Nikula
0 siblings, 1 reply; 13+ messages in thread
From: Gustavo Sousa @ 2024-12-31 19:11 UTC (permalink / raw)
To: Jani Nikula, intel-gfx, intel-xe; +Cc: jani.nikula, ville.syrjala
Quoting Jani Nikula (2024-12-31 13:27:37-03:00)
>In preparation for making struct intel_pmdemand_state an opaque type,
>convert to_intel_pmdemand_state() to a function.
>
>Cc: Gustavo Sousa <gustavo.sousa@intel.com>
>Signed-off-by: Jani Nikula <jani.nikula@intel.com>
This looks good to me, so
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
, but I'm also taking this opportunity to reply to your comment below.
>
>---
>
>This is the simplest change. There could be other alternatives.
>
>Outside of intel_pmdemand.c, this is only used to convert
>display.pmdemand.obj.state to struct intel_pmdemand_state *. Maybe we
>could just pass the global object or state pointer instead? Or we could
>have a function to get the current state from, say, struct
>intel_display? What we currently have is a bit cumbersome.
I like the idea of the exposed interface receiving only pointers to the
generic types and that we make the necessary conversion internally.
We currently are only using to_intel_pmdemand_state() to be able to pass
the correct argument to other functions exposed by the pmdemand header.
Not sure there is much benefit in doing that except for some level of
compile-time type-safety?
So, I would generally say:
- For functions that can operate directly on the display.*.obj member
(e.g. hardware state readout), we just ask for the display struct
pointer as a parameter.
- For functions that potentially add the global state to the atomic
state, we also ask for the pointer to the atomic state.
- For functions that operate only on the state bits and that could be
called for a state instance that could either be the current one (or
old) or some new state during a commit, we ask for a pointer to the
intel_global_state struct.
--
Gustavo Sousa
>---
> drivers/gpu/drm/i915/display/intel_pmdemand.c | 5 +++++
> drivers/gpu/drm/i915/display/intel_pmdemand.h | 3 +--
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>index cdd314956a31..69b40b3735b3 100644
>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>@@ -15,6 +15,11 @@
> #include "intel_pmdemand.h"
> #include "skl_watermark.h"
>
>+struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state)
>+{
>+ return container_of(obj_state, struct intel_pmdemand_state, base);
>+}
>+
> static struct intel_global_state *
> intel_pmdemand_duplicate_state(struct intel_global_obj *obj)
> {
>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.h b/drivers/gpu/drm/i915/display/intel_pmdemand.h
>index a1c49efdc493..89296364ec3b 100644
>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.h
>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.h
>@@ -43,8 +43,7 @@ struct intel_pmdemand_state {
> struct pmdemand_params params;
> };
>
>-#define to_intel_pmdemand_state(global_state) \
>- container_of_const((global_state), struct intel_pmdemand_state, base)
>+struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state);
>
> void intel_pmdemand_init_early(struct drm_i915_private *i915);
> int intel_pmdemand_init(struct drm_i915_private *i915);
>--
>2.39.5
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 2/4] drm/i915/pmdemand: make struct intel_pmdemand_state opaque
2024-12-31 16:27 ` [PATCH 2/4] drm/i915/pmdemand: make struct intel_pmdemand_state opaque Jani Nikula
@ 2024-12-31 19:31 ` Gustavo Sousa
0 siblings, 0 replies; 13+ messages in thread
From: Gustavo Sousa @ 2024-12-31 19:31 UTC (permalink / raw)
To: Jani Nikula, intel-gfx, intel-xe; +Cc: jani.nikula, ville.syrjala
Quoting Jani Nikula (2024-12-31 13:27:38-03:00)
>Only intel_pmdemand.c should look inside the struct
>intel_pmdemand_state. Indeed, this is already the case. Finish the job
>and make struct intel_pmdemand_state opaque, preventing any direct pokes
>at the guts of it in the future.
>
>Cc: Gustavo Sousa <gustavo.sousa@intel.com>
>Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
>---
> drivers/gpu/drm/i915/display/intel_pmdemand.c | 28 +++++++++++++++
> drivers/gpu/drm/i915/display/intel_pmdemand.h | 34 +++----------------
> 2 files changed, 32 insertions(+), 30 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>index 69b40b3735b3..500faf639290 100644
>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>@@ -15,6 +15,34 @@
> #include "intel_pmdemand.h"
> #include "skl_watermark.h"
>
>+struct pmdemand_params {
>+ u16 qclk_gv_bw;
>+ u8 voltage_index;
>+ u8 qclk_gv_index;
>+ u8 active_pipes;
>+ u8 active_dbufs; /* pre-Xe3 only */
>+ /* Total number of non type C active phys from active_phys_mask */
>+ u8 active_phys;
>+ u8 plls;
>+ u16 cdclk_freq_mhz;
>+ /* max from ddi_clocks[] */
>+ u16 ddiclk_max;
>+ u8 scalers; /* pre-Xe3 only */
>+};
>+
>+struct intel_pmdemand_state {
>+ struct intel_global_state base;
>+
>+ /* Maintain a persistent list of port clocks across all crtcs */
>+ int ddi_clocks[I915_MAX_PIPES];
>+
>+ /* Maintain a persistent list of non type C phys mask */
>+ u16 active_combo_phys_mask;
>+
>+ /* Parameters to be configured in the pmdemand registers */
>+ struct pmdemand_params params;
>+};
>+
> struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state)
> {
> return container_of(obj_state, struct intel_pmdemand_state, base);
>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.h b/drivers/gpu/drm/i915/display/intel_pmdemand.h
>index 89296364ec3b..34f68912fe04 100644
>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.h
>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.h
>@@ -6,42 +6,16 @@
> #ifndef __INTEL_PMDEMAND_H__
> #define __INTEL_PMDEMAND_H__
>
>-#include "intel_display_limits.h"
>-#include "intel_global_state.h"
>+#include <linux/types.h>
>
>+enum pipe;
> struct drm_i915_private;
> struct intel_atomic_state;
> struct intel_crtc_state;
> struct intel_encoder;
>+struct intel_global_state;
> struct intel_plane_state;
>-
>-struct pmdemand_params {
>- u16 qclk_gv_bw;
>- u8 voltage_index;
>- u8 qclk_gv_index;
>- u8 active_pipes;
>- u8 active_dbufs; /* pre-Xe3 only */
>- /* Total number of non type C active phys from active_phys_mask */
>- u8 active_phys;
>- u8 plls;
>- u16 cdclk_freq_mhz;
>- /* max from ddi_clocks[] */
>- u16 ddiclk_max;
>- u8 scalers; /* pre-Xe3 only */
>-};
>-
>-struct intel_pmdemand_state {
>- struct intel_global_state base;
>-
>- /* Maintain a persistent list of port clocks across all crtcs */
>- int ddi_clocks[I915_MAX_PIPES];
>-
>- /* Maintain a persistent list of non type C phys mask */
>- u16 active_combo_phys_mask;
>-
>- /* Parameters to be configured in the pmdemand registers */
>- struct pmdemand_params params;
>-};
>+struct intel_pmdemand_state;
>
> struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state);
>
>--
>2.39.5
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 3/4] drm/i915/pmdemand: convert to struct intel_display
2024-12-31 16:27 ` [PATCH 3/4] drm/i915/pmdemand: convert to struct intel_display Jani Nikula
@ 2024-12-31 19:39 ` Gustavo Sousa
0 siblings, 0 replies; 13+ messages in thread
From: Gustavo Sousa @ 2024-12-31 19:39 UTC (permalink / raw)
To: Jani Nikula, intel-gfx, intel-xe; +Cc: jani.nikula, ville.syrjala
Quoting Jani Nikula (2024-12-31 13:27:39-03:00)
>Going forward, struct intel_display is the main display device
>structure. Convert pmdemand to it.
>
>Cc: Gustavo Sousa <gustavo.sousa@intel.com>
>Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
with git show -W --word-diff and trust in the compiler.
>---
> .../drm/i915/display/intel_display_driver.c | 4 +-
> .../drm/i915/display/intel_display_power.c | 4 +-
> .../drm/i915/display/intel_modeset_setup.c | 17 +-
> drivers/gpu/drm/i915/display/intel_pmdemand.c | 160 +++++++++---------
> drivers/gpu/drm/i915/display/intel_pmdemand.h | 14 +-
> 5 files changed, 101 insertions(+), 98 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
>index 497b4a1f045f..c4cfb0406fa2 100644
>--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
>+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
>@@ -233,7 +233,7 @@ int intel_display_driver_probe_noirq(struct intel_display *display)
> if (ret < 0)
> goto cleanup_vga;
>
>- intel_pmdemand_init_early(i915);
>+ intel_pmdemand_init_early(display);
>
> intel_power_domains_init_hw(display, false);
>
>@@ -265,7 +265,7 @@ int intel_display_driver_probe_noirq(struct intel_display *display)
> if (ret)
> goto cleanup_vga_client_pw_domain_dmc;
>
>- ret = intel_pmdemand_init(i915);
>+ ret = intel_pmdemand_init(display);
> if (ret)
> goto cleanup_vga_client_pw_domain_dmc;
>
>diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c b/drivers/gpu/drm/i915/display/intel_display_power.c
>index 34465d56def0..d3b8453a1705 100644
>--- a/drivers/gpu/drm/i915/display/intel_display_power.c
>+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
>@@ -1103,7 +1103,7 @@ static void gen9_dbuf_enable(struct intel_display *display)
> slices_mask = BIT(DBUF_S1) | display->dbuf.enabled_slices;
>
> if (DISPLAY_VER(display) >= 14)
>- intel_pmdemand_program_dbuf(dev_priv, slices_mask);
>+ intel_pmdemand_program_dbuf(display, slices_mask);
>
> /*
> * Just power up at least 1 slice, we will
>@@ -1119,7 +1119,7 @@ static void gen9_dbuf_disable(struct intel_display *display)
> gen9_dbuf_slices_update(dev_priv, 0);
>
> if (DISPLAY_VER(display) >= 14)
>- intel_pmdemand_program_dbuf(dev_priv, 0);
>+ intel_pmdemand_program_dbuf(display, 0);
> }
>
> static void gen12_dbuf_slices_config(struct intel_display *display)
>diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c
>index 9db30db428f7..9a2bea19f17b 100644
>--- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c
>+++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c
>@@ -116,6 +116,7 @@ static void set_encoder_for_connector(struct intel_connector *connector,
>
> static void reset_encoder_connector_state(struct intel_encoder *encoder)
> {
>+ struct intel_display *display = to_intel_display(encoder);
> struct drm_i915_private *i915 = to_i915(encoder->base.dev);
> struct intel_pmdemand_state *pmdemand_state =
> to_intel_pmdemand_state(i915->display.pmdemand.obj.state);
>@@ -128,7 +129,7 @@ static void reset_encoder_connector_state(struct intel_encoder *encoder)
> continue;
>
> /* Clear the corresponding bit in pmdemand active phys mask */
>- intel_pmdemand_update_phys_mask(i915, encoder,
>+ intel_pmdemand_update_phys_mask(display, encoder,
> pmdemand_state, false);
>
> set_encoder_for_connector(connector, NULL);
>@@ -152,6 +153,7 @@ static void reset_crtc_encoder_state(struct intel_crtc *crtc)
>
> static void intel_crtc_disable_noatomic_complete(struct intel_crtc *crtc)
> {
>+ struct intel_display *display = to_intel_display(crtc);
> struct drm_i915_private *i915 = to_i915(crtc->base.dev);
> struct intel_bw_state *bw_state =
> to_intel_bw_state(i915->display.bw.obj.state);
>@@ -185,7 +187,7 @@ static void intel_crtc_disable_noatomic_complete(struct intel_crtc *crtc)
> bw_state->data_rate[pipe] = 0;
> bw_state->num_active_planes[pipe] = 0;
>
>- intel_pmdemand_update_port_clock(i915, pmdemand_state, pipe, 0);
>+ intel_pmdemand_update_port_clock(display, pmdemand_state, pipe, 0);
> }
>
> /*
>@@ -582,6 +584,7 @@ static bool has_bogus_dpll_config(const struct intel_crtc_state *crtc_state)
>
> static void intel_sanitize_encoder(struct intel_encoder *encoder)
> {
>+ struct intel_display *display = to_intel_display(encoder);
> struct drm_i915_private *i915 = to_i915(encoder->base.dev);
> struct intel_connector *connector;
> struct intel_crtc *crtc = to_intel_crtc(encoder->base.crtc);
>@@ -613,7 +616,7 @@ static void intel_sanitize_encoder(struct intel_encoder *encoder)
> encoder->base.name);
>
> /* Clear the corresponding bit in pmdemand active phys mask */
>- intel_pmdemand_update_phys_mask(i915, encoder,
>+ intel_pmdemand_update_phys_mask(display, encoder,
> pmdemand_state, false);
>
> /*
>@@ -770,11 +773,11 @@ static void intel_modeset_readout_hw_state(struct drm_i915_private *i915)
> }
> }
>
>- intel_pmdemand_update_phys_mask(i915, encoder,
>+ intel_pmdemand_update_phys_mask(display, encoder,
> pmdemand_state,
> true);
> } else {
>- intel_pmdemand_update_phys_mask(i915, encoder,
>+ intel_pmdemand_update_phys_mask(display, encoder,
> pmdemand_state,
> false);
>
>@@ -899,13 +902,13 @@ static void intel_modeset_readout_hw_state(struct drm_i915_private *i915)
> cdclk_state->min_voltage_level[crtc->pipe] =
> crtc_state->min_voltage_level;
>
>- intel_pmdemand_update_port_clock(i915, pmdemand_state, pipe,
>+ intel_pmdemand_update_port_clock(display, pmdemand_state, pipe,
> crtc_state->port_clock);
>
> intel_bw_crtc_update(bw_state, crtc_state);
> }
>
>- intel_pmdemand_init_pmdemand_params(i915, pmdemand_state);
>+ intel_pmdemand_init_pmdemand_params(display, pmdemand_state);
> }
>
> static void
>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>index 500faf639290..9373cf2885ab 100644
>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>@@ -74,10 +74,10 @@ static const struct intel_global_state_funcs intel_pmdemand_funcs = {
> static struct intel_pmdemand_state *
> intel_atomic_get_pmdemand_state(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> struct intel_global_state *pmdemand_state =
> intel_atomic_get_global_obj_state(state,
>- &i915->display.pmdemand.obj);
>+ &display->pmdemand.obj);
>
> if (IS_ERR(pmdemand_state))
> return ERR_CAST(pmdemand_state);
>@@ -88,10 +88,10 @@ intel_atomic_get_pmdemand_state(struct intel_atomic_state *state)
> static struct intel_pmdemand_state *
> intel_atomic_get_old_pmdemand_state(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> struct intel_global_state *pmdemand_state =
> intel_atomic_get_old_global_obj_state(state,
>- &i915->display.pmdemand.obj);
>+ &display->pmdemand.obj);
>
> if (!pmdemand_state)
> return NULL;
>@@ -102,10 +102,10 @@ intel_atomic_get_old_pmdemand_state(struct intel_atomic_state *state)
> static struct intel_pmdemand_state *
> intel_atomic_get_new_pmdemand_state(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> struct intel_global_state *pmdemand_state =
> intel_atomic_get_new_global_obj_state(state,
>- &i915->display.pmdemand.obj);
>+ &display->pmdemand.obj);
>
> if (!pmdemand_state)
> return NULL;
>@@ -113,40 +113,41 @@ intel_atomic_get_new_pmdemand_state(struct intel_atomic_state *state)
> return to_intel_pmdemand_state(pmdemand_state);
> }
>
>-int intel_pmdemand_init(struct drm_i915_private *i915)
>+int intel_pmdemand_init(struct intel_display *display)
> {
>+ struct drm_i915_private *i915 = to_i915(display->drm);
> struct intel_pmdemand_state *pmdemand_state;
>
> pmdemand_state = kzalloc(sizeof(*pmdemand_state), GFP_KERNEL);
> if (!pmdemand_state)
> return -ENOMEM;
>
>- intel_atomic_global_obj_init(i915, &i915->display.pmdemand.obj,
>+ intel_atomic_global_obj_init(i915, &display->pmdemand.obj,
> &pmdemand_state->base,
> &intel_pmdemand_funcs);
>
>- if (IS_DISPLAY_VERx100_STEP(i915, 1400, STEP_A0, STEP_C0))
>+ if (IS_DISPLAY_VERx100_STEP(display, 1400, STEP_A0, STEP_C0))
> /* Wa_14016740474 */
>- intel_de_rmw(i915, XELPD_CHICKEN_DCPR_3, 0, DMD_RSP_TIMEOUT_DISABLE);
>+ intel_de_rmw(display, XELPD_CHICKEN_DCPR_3, 0, DMD_RSP_TIMEOUT_DISABLE);
>
> return 0;
> }
>
>-void intel_pmdemand_init_early(struct drm_i915_private *i915)
>+void intel_pmdemand_init_early(struct intel_display *display)
> {
>- mutex_init(&i915->display.pmdemand.lock);
>- init_waitqueue_head(&i915->display.pmdemand.waitqueue);
>+ mutex_init(&display->pmdemand.lock);
>+ init_waitqueue_head(&display->pmdemand.waitqueue);
> }
>
> void
>-intel_pmdemand_update_phys_mask(struct drm_i915_private *i915,
>+intel_pmdemand_update_phys_mask(struct intel_display *display,
> struct intel_encoder *encoder,
> struct intel_pmdemand_state *pmdemand_state,
> bool set_bit)
> {
> enum phy phy;
>
>- if (DISPLAY_VER(i915) < 14)
>+ if (DISPLAY_VER(display) < 14)
> return;
>
> if (!encoder)
>@@ -164,18 +165,18 @@ intel_pmdemand_update_phys_mask(struct drm_i915_private *i915,
> }
>
> void
>-intel_pmdemand_update_port_clock(struct drm_i915_private *i915,
>+intel_pmdemand_update_port_clock(struct intel_display *display,
> struct intel_pmdemand_state *pmdemand_state,
> enum pipe pipe, int port_clock)
> {
>- if (DISPLAY_VER(i915) < 14)
>+ if (DISPLAY_VER(display) < 14)
> return;
>
> pmdemand_state->ddi_clocks[pipe] = port_clock;
> }
>
> static void
>-intel_pmdemand_update_max_ddiclk(struct drm_i915_private *i915,
>+intel_pmdemand_update_max_ddiclk(struct intel_display *display,
> struct intel_atomic_state *state,
> struct intel_pmdemand_state *pmdemand_state)
> {
>@@ -185,7 +186,7 @@ intel_pmdemand_update_max_ddiclk(struct drm_i915_private *i915,
> int i;
>
> for_each_new_intel_crtc_in_state(state, crtc, new_crtc_state, i)
>- intel_pmdemand_update_port_clock(i915, pmdemand_state,
>+ intel_pmdemand_update_port_clock(display, pmdemand_state,
> crtc->pipe,
> new_crtc_state->port_clock);
>
>@@ -196,7 +197,7 @@ intel_pmdemand_update_max_ddiclk(struct drm_i915_private *i915,
> }
>
> static void
>-intel_pmdemand_update_connector_phys(struct drm_i915_private *i915,
>+intel_pmdemand_update_connector_phys(struct intel_display *display,
> struct intel_atomic_state *state,
> struct drm_connector_state *conn_state,
> bool set_bit,
>@@ -217,12 +218,12 @@ intel_pmdemand_update_connector_phys(struct drm_i915_private *i915,
> if (!crtc_state->hw.active)
> return;
>
>- intel_pmdemand_update_phys_mask(i915, encoder, pmdemand_state,
>+ intel_pmdemand_update_phys_mask(display, encoder, pmdemand_state,
> set_bit);
> }
>
> static void
>-intel_pmdemand_update_active_non_tc_phys(struct drm_i915_private *i915,
>+intel_pmdemand_update_active_non_tc_phys(struct intel_display *display,
> struct intel_atomic_state *state,
> struct intel_pmdemand_state *pmdemand_state)
> {
>@@ -237,12 +238,12 @@ intel_pmdemand_update_active_non_tc_phys(struct drm_i915_private *i915,
> continue;
>
> /* First clear the active phys in the old connector state */
>- intel_pmdemand_update_connector_phys(i915, state,
>+ intel_pmdemand_update_connector_phys(display, state,
> old_conn_state, false,
> pmdemand_state);
>
> /* Then set the active phys in new connector state */
>- intel_pmdemand_update_connector_phys(i915, state,
>+ intel_pmdemand_update_connector_phys(display, state,
> new_conn_state, true,
> pmdemand_state);
> }
>@@ -253,7 +254,7 @@ intel_pmdemand_update_active_non_tc_phys(struct drm_i915_private *i915,
> }
>
> static bool
>-intel_pmdemand_encoder_has_tc_phy(struct drm_i915_private *i915,
>+intel_pmdemand_encoder_has_tc_phy(struct intel_display *display,
> struct intel_encoder *encoder)
> {
> return encoder && intel_encoder_is_tc(encoder);
>@@ -262,7 +263,7 @@ intel_pmdemand_encoder_has_tc_phy(struct drm_i915_private *i915,
> static bool
> intel_pmdemand_connector_needs_update(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> struct drm_connector_state *old_conn_state;
> struct drm_connector_state *new_conn_state;
> struct drm_connector *connector;
>@@ -279,8 +280,8 @@ intel_pmdemand_connector_needs_update(struct intel_atomic_state *state)
> continue;
>
> if (old_encoder == new_encoder ||
>- (intel_pmdemand_encoder_has_tc_phy(i915, old_encoder) &&
>- intel_pmdemand_encoder_has_tc_phy(i915, new_encoder)))
>+ (intel_pmdemand_encoder_has_tc_phy(display, old_encoder) &&
>+ intel_pmdemand_encoder_has_tc_phy(display, new_encoder)))
> continue;
>
> return true;
>@@ -337,13 +338,13 @@ static bool intel_pmdemand_needs_update(struct intel_atomic_state *state)
>
> int intel_pmdemand_atomic_check(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> const struct intel_bw_state *new_bw_state;
> const struct intel_cdclk_state *new_cdclk_state;
> const struct intel_dbuf_state *new_dbuf_state;
> struct intel_pmdemand_state *new_pmdemand_state;
>
>- if (DISPLAY_VER(i915) < 14)
>+ if (DISPLAY_VER(display) < 14)
> return 0;
>
> if (!intel_pmdemand_needs_update(state))
>@@ -365,14 +366,14 @@ int intel_pmdemand_atomic_check(struct intel_atomic_state *state)
> if (IS_ERR(new_dbuf_state))
> return PTR_ERR(new_dbuf_state);
>
>- if (DISPLAY_VER(i915) < 30) {
>+ if (DISPLAY_VER(display) < 30) {
> new_pmdemand_state->params.active_dbufs =
> min_t(u8, hweight8(new_dbuf_state->enabled_slices), 3);
> new_pmdemand_state->params.active_pipes =
> min_t(u8, hweight8(new_dbuf_state->active_pipes), 3);
> } else {
> new_pmdemand_state->params.active_pipes =
>- min_t(u8, hweight8(new_dbuf_state->active_pipes), INTEL_NUM_PIPES(i915));
>+ min_t(u8, hweight8(new_dbuf_state->active_pipes), INTEL_NUM_PIPES(display));
> }
>
> new_cdclk_state = intel_atomic_get_cdclk_state(state);
>@@ -384,9 +385,9 @@ int intel_pmdemand_atomic_check(struct intel_atomic_state *state)
> new_pmdemand_state->params.cdclk_freq_mhz =
> DIV_ROUND_UP(new_cdclk_state->actual.cdclk, 1000);
>
>- intel_pmdemand_update_max_ddiclk(i915, state, new_pmdemand_state);
>+ intel_pmdemand_update_max_ddiclk(display, state, new_pmdemand_state);
>
>- intel_pmdemand_update_active_non_tc_phys(i915, state, new_pmdemand_state);
>+ intel_pmdemand_update_active_non_tc_phys(display, state, new_pmdemand_state);
>
> /*
> * Active_PLLs starts with 1 because of CDCLK PLL.
>@@ -407,36 +408,36 @@ int intel_pmdemand_atomic_check(struct intel_atomic_state *state)
> return intel_atomic_lock_global_state(&new_pmdemand_state->base);
> }
>
>-static bool intel_pmdemand_check_prev_transaction(struct drm_i915_private *i915)
>+static bool intel_pmdemand_check_prev_transaction(struct intel_display *display)
> {
>- return !(intel_de_wait_for_clear(i915,
>+ return !(intel_de_wait_for_clear(display,
> XELPDP_INITIATE_PMDEMAND_REQUEST(1),
> XELPDP_PMDEMAND_REQ_ENABLE, 10) ||
>- intel_de_wait_for_clear(i915,
>+ intel_de_wait_for_clear(display,
> GEN12_DCPR_STATUS_1,
> XELPDP_PMDEMAND_INFLIGHT_STATUS, 10));
> }
>
> void
>-intel_pmdemand_init_pmdemand_params(struct drm_i915_private *i915,
>+intel_pmdemand_init_pmdemand_params(struct intel_display *display,
> struct intel_pmdemand_state *pmdemand_state)
> {
> u32 reg1, reg2;
>
>- if (DISPLAY_VER(i915) < 14)
>+ if (DISPLAY_VER(display) < 14)
> return;
>
>- mutex_lock(&i915->display.pmdemand.lock);
>- if (drm_WARN_ON(&i915->drm,
>- !intel_pmdemand_check_prev_transaction(i915))) {
>+ mutex_lock(&display->pmdemand.lock);
>+ if (drm_WARN_ON(display->drm,
>+ !intel_pmdemand_check_prev_transaction(display))) {
> memset(&pmdemand_state->params, 0,
> sizeof(pmdemand_state->params));
> goto unlock;
> }
>
>- reg1 = intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(0));
>+ reg1 = intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(0));
>
>- reg2 = intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1));
>+ reg2 = intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1));
>
> pmdemand_state->params.qclk_gv_bw =
> REG_FIELD_GET(XELPDP_PMDEMAND_QCLK_GV_BW_MASK, reg1);
>@@ -452,7 +453,7 @@ intel_pmdemand_init_pmdemand_params(struct drm_i915_private *i915,
> pmdemand_state->params.ddiclk_max =
> REG_FIELD_GET(XELPDP_PMDEMAND_DDICLK_FREQ_MASK, reg2);
>
>- if (DISPLAY_VER(i915) >= 30) {
>+ if (DISPLAY_VER(display) >= 30) {
> pmdemand_state->params.active_pipes =
> REG_FIELD_GET(XE3_PMDEMAND_PIPES_MASK, reg1);
> } else {
>@@ -466,49 +467,49 @@ intel_pmdemand_init_pmdemand_params(struct drm_i915_private *i915,
> }
>
> unlock:
>- mutex_unlock(&i915->display.pmdemand.lock);
>+ mutex_unlock(&display->pmdemand.lock);
> }
>
>-static bool intel_pmdemand_req_complete(struct drm_i915_private *i915)
>+static bool intel_pmdemand_req_complete(struct intel_display *display)
> {
>- return !(intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1)) &
>+ return !(intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1)) &
> XELPDP_PMDEMAND_REQ_ENABLE);
> }
>
>-static void intel_pmdemand_wait(struct drm_i915_private *i915)
>+static void intel_pmdemand_wait(struct intel_display *display)
> {
>- if (!wait_event_timeout(i915->display.pmdemand.waitqueue,
>- intel_pmdemand_req_complete(i915),
>+ if (!wait_event_timeout(display->pmdemand.waitqueue,
>+ intel_pmdemand_req_complete(display),
> msecs_to_jiffies_timeout(10)))
>- drm_err(&i915->drm,
>+ drm_err(display->drm,
> "timed out waiting for Punit PM Demand Response\n");
> }
>
> /* Required to be programmed during Display Init Sequences. */
>-void intel_pmdemand_program_dbuf(struct drm_i915_private *i915,
>+void intel_pmdemand_program_dbuf(struct intel_display *display,
> u8 dbuf_slices)
> {
> u32 dbufs = min_t(u32, hweight8(dbuf_slices), 3);
>
> /* PM Demand only tracks active dbufs on pre-Xe3 platforms */
>- if (DISPLAY_VER(i915) >= 30)
>+ if (DISPLAY_VER(display) >= 30)
> return;
>
>- mutex_lock(&i915->display.pmdemand.lock);
>- if (drm_WARN_ON(&i915->drm,
>- !intel_pmdemand_check_prev_transaction(i915)))
>+ mutex_lock(&display->pmdemand.lock);
>+ if (drm_WARN_ON(display->drm,
>+ !intel_pmdemand_check_prev_transaction(display)))
> goto unlock;
>
>- intel_de_rmw(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(0),
>+ intel_de_rmw(display, XELPDP_INITIATE_PMDEMAND_REQUEST(0),
> XELPDP_PMDEMAND_DBUFS_MASK,
> REG_FIELD_PREP(XELPDP_PMDEMAND_DBUFS_MASK, dbufs));
>- intel_de_rmw(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1), 0,
>+ intel_de_rmw(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1), 0,
> XELPDP_PMDEMAND_REQ_ENABLE);
>
>- intel_pmdemand_wait(i915);
>+ intel_pmdemand_wait(display);
>
> unlock:
>- mutex_unlock(&i915->display.pmdemand.lock);
>+ mutex_unlock(&display->pmdemand.lock);
> }
>
> static void
>@@ -568,38 +569,37 @@ intel_pmdemand_update_params(struct intel_display *display,
> }
>
> static void
>-intel_pmdemand_program_params(struct drm_i915_private *i915,
>+intel_pmdemand_program_params(struct intel_display *display,
> const struct intel_pmdemand_state *new,
> const struct intel_pmdemand_state *old,
> bool serialized)
> {
>- struct intel_display *display = &i915->display;
> bool changed = false;
> u32 reg1, mod_reg1;
> u32 reg2, mod_reg2;
>
>- mutex_lock(&i915->display.pmdemand.lock);
>- if (drm_WARN_ON(&i915->drm,
>- !intel_pmdemand_check_prev_transaction(i915)))
>+ mutex_lock(&display->pmdemand.lock);
>+ if (drm_WARN_ON(display->drm,
>+ !intel_pmdemand_check_prev_transaction(display)))
> goto unlock;
>
>- reg1 = intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(0));
>+ reg1 = intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(0));
> mod_reg1 = reg1;
>
>- reg2 = intel_de_read(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1));
>+ reg2 = intel_de_read(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1));
> mod_reg2 = reg2;
>
> intel_pmdemand_update_params(display, new, old, &mod_reg1, &mod_reg2,
> serialized);
>
> if (reg1 != mod_reg1) {
>- intel_de_write(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(0),
>+ intel_de_write(display, XELPDP_INITIATE_PMDEMAND_REQUEST(0),
> mod_reg1);
> changed = true;
> }
>
> if (reg2 != mod_reg2) {
>- intel_de_write(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1),
>+ intel_de_write(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1),
> mod_reg2);
> changed = true;
> }
>@@ -608,17 +608,17 @@ intel_pmdemand_program_params(struct drm_i915_private *i915,
> if (!changed)
> goto unlock;
>
>- drm_dbg_kms(&i915->drm,
>+ drm_dbg_kms(display->drm,
> "initate pmdemand request values: (0x%x 0x%x)\n",
> mod_reg1, mod_reg2);
>
>- intel_de_rmw(i915, XELPDP_INITIATE_PMDEMAND_REQUEST(1), 0,
>+ intel_de_rmw(display, XELPDP_INITIATE_PMDEMAND_REQUEST(1), 0,
> XELPDP_PMDEMAND_REQ_ENABLE);
>
>- intel_pmdemand_wait(i915);
>+ intel_pmdemand_wait(display);
>
> unlock:
>- mutex_unlock(&i915->display.pmdemand.lock);
>+ mutex_unlock(&display->pmdemand.lock);
> }
>
> static bool
>@@ -630,13 +630,13 @@ intel_pmdemand_state_changed(const struct intel_pmdemand_state *new,
>
> void intel_pmdemand_pre_plane_update(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> const struct intel_pmdemand_state *new_pmdemand_state =
> intel_atomic_get_new_pmdemand_state(state);
> const struct intel_pmdemand_state *old_pmdemand_state =
> intel_atomic_get_old_pmdemand_state(state);
>
>- if (DISPLAY_VER(i915) < 14)
>+ if (DISPLAY_VER(display) < 14)
> return;
>
> if (!new_pmdemand_state ||
>@@ -646,20 +646,20 @@ void intel_pmdemand_pre_plane_update(struct intel_atomic_state *state)
>
> WARN_ON(!new_pmdemand_state->base.changed);
>
>- intel_pmdemand_program_params(i915, new_pmdemand_state,
>+ intel_pmdemand_program_params(display, new_pmdemand_state,
> old_pmdemand_state,
> intel_atomic_global_state_is_serialized(state));
> }
>
> void intel_pmdemand_post_plane_update(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> const struct intel_pmdemand_state *new_pmdemand_state =
> intel_atomic_get_new_pmdemand_state(state);
> const struct intel_pmdemand_state *old_pmdemand_state =
> intel_atomic_get_old_pmdemand_state(state);
>
>- if (DISPLAY_VER(i915) < 14)
>+ if (DISPLAY_VER(display) < 14)
> return;
>
> if (!new_pmdemand_state ||
>@@ -669,6 +669,6 @@ void intel_pmdemand_post_plane_update(struct intel_atomic_state *state)
>
> WARN_ON(!new_pmdemand_state->base.changed);
>
>- intel_pmdemand_program_params(i915, new_pmdemand_state, NULL,
>+ intel_pmdemand_program_params(display, new_pmdemand_state, NULL,
> intel_atomic_global_state_is_serialized(state));
> }
>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.h b/drivers/gpu/drm/i915/display/intel_pmdemand.h
>index 34f68912fe04..821ef2c4134a 100644
>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.h
>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.h
>@@ -9,9 +9,9 @@
> #include <linux/types.h>
>
> enum pipe;
>-struct drm_i915_private;
> struct intel_atomic_state;
> struct intel_crtc_state;
>+struct intel_display;
> struct intel_encoder;
> struct intel_global_state;
> struct intel_plane_state;
>@@ -19,18 +19,18 @@ struct intel_pmdemand_state;
>
> struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state);
>
>-void intel_pmdemand_init_early(struct drm_i915_private *i915);
>-int intel_pmdemand_init(struct drm_i915_private *i915);
>-void intel_pmdemand_init_pmdemand_params(struct drm_i915_private *i915,
>+void intel_pmdemand_init_early(struct intel_display *display);
>+int intel_pmdemand_init(struct intel_display *display);
>+void intel_pmdemand_init_pmdemand_params(struct intel_display *display,
> struct intel_pmdemand_state *pmdemand_state);
>-void intel_pmdemand_update_port_clock(struct drm_i915_private *i915,
>+void intel_pmdemand_update_port_clock(struct intel_display *display,
> struct intel_pmdemand_state *pmdemand_state,
> enum pipe pipe, int port_clock);
>-void intel_pmdemand_update_phys_mask(struct drm_i915_private *i915,
>+void intel_pmdemand_update_phys_mask(struct intel_display *display,
> struct intel_encoder *encoder,
> struct intel_pmdemand_state *pmdemand_state,
> bool clear_bit);
>-void intel_pmdemand_program_dbuf(struct drm_i915_private *i915,
>+void intel_pmdemand_program_dbuf(struct intel_display *display,
> u8 dbuf_slices);
> void intel_pmdemand_pre_plane_update(struct intel_atomic_state *state);
> void intel_pmdemand_post_plane_update(struct intel_atomic_state *state);
>--
>2.39.5
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* ✗ i915.CI.Full: failure for drm/i915/pmdemand: cleanups
2024-12-31 16:27 [PATCH 0/4] drm/i915/pmdemand: cleanups Jani Nikula
` (5 preceding siblings ...)
2024-12-31 17:16 ` ✓ i915.CI.BAT: success " Patchwork
@ 2024-12-31 19:42 ` Patchwork
6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2024-12-31 19:42 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 100254 bytes --]
== Series Details ==
Series: drm/i915/pmdemand: cleanups
URL : https://patchwork.freedesktop.org/series/143040/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_15892_full -> Patchwork_143040v1_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_143040v1_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_143040v1_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 (11 -> 11)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_143040v1_full:
### IGT changes ###
#### Possible regressions ####
* igt@i915_hangman@engine-error-state-capture@rcs0:
- shard-dg2: NOTRUN -> [INCOMPLETE][1] +1 other test incomplete
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-11/igt@i915_hangman@engine-error-state-capture@rcs0.html
Known issues
------------
Here are the changes found in Patchwork_143040v1_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@blit-reloc-keep-cache:
- shard-dg2: NOTRUN -> [SKIP][2] ([i915#8411])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@api_intel_bb@blit-reloc-keep-cache.html
* igt@api_intel_bb@object-reloc-keep-cache:
- shard-rkl: NOTRUN -> [SKIP][3] ([i915#8411]) +1 other test skip
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-1/igt@api_intel_bb@object-reloc-keep-cache.html
- shard-dg1: NOTRUN -> [SKIP][4] ([i915#8411])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@api_intel_bb@object-reloc-keep-cache.html
* igt@device_reset@unbind-cold-reset-rebind:
- shard-dg1: NOTRUN -> [SKIP][5] ([i915#11078])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@device_reset@unbind-cold-reset-rebind.html
* igt@device_reset@unbind-reset-rebind:
- shard-tglu: [PASS][6] -> [ABORT][7] ([i915#12817] / [i915#5507])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-tglu-3/igt@device_reset@unbind-reset-rebind.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-6/igt@device_reset@unbind-reset-rebind.html
* igt@drm_fdinfo@busy-check-all@vecs1:
- shard-dg2: NOTRUN -> [SKIP][8] ([i915#8414]) +8 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@drm_fdinfo@busy-check-all@vecs1.html
* igt@drm_fdinfo@busy@bcs0:
- shard-mtlp: NOTRUN -> [SKIP][9] ([i915#8414]) +6 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-1/igt@drm_fdinfo@busy@bcs0.html
* igt@drm_fdinfo@isolation@vecs0:
- shard-dg1: NOTRUN -> [SKIP][10] ([i915#8414]) +13 other tests skip
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@drm_fdinfo@isolation@vecs0.html
* igt@gem_bad_reloc@negative-reloc-lut:
- shard-rkl: NOTRUN -> [SKIP][11] ([i915#3281]) +7 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@gem_bad_reloc@negative-reloc-lut.html
* igt@gem_basic@multigpu-create-close:
- shard-tglu-1: NOTRUN -> [SKIP][12] ([i915#7697])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@gem_basic@multigpu-create-close.html
* igt@gem_ccs@block-copy-compressed:
- shard-tglu-1: NOTRUN -> [SKIP][13] ([i915#3555] / [i915#9323])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@gem_ccs@block-copy-compressed.html
- shard-dg1: NOTRUN -> [SKIP][14] ([i915#3555] / [i915#9323]) +1 other test skip
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@gem_ccs@block-copy-compressed.html
* igt@gem_ccs@block-multicopy-compressed:
- shard-dg1: NOTRUN -> [SKIP][15] ([i915#9323])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@gem_ccs@block-multicopy-compressed.html
* igt@gem_close_race@multigpu-basic-process:
- shard-dg1: NOTRUN -> [SKIP][16] ([i915#7697])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@gem_close_race@multigpu-basic-process.html
* igt@gem_close_race@multigpu-basic-threads:
- shard-tglu: NOTRUN -> [SKIP][17] ([i915#7697])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@gem_close_race@multigpu-basic-threads.html
* igt@gem_create@create-ext-cpu-access-sanity-check:
- shard-rkl: NOTRUN -> [SKIP][18] ([i915#6335]) +1 other test skip
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@gem_create@create-ext-cpu-access-sanity-check.html
* igt@gem_ctx_persistence@engines-mixed-process:
- shard-snb: NOTRUN -> [SKIP][19] ([i915#1099]) +1 other test skip
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-snb4/igt@gem_ctx_persistence@engines-mixed-process.html
* igt@gem_ctx_persistence@hang:
- shard-dg2: NOTRUN -> [SKIP][20] ([i915#8555])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@gem_ctx_persistence@hang.html
* igt@gem_ctx_sseu@invalid-args:
- shard-rkl: NOTRUN -> [SKIP][21] ([i915#280])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@gem_ctx_sseu@invalid-args.html
* igt@gem_ctx_sseu@invalid-sseu:
- shard-dg2: NOTRUN -> [SKIP][22] ([i915#280]) +1 other test skip
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@gem_ctx_sseu@invalid-sseu.html
* igt@gem_eio@unwedge-stress:
- shard-snb: NOTRUN -> [FAIL][23] ([i915#8898])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-snb4/igt@gem_eio@unwedge-stress.html
* igt@gem_eio@wait-wedge-immediate:
- shard-mtlp: [PASS][24] -> [ABORT][25] ([i915#13193])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-mtlp-6/igt@gem_eio@wait-wedge-immediate.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-4/igt@gem_eio@wait-wedge-immediate.html
* igt@gem_exec_balancer@bonded-sync:
- shard-dg1: NOTRUN -> [SKIP][26] ([i915#4771]) +1 other test skip
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@gem_exec_balancer@bonded-sync.html
* igt@gem_exec_balancer@invalid-bonds:
- shard-dg1: NOTRUN -> [SKIP][27] ([i915#4036])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@gem_exec_balancer@invalid-bonds.html
* igt@gem_exec_balancer@parallel:
- shard-rkl: NOTRUN -> [SKIP][28] ([i915#4525]) +2 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@gem_exec_balancer@parallel.html
* igt@gem_exec_balancer@parallel-out-fence:
- shard-tglu: NOTRUN -> [SKIP][29] ([i915#4525])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@gem_exec_balancer@parallel-out-fence.html
* igt@gem_exec_big@single:
- shard-tglu: NOTRUN -> [ABORT][30] ([i915#11713])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@gem_exec_big@single.html
* igt@gem_exec_capture@capture-recoverable:
- shard-rkl: NOTRUN -> [SKIP][31] ([i915#6344])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@gem_exec_capture@capture-recoverable.html
* igt@gem_exec_flush@basic-batch-kernel-default-cmd:
- shard-dg2: NOTRUN -> [SKIP][32] ([i915#3539] / [i915#4852])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
* igt@gem_exec_flush@basic-batch-kernel-default-wb:
- shard-dg1: NOTRUN -> [SKIP][33] ([i915#3539] / [i915#4852]) +1 other test skip
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@gem_exec_flush@basic-batch-kernel-default-wb.html
* igt@gem_exec_flush@basic-uc-prw-default:
- shard-dg1: NOTRUN -> [SKIP][34] ([i915#3539])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@gem_exec_flush@basic-uc-prw-default.html
* igt@gem_exec_params@rsvd2-dirt:
- shard-mtlp: NOTRUN -> [SKIP][35] ([i915#5107])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@gem_exec_params@rsvd2-dirt.html
* igt@gem_exec_reloc@basic-gtt-wc:
- shard-mtlp: NOTRUN -> [SKIP][36] ([i915#3281]) +2 other tests skip
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@gem_exec_reloc@basic-gtt-wc.html
* igt@gem_exec_reloc@basic-wc-read-active:
- shard-dg1: NOTRUN -> [SKIP][37] ([i915#3281]) +16 other tests skip
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@gem_exec_reloc@basic-wc-read-active.html
* igt@gem_exec_reloc@basic-write-wc:
- shard-dg2: NOTRUN -> [SKIP][38] ([i915#3281]) +1 other test skip
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@gem_exec_reloc@basic-write-wc.html
* igt@gem_exec_schedule@semaphore-power:
- shard-dg1: NOTRUN -> [SKIP][39] ([i915#4812]) +2 other tests skip
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@gem_exec_schedule@semaphore-power.html
* igt@gem_exec_schedule@wide:
- shard-tglu: [PASS][40] -> [INCOMPLETE][41] ([i915#13391]) +1 other test incomplete
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-tglu-2/igt@gem_exec_schedule@wide.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-7/igt@gem_exec_schedule@wide.html
* igt@gem_fence_thrash@bo-write-verify-threaded-none:
- shard-dg2: NOTRUN -> [SKIP][42] ([i915#4860])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@gem_fence_thrash@bo-write-verify-threaded-none.html
* igt@gem_fence_thrash@bo-write-verify-y:
- shard-mtlp: NOTRUN -> [SKIP][43] ([i915#4860]) +1 other test skip
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@gem_fence_thrash@bo-write-verify-y.html
* igt@gem_huc_copy@huc-copy:
- shard-tglu: NOTRUN -> [SKIP][44] ([i915#2190])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@basic:
- shard-tglu-1: NOTRUN -> [SKIP][45] ([i915#4613]) +1 other test skip
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@gem_lmem_swapping@basic.html
* igt@gem_lmem_swapping@heavy-random:
- shard-mtlp: NOTRUN -> [SKIP][46] ([i915#4613]) +1 other test skip
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@gem_lmem_swapping@heavy-random.html
* igt@gem_lmem_swapping@heavy-verify-random-ccs:
- shard-tglu: NOTRUN -> [SKIP][47] ([i915#4613])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@gem_lmem_swapping@heavy-verify-random-ccs.html
* igt@gem_lmem_swapping@parallel-multi:
- shard-rkl: NOTRUN -> [SKIP][48] ([i915#4613]) +2 other tests skip
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@gem_lmem_swapping@parallel-multi.html
* igt@gem_media_vme:
- shard-tglu: NOTRUN -> [SKIP][49] ([i915#284])
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@gem_media_vme.html
* igt@gem_mmap_gtt@hang-user:
- shard-dg2: NOTRUN -> [SKIP][50] ([i915#4077]) +1 other test skip
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@gem_mmap_gtt@hang-user.html
* igt@gem_mmap_wc@copy:
- shard-dg2: NOTRUN -> [SKIP][51] ([i915#4083]) +2 other tests skip
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@gem_mmap_wc@copy.html
* igt@gem_mmap_wc@write-gtt-read-wc:
- shard-mtlp: NOTRUN -> [SKIP][52] ([i915#4083]) +1 other test skip
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-1/igt@gem_mmap_wc@write-gtt-read-wc.html
* igt@gem_mmap_wc@write-read:
- shard-dg1: NOTRUN -> [SKIP][53] ([i915#4083]) +6 other tests skip
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@gem_mmap_wc@write-read.html
* igt@gem_pread@self:
- shard-dg1: NOTRUN -> [SKIP][54] ([i915#3282]) +4 other tests skip
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@gem_pread@self.html
* igt@gem_pxp@create-regular-context-1:
- shard-rkl: NOTRUN -> [TIMEOUT][55] ([i915#12917] / [i915#12964])
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@gem_pxp@create-regular-context-1.html
* igt@gem_pxp@hw-rejects-pxp-context:
- shard-tglu: NOTRUN -> [SKIP][56] ([i915#13398])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@gem_pxp@hw-rejects-pxp-context.html
* igt@gem_pxp@regular-baseline-src-copy-readible:
- shard-rkl: NOTRUN -> [TIMEOUT][57] ([i915#12964])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@gem_pxp@regular-baseline-src-copy-readible.html
* igt@gem_pxp@verify-pxp-key-change-after-suspend-resume:
- shard-dg1: NOTRUN -> [SKIP][58] ([i915#4270]) +4 other tests skip
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@gem_pxp@verify-pxp-key-change-after-suspend-resume.html
* igt@gem_readwrite@read-bad-handle:
- shard-dg2: NOTRUN -> [SKIP][59] ([i915#3282]) +1 other test skip
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@gem_readwrite@read-bad-handle.html
* igt@gem_readwrite@read-write:
- shard-rkl: NOTRUN -> [SKIP][60] ([i915#3282])
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@gem_readwrite@read-write.html
* igt@gem_render_copy@y-tiled-ccs-to-y-tiled-mc-ccs:
- shard-mtlp: NOTRUN -> [SKIP][61] ([i915#8428])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@gem_render_copy@y-tiled-ccs-to-y-tiled-mc-ccs.html
* igt@gem_render_copy@y-tiled-to-vebox-linear:
- shard-dg2: NOTRUN -> [SKIP][62] ([i915#5190] / [i915#8428]) +3 other tests skip
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@gem_render_copy@y-tiled-to-vebox-linear.html
* igt@gem_set_tiling_vs_blt@tiled-to-untiled:
- shard-dg1: NOTRUN -> [SKIP][63] ([i915#4079])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@gem_set_tiling_vs_blt@tiled-to-untiled.html
* igt@gem_tiled_swapping@non-threaded:
- shard-snb: NOTRUN -> [ABORT][64] ([i915#13263])
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-snb4/igt@gem_tiled_swapping@non-threaded.html
* igt@gem_userptr_blits@coherency-sync:
- shard-tglu-1: NOTRUN -> [SKIP][65] ([i915#3297]) +2 other tests skip
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@gem_userptr_blits@coherency-sync.html
* igt@gem_userptr_blits@dmabuf-sync:
- shard-dg2: NOTRUN -> [SKIP][66] ([i915#3297])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@gem_userptr_blits@dmabuf-sync.html
* igt@gem_userptr_blits@relocations:
- shard-rkl: NOTRUN -> [SKIP][67] ([i915#3281] / [i915#3297])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@gem_userptr_blits@relocations.html
* igt@gem_userptr_blits@unsync-unmap:
- shard-tglu: NOTRUN -> [SKIP][68] ([i915#3297])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@gem_userptr_blits@unsync-unmap.html
* igt@gem_userptr_blits@unsync-unmap-cycles:
- shard-dg1: NOTRUN -> [SKIP][69] ([i915#3297]) +1 other test skip
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@gem_userptr_blits@unsync-unmap-cycles.html
* igt@gen9_exec_parse@allowed-all:
- shard-rkl: NOTRUN -> [SKIP][70] ([i915#2527]) +2 other tests skip
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@gen9_exec_parse@allowed-all.html
* igt@gen9_exec_parse@allowed-single:
- shard-mtlp: NOTRUN -> [SKIP][71] ([i915#2856])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@gen9_exec_parse@allowed-single.html
* igt@gen9_exec_parse@bb-chained:
- shard-tglu-1: NOTRUN -> [SKIP][72] ([i915#2527] / [i915#2856])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@gen9_exec_parse@bb-chained.html
* igt@gen9_exec_parse@bb-oversize:
- shard-dg2: NOTRUN -> [SKIP][73] ([i915#2856]) +1 other test skip
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@gen9_exec_parse@bb-oversize.html
* igt@gen9_exec_parse@cmd-crossing-page:
- shard-tglu: NOTRUN -> [SKIP][74] ([i915#2527] / [i915#2856]) +1 other test skip
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@gen9_exec_parse@cmd-crossing-page.html
* igt@gen9_exec_parse@shadow-peek:
- shard-dg1: NOTRUN -> [SKIP][75] ([i915#2527]) +3 other tests skip
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@gen9_exec_parse@shadow-peek.html
* igt@i915_module_load@resize-bar:
- shard-tglu: NOTRUN -> [SKIP][76] ([i915#6412])
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@i915_module_load@resize-bar.html
* igt@i915_pm_freq_api@freq-suspend@gt0:
- shard-dg2: NOTRUN -> [INCOMPLETE][77] ([i915#12455]) +1 other test incomplete
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@i915_pm_freq_api@freq-suspend@gt0.html
* igt@i915_pm_freq_mult@media-freq@gt0:
- shard-rkl: NOTRUN -> [SKIP][78] ([i915#6590]) +1 other test skip
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@i915_pm_freq_mult@media-freq@gt0.html
* igt@i915_pm_rpm@system-suspend-execbuf:
- shard-glk: [PASS][79] -> [INCOMPLETE][80] ([i915#12797])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-glk4/igt@i915_pm_rpm@system-suspend-execbuf.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk2/igt@i915_pm_rpm@system-suspend-execbuf.html
* igt@i915_pm_rps@thresholds:
- shard-dg1: NOTRUN -> [SKIP][81] ([i915#11681]) +1 other test skip
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@i915_pm_rps@thresholds.html
* igt@i915_pm_sseu@full-enable:
- shard-rkl: NOTRUN -> [SKIP][82] ([i915#4387])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@i915_pm_sseu@full-enable.html
* igt@i915_power@sanity:
- shard-mtlp: NOTRUN -> [SKIP][83] ([i915#7984])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@i915_power@sanity.html
- shard-rkl: NOTRUN -> [SKIP][84] ([i915#7984])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@i915_power@sanity.html
* igt@i915_suspend@basic-s3-without-i915:
- shard-tglu-1: NOTRUN -> [INCOMPLETE][85] ([i915#7443])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@i915_suspend@basic-s3-without-i915.html
* igt@intel_hwmon@hwmon-read:
- shard-tglu: NOTRUN -> [SKIP][86] ([i915#7707])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@intel_hwmon@hwmon-read.html
* igt@kms_addfb_basic@bo-too-small-due-to-tiling:
- shard-dg2: NOTRUN -> [SKIP][87] ([i915#4212])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_addfb_basic@bo-too-small-due-to-tiling.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-1-y-rc-ccs-cc:
- shard-rkl: NOTRUN -> [SKIP][88] ([i915#8709]) +3 other tests skip
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-1-y-rc-ccs-cc.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-3-y-rc-ccs:
- shard-dg1: NOTRUN -> [SKIP][89] ([i915#8709]) +15 other tests skip
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-3-y-rc-ccs.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-dp-4-4-rc-ccs-cc:
- shard-dg2: NOTRUN -> [SKIP][90] ([i915#8709]) +11 other tests skip
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-dp-4-4-rc-ccs-cc.html
* igt@kms_async_flips@crc:
- shard-rkl: NOTRUN -> [INCOMPLETE][91] ([i915#13287] / [i915#9878])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_async_flips@crc.html
* igt@kms_async_flips@crc@pipe-a-hdmi-a-1:
- shard-glk: [PASS][92] -> [INCOMPLETE][93] ([i915#13287])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-glk8/igt@kms_async_flips@crc@pipe-a-hdmi-a-1.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk1/igt@kms_async_flips@crc@pipe-a-hdmi-a-1.html
- shard-rkl: NOTRUN -> [INCOMPLETE][94] ([i915#13287])
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_async_flips@crc@pipe-a-hdmi-a-1.html
* igt@kms_async_flips@crc@pipe-c-hdmi-a-3:
- shard-dg2: NOTRUN -> [CRASH][95] ([i915#13287]) +3 other tests crash
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-5/igt@kms_async_flips@crc@pipe-c-hdmi-a-3.html
* igt@kms_atomic@plane-primary-overlay-mutable-zpos:
- shard-tglu-1: NOTRUN -> [SKIP][96] ([i915#9531])
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
- shard-dg1: NOTRUN -> [SKIP][97] ([i915#9531])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
* igt@kms_atomic_transition@plane-all-modeset-transition:
- shard-dg2: [PASS][98] -> [FAIL][99] ([i915#5956])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-8/igt@kms_atomic_transition@plane-all-modeset-transition.html
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_atomic_transition@plane-all-modeset-transition.html
* igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
- shard-rkl: NOTRUN -> [SKIP][100] ([i915#1769] / [i915#3555])
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/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: NOTRUN -> [FAIL][101] ([i915#5956])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-3.html
* igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-4:
- shard-dg1: NOTRUN -> [FAIL][102] ([i915#5956]) +1 other test fail
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-4.html
* igt@kms_big_fb@4-tiled-16bpp-rotate-0:
- shard-rkl: NOTRUN -> [SKIP][103] ([i915#5286]) +4 other tests skip
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_big_fb@4-tiled-16bpp-rotate-0.html
* igt@kms_big_fb@4-tiled-16bpp-rotate-270:
- shard-dg2: NOTRUN -> [SKIP][104] +3 other tests skip
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_big_fb@4-tiled-16bpp-rotate-270.html
* igt@kms_big_fb@4-tiled-32bpp-rotate-270:
- shard-tglu: NOTRUN -> [SKIP][105] ([i915#5286]) +4 other tests skip
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@kms_big_fb@4-tiled-32bpp-rotate-270.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip:
- shard-tglu-1: NOTRUN -> [SKIP][106] ([i915#5286]) +1 other test skip
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html
- shard-dg1: NOTRUN -> [SKIP][107] ([i915#4538] / [i915#5286]) +6 other tests skip
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html
* igt@kms_big_fb@linear-64bpp-rotate-90:
- shard-rkl: NOTRUN -> [SKIP][108] ([i915#3638]) +2 other tests skip
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_big_fb@linear-64bpp-rotate-90.html
* igt@kms_big_fb@y-tiled-64bpp-rotate-90:
- shard-dg1: NOTRUN -> [SKIP][109] ([i915#3638]) +3 other tests skip
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_big_fb@y-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@yf-tiled-32bpp-rotate-270:
- shard-dg2: NOTRUN -> [SKIP][110] ([i915#4538] / [i915#5190]) +4 other tests skip
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0:
- shard-dg1: NOTRUN -> [SKIP][111] ([i915#4538]) +5 other tests skip
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0.html
* igt@kms_ccs@bad-aux-stride-y-tiled-gen12-mc-ccs@pipe-a-hdmi-a-1:
- shard-tglu: NOTRUN -> [SKIP][112] ([i915#6095]) +34 other tests skip
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_ccs@bad-aux-stride-y-tiled-gen12-mc-ccs@pipe-a-hdmi-a-1.html
* igt@kms_ccs@bad-aux-stride-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][113] ([i915#10307] / [i915#10434] / [i915#6095]) +5 other tests skip
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-8/igt@kms_ccs@bad-aux-stride-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1.html
* igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-1:
- shard-tglu-1: NOTRUN -> [SKIP][114] ([i915#6095]) +24 other tests skip
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-1.html
* igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs:
- shard-rkl: NOTRUN -> [SKIP][115] ([i915#12313]) +1 other test skip
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs.html
* igt@kms_ccs@ccs-on-another-bo-y-tiled-ccs@pipe-b-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][116] ([i915#10307] / [i915#6095]) +169 other tests skip
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-8/igt@kms_ccs@ccs-on-another-bo-y-tiled-ccs@pipe-b-hdmi-a-1.html
* igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs:
- shard-dg2: NOTRUN -> [SKIP][117] ([i915#12313]) +1 other test skip
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs:
- shard-tglu: NOTRUN -> [SKIP][118] ([i915#12313]) +1 other test skip
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
- shard-dg1: NOTRUN -> [SKIP][119] ([i915#12805])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-c-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][120] ([i915#6095]) +14 other tests skip
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-c-edp-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs:
- shard-rkl: NOTRUN -> [SKIP][121] ([i915#12805])
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs.html
- shard-mtlp: NOTRUN -> [SKIP][122] ([i915#12805])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-1/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][123] ([i915#6095]) +70 other tests skip
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-3/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc@pipe-b-hdmi-a-3:
- shard-dg2: NOTRUN -> [SKIP][124] ([i915#6095]) +16 other tests skip
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc@pipe-b-hdmi-a-3.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs:
- shard-dg1: NOTRUN -> [SKIP][125] ([i915#12313])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs:
- shard-tglu-1: NOTRUN -> [SKIP][126] ([i915#12313])
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs.html
* igt@kms_ccs@random-ccs-data-yf-tiled-ccs@pipe-a-hdmi-a-3:
- shard-dg1: NOTRUN -> [SKIP][127] ([i915#6095]) +173 other tests skip
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_ccs@random-ccs-data-yf-tiled-ccs@pipe-a-hdmi-a-3.html
* igt@kms_cdclk@mode-transition@pipe-b-hdmi-a-2:
- shard-dg2: NOTRUN -> [SKIP][128] ([i915#7213]) +3 other tests skip
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-11/igt@kms_cdclk@mode-transition@pipe-b-hdmi-a-2.html
* igt@kms_chamelium_audio@hdmi-audio-edid:
- shard-dg1: NOTRUN -> [SKIP][129] ([i915#7828]) +9 other tests skip
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_chamelium_audio@hdmi-audio-edid.html
* igt@kms_chamelium_frames@dp-crc-fast:
- shard-dg2: NOTRUN -> [SKIP][130] ([i915#7828]) +4 other tests skip
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_chamelium_frames@dp-crc-fast.html
* igt@kms_chamelium_frames@hdmi-cmp-planar-formats:
- shard-rkl: NOTRUN -> [SKIP][131] ([i915#7828]) +3 other tests skip
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_chamelium_frames@hdmi-cmp-planar-formats.html
* igt@kms_chamelium_hpd@hdmi-hpd:
- shard-tglu-1: NOTRUN -> [SKIP][132] ([i915#7828]) +1 other test skip
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_chamelium_hpd@hdmi-hpd.html
* igt@kms_chamelium_hpd@hdmi-hpd-for-each-pipe:
- shard-tglu: NOTRUN -> [SKIP][133] ([i915#7828]) +4 other tests skip
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@kms_chamelium_hpd@hdmi-hpd-for-each-pipe.html
* igt@kms_chamelium_hpd@hdmi-hpd-with-enabled-mode:
- shard-mtlp: NOTRUN -> [SKIP][134] ([i915#7828]) +2 other tests skip
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_chamelium_hpd@hdmi-hpd-with-enabled-mode.html
* igt@kms_content_protection@atomic-dpms:
- shard-rkl: NOTRUN -> [SKIP][135] ([i915#7118] / [i915#9424])
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@atomic-dpms@pipe-a-dp-4:
- shard-dg2: NOTRUN -> [TIMEOUT][136] ([i915#7173])
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_content_protection@atomic-dpms@pipe-a-dp-4.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-tglu-1: NOTRUN -> [SKIP][137] ([i915#3116] / [i915#3299])
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-dg1: NOTRUN -> [SKIP][138] ([i915#3299]) +1 other test skip
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_content_protection@mei-interface:
- shard-dg2: NOTRUN -> [SKIP][139] ([i915#9424])
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-1/igt@kms_content_protection@mei-interface.html
* igt@kms_content_protection@type1:
- shard-dg1: NOTRUN -> [SKIP][140] ([i915#7116] / [i915#9424]) +1 other test skip
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-onscreen-512x170:
- shard-dg1: NOTRUN -> [SKIP][141] ([i915#13049]) +1 other test skip
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_cursor_crc@cursor-onscreen-512x170.html
* igt@kms_cursor_crc@cursor-random-32x32:
- shard-dg1: NOTRUN -> [SKIP][142] ([i915#3555]) +8 other tests skip
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_cursor_crc@cursor-random-32x32.html
* igt@kms_cursor_crc@cursor-random-512x170:
- shard-dg2: NOTRUN -> [SKIP][143] ([i915#13049]) +1 other test skip
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_cursor_crc@cursor-random-512x170.html
* igt@kms_cursor_crc@cursor-random-512x512:
- shard-rkl: NOTRUN -> [SKIP][144] ([i915#13049]) +1 other test skip
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_cursor_crc@cursor-random-512x512.html
* igt@kms_cursor_crc@cursor-rapid-movement-512x512:
- shard-tglu-1: NOTRUN -> [SKIP][145] ([i915#13049])
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy:
- shard-dg2: NOTRUN -> [SKIP][146] ([i915#13046] / [i915#5354]) +1 other test skip
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy.html
* igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic:
- shard-snb: [PASS][147] -> [SKIP][148]
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-snb5/igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic.html
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-snb5/igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- shard-tglu: NOTRUN -> [SKIP][149] ([i915#4103])
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-3/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size:
- shard-tglu-1: NOTRUN -> [SKIP][150] ([i915#4103]) +1 other test skip
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
* igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions:
- shard-mtlp: NOTRUN -> [SKIP][151] ([i915#9809])
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions.html
* igt@kms_cursor_legacy@cursora-vs-flipb-legacy:
- shard-rkl: NOTRUN -> [SKIP][152] +15 other tests skip
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_cursor_legacy@cursora-vs-flipb-legacy.html
* igt@kms_cursor_legacy@flip-vs-cursor-toggle:
- shard-mtlp: [PASS][153] -> [FAIL][154] ([i915#2346])
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-mtlp-1/igt@kms_cursor_legacy@flip-vs-cursor-toggle.html
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-7/igt@kms_cursor_legacy@flip-vs-cursor-toggle.html
* igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
- shard-dg2: NOTRUN -> [SKIP][155] ([i915#9067])
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-11/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
- shard-dg1: NOTRUN -> [SKIP][156] ([i915#4103] / [i915#4213])
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size:
- shard-rkl: NOTRUN -> [SKIP][157] ([i915#4103])
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-dg2: NOTRUN -> [SKIP][158] ([i915#4103] / [i915#4213])
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
* igt@kms_cursor_legacy@short-flip-before-cursor-toggle:
- shard-rkl: [PASS][159] -> [DMESG-WARN][160] ([i915#12964]) +6 other tests dmesg-warn
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-rkl-5/igt@kms_cursor_legacy@short-flip-before-cursor-toggle.html
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_cursor_legacy@short-flip-before-cursor-toggle.html
* igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
- shard-rkl: NOTRUN -> [SKIP][161] ([i915#9723])
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
* igt@kms_dirtyfb@fbc-dirtyfb-ioctl:
- shard-snb: NOTRUN -> [FAIL][162] ([i915#12170])
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-snb4/igt@kms_dirtyfb@fbc-dirtyfb-ioctl.html
* igt@kms_dirtyfb@fbc-dirtyfb-ioctl@a-hdmi-a-1:
- shard-snb: NOTRUN -> [FAIL][163] ([i915#11968])
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-snb4/igt@kms_dirtyfb@fbc-dirtyfb-ioctl@a-hdmi-a-1.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][164] ([i915#3804])
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-3/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2.html
* igt@kms_draw_crc@draw-method-mmap-wc:
- shard-dg1: NOTRUN -> [SKIP][165] ([i915#8812])
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_draw_crc@draw-method-mmap-wc.html
* igt@kms_dsc@dsc-fractional-bpp-with-bpc:
- shard-tglu: NOTRUN -> [SKIP][166] ([i915#3840])
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html
* igt@kms_dsc@dsc-with-bpc:
- shard-dg1: NOTRUN -> [SKIP][167] ([i915#3555] / [i915#3840])
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_dsc@dsc-with-bpc.html
* igt@kms_dsc@dsc-with-output-formats:
- shard-dg2: NOTRUN -> [SKIP][168] ([i915#3555] / [i915#3840])
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_dsc@dsc-with-output-formats.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc:
- shard-dg1: NOTRUN -> [SKIP][169] ([i915#3840] / [i915#9053])
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_dsc@dsc-with-output-formats-with-bpc.html
* igt@kms_fbcon_fbt@psr:
- shard-dg2: NOTRUN -> [SKIP][170] ([i915#3469])
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_fbcon_fbt@psr.html
* igt@kms_feature_discovery@chamelium:
- shard-dg1: NOTRUN -> [SKIP][171] ([i915#4854])
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_feature_discovery@chamelium.html
* igt@kms_feature_discovery@display-4x:
- shard-dg1: NOTRUN -> [SKIP][172] ([i915#1839])
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_feature_discovery@display-4x.html
* igt@kms_feature_discovery@psr1:
- shard-tglu-1: NOTRUN -> [SKIP][173] ([i915#658])
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_feature_discovery@psr1.html
* igt@kms_feature_discovery@psr2:
- shard-dg1: NOTRUN -> [SKIP][174] ([i915#658]) +1 other test skip
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_feature_discovery@psr2.html
* igt@kms_flip@2x-blocking-wf_vblank:
- shard-tglu: NOTRUN -> [SKIP][175] ([i915#3637]) +3 other tests skip
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_flip@2x-blocking-wf_vblank.html
* igt@kms_flip@2x-flip-vs-dpms:
- shard-rkl: NOTRUN -> [SKIP][176] ([i915#9934]) +7 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_flip@2x-flip-vs-dpms.html
* igt@kms_flip@2x-flip-vs-modeset-vs-hang:
- shard-dg1: NOTRUN -> [SKIP][177] ([i915#9934]) +5 other tests skip
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_flip@2x-flip-vs-modeset-vs-hang.html
* igt@kms_flip@2x-flip-vs-suspend:
- shard-mtlp: NOTRUN -> [SKIP][178] ([i915#3637]) +2 other tests skip
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_flip@2x-flip-vs-suspend.html
* igt@kms_flip@2x-plain-flip:
- shard-tglu-1: NOTRUN -> [SKIP][179] ([i915#3637]) +1 other test skip
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_flip@2x-plain-flip.html
* igt@kms_flip@2x-wf_vblank-ts-check:
- shard-dg2: NOTRUN -> [SKIP][180] ([i915#9934]) +1 other test skip
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_flip@2x-wf_vblank-ts-check.html
* igt@kms_flip@flip-vs-fences:
- shard-dg1: NOTRUN -> [SKIP][181] ([i915#8381])
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_flip@flip-vs-fences.html
* igt@kms_flip@flip-vs-fences-interruptible:
- shard-dg2: NOTRUN -> [SKIP][182] ([i915#8381])
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_flip@flip-vs-fences-interruptible.html
* igt@kms_flip@plain-flip-ts-check-interruptible:
- shard-mtlp: [PASS][183] -> [FAIL][184] ([i915#11989]) +1 other test fail
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-mtlp-8/igt@kms_flip@plain-flip-ts-check-interruptible.html
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-4/igt@kms_flip@plain-flip-ts-check-interruptible.html
* igt@kms_flip@plain-flip-ts-check-interruptible@a-hdmi-a1:
- shard-tglu-1: NOTRUN -> [FAIL][185] ([i915#11989]) +1 other test fail
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_flip@plain-flip-ts-check-interruptible@a-hdmi-a1.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling:
- shard-tglu: NOTRUN -> [SKIP][186] ([i915#2672] / [i915#3555]) +1 other test skip
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/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: NOTRUN -> [SKIP][187] ([i915#2587] / [i915#2672]) +1 other test skip
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling:
- shard-tglu-1: NOTRUN -> [SKIP][188] ([i915#2672] / [i915#3555])
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling@pipe-a-valid-mode:
- shard-tglu-1: NOTRUN -> [SKIP][189] ([i915#2587] / [i915#2672])
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling:
- shard-mtlp: NOTRUN -> [SKIP][190] ([i915#3555] / [i915#8810] / [i915#8813])
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-1/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode:
- shard-mtlp: NOTRUN -> [SKIP][191] ([i915#3555] / [i915#8810])
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-1/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-downscaling@pipe-a-valid-mode:
- shard-rkl: NOTRUN -> [SKIP][192] ([i915#2672]) +2 other tests skip
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling:
- shard-rkl: NOTRUN -> [SKIP][193] ([i915#2672] / [i915#3555]) +2 other tests skip
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling:
- shard-dg1: NOTRUN -> [SKIP][194] ([i915#2587] / [i915#2672] / [i915#3555])
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling:
- shard-dg1: NOTRUN -> [SKIP][195] ([i915#2672] / [i915#3555]) +2 other tests skip
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode:
- shard-dg1: NOTRUN -> [SKIP][196] ([i915#2587] / [i915#2672]) +3 other tests skip
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling:
- shard-dg2: NOTRUN -> [SKIP][197] ([i915#2672] / [i915#3555])
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-valid-mode:
- shard-dg2: NOTRUN -> [SKIP][198] ([i915#2672]) +2 other tests skip
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling:
- shard-dg2: NOTRUN -> [SKIP][199] ([i915#2672] / [i915#3555] / [i915#5190]) +1 other test skip
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-cpu:
- shard-dg2: [PASS][200] -> [FAIL][201] ([i915#6880])
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-cpu.html
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][202] ([i915#8708]) +3 other tests skip
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt:
- shard-dg2: NOTRUN -> [SKIP][203] ([i915#5354]) +10 other tests skip
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt:
- shard-mtlp: NOTRUN -> [SKIP][204] ([i915#1825]) +5 other tests skip
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc:
- shard-tglu-1: NOTRUN -> [SKIP][205] +25 other tests skip
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-pwrite:
- shard-dg2: NOTRUN -> [SKIP][206] ([i915#3458]) +6 other tests skip
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt:
- shard-tglu: NOTRUN -> [SKIP][207] +61 other tests skip
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-indfb-fliptrack-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][208] ([i915#8708]) +14 other tests skip
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_frontbuffer_tracking@fbcpsr-2p-indfb-fliptrack-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-render:
- shard-dg1: NOTRUN -> [SKIP][209] +43 other tests skip
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-rkl: NOTRUN -> [SKIP][210] ([i915#5439])
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt:
- shard-rkl: NOTRUN -> [SKIP][211] ([i915#3023]) +14 other tests skip
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-gtt:
- shard-glk: NOTRUN -> [SKIP][212] +97 other tests skip
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk9/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][213] ([i915#8708]) +4 other tests skip
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-render:
- shard-rkl: NOTRUN -> [SKIP][214] ([i915#1825]) +26 other tests skip
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-cpu:
- shard-dg1: NOTRUN -> [SKIP][215] ([i915#3458]) +22 other tests skip
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-cpu.html
* igt@kms_hdr@bpc-switch-dpms:
- shard-dg1: NOTRUN -> [SKIP][216] ([i915#3555] / [i915#8228])
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_hdr@bpc-switch-dpms.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-tglu: NOTRUN -> [SKIP][217] ([i915#3555] / [i915#8228]) +1 other test skip
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_hdr@bpc-switch-suspend.html
- shard-rkl: NOTRUN -> [SKIP][218] ([i915#3555] / [i915#8228])
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_hdr@brightness-with-hdr:
- shard-tglu: NOTRUN -> [SKIP][219] ([i915#12713])
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-3/igt@kms_hdr@brightness-with-hdr.html
* igt@kms_hdr@invalid-hdr:
- shard-dg2: NOTRUN -> [SKIP][220] ([i915#3555] / [i915#8228])
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_hdr@invalid-hdr.html
* igt@kms_hdr@static-toggle-dpms:
- shard-dg2: [PASS][221] -> [SKIP][222] ([i915#3555] / [i915#8228])
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-10/igt@kms_hdr@static-toggle-dpms.html
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-2/igt@kms_hdr@static-toggle-dpms.html
* igt@kms_hdr@static-toggle-suspend:
- shard-tglu-1: NOTRUN -> [SKIP][223] ([i915#3555] / [i915#8228])
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_hdr@static-toggle-suspend.html
* igt@kms_histogram@algo-color:
- shard-dg1: NOTRUN -> [SKIP][224] ([i915#13389]) +1 other test skip
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_histogram@algo-color.html
* igt@kms_histogram@global-color:
- shard-tglu: NOTRUN -> [SKIP][225] ([i915#13388])
[225]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@kms_histogram@global-color.html
* igt@kms_joiner@basic-big-joiner:
- shard-rkl: NOTRUN -> [SKIP][226] ([i915#10656])
[226]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_joiner@basic-big-joiner.html
* igt@kms_joiner@basic-force-ultra-joiner:
- shard-rkl: NOTRUN -> [SKIP][227] ([i915#12394])
[227]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_joiner@basic-force-ultra-joiner.html
* igt@kms_joiner@basic-ultra-joiner:
- shard-tglu-1: NOTRUN -> [SKIP][228] ([i915#12339])
[228]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_joiner@basic-ultra-joiner.html
- shard-dg1: NOTRUN -> [SKIP][229] ([i915#12339])
[229]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_joiner@basic-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-force-big-joiner:
- shard-dg1: NOTRUN -> [SKIP][230] ([i915#12388])
[230]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_joiner@invalid-modeset-force-big-joiner.html
* igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c:
- shard-mtlp: NOTRUN -> [SKIP][231] +5 other tests skip
[231]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c.html
* igt@kms_plane@plane-panning-bottom-right-suspend:
- shard-glk: NOTRUN -> [INCOMPLETE][232] ([i915#13026]) +1 other test incomplete
[232]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk9/igt@kms_plane@plane-panning-bottom-right-suspend.html
* igt@kms_plane_lowres@tiling-y@pipe-b-hdmi-a-1:
- shard-rkl: NOTRUN -> [DMESG-WARN][233] ([i915#12964]) +12 other tests dmesg-warn
[233]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_plane_lowres@tiling-y@pipe-b-hdmi-a-1.html
* igt@kms_plane_scaling@intel-max-src-size:
- shard-mtlp: NOTRUN -> [SKIP][234] ([i915#6953])
[234]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-1/igt@kms_plane_scaling@intel-max-src-size.html
- shard-rkl: NOTRUN -> [SKIP][235] ([i915#6953])
[235]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_plane_scaling@intel-max-src-size.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-a:
- shard-rkl: NOTRUN -> [SKIP][236] ([i915#12247]) +5 other tests skip
[236]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-a.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-rotation@pipe-c:
- shard-tglu: NOTRUN -> [SKIP][237] ([i915#12247]) +14 other tests skip
[237]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-rotation@pipe-c.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25:
- shard-dg1: NOTRUN -> [SKIP][238] ([i915#12247] / [i915#6953]) +1 other test skip
[238]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_plane_scaling@planes-downscale-factor-0-25.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-d:
- shard-tglu-1: NOTRUN -> [SKIP][239] ([i915#12247]) +4 other tests skip
[239]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-d.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25:
- shard-dg1: NOTRUN -> [SKIP][240] ([i915#12247] / [i915#3555])
[240]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-b:
- shard-dg1: NOTRUN -> [SKIP][241] ([i915#12247]) +21 other tests skip
[241]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-b.html
* igt@kms_pm_backlight@bad-brightness:
- shard-dg1: NOTRUN -> [SKIP][242] ([i915#5354])
[242]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_pm_backlight@bad-brightness.html
* igt@kms_pm_backlight@fade-with-suspend:
- shard-rkl: NOTRUN -> [SKIP][243] ([i915#5354])
[243]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@kms_pm_backlight@fade-with-suspend.html
* igt@kms_pm_dc@dc9-dpms:
- shard-tglu-1: NOTRUN -> [SKIP][244] ([i915#4281])
[244]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_pm_dc@dc9-dpms.html
* igt@kms_pm_lpsp@kms-lpsp:
- shard-rkl: NOTRUN -> [SKIP][245] ([i915#3828])
[245]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_pm_lpsp@kms-lpsp.html
* igt@kms_pm_lpsp@screens-disabled:
- shard-tglu: NOTRUN -> [SKIP][246] ([i915#8430])
[246]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_pm_lpsp@screens-disabled.html
* igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-rkl: [PASS][247] -> [SKIP][248] ([i915#9519]) +1 other test skip
[247]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-rkl-3/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
[248]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
* igt@kms_pm_rpm@fences:
- shard-dg1: NOTRUN -> [SKIP][249] ([i915#4077]) +9 other tests skip
[249]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_pm_rpm@fences.html
* igt@kms_pm_rpm@pm-caching:
- shard-mtlp: NOTRUN -> [SKIP][250] ([i915#4077])
[250]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_pm_rpm@pm-caching.html
* igt@kms_prime@basic-crc-hybrid:
- shard-tglu: NOTRUN -> [SKIP][251] ([i915#6524])
[251]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_prime@basic-crc-hybrid.html
* igt@kms_prime@basic-crc-vgem:
- shard-dg2: NOTRUN -> [SKIP][252] ([i915#6524] / [i915#6805])
[252]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_prime@basic-crc-vgem.html
* igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-sf:
- shard-snb: NOTRUN -> [SKIP][253] ([i915#11520]) +5 other tests skip
[253]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-snb4/igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-sf:
- shard-mtlp: NOTRUN -> [SKIP][254] ([i915#12316])
[254]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area:
- shard-tglu: NOTRUN -> [SKIP][255] ([i915#11520]) +3 other tests skip
[255]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area.html
* igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf:
- shard-rkl: NOTRUN -> [SKIP][256] ([i915#11520]) +7 other tests skip
[256]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf.html
* igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf:
- shard-glk: NOTRUN -> [SKIP][257] ([i915#11520]) +2 other tests skip
[257]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk9/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf:
- shard-tglu-1: NOTRUN -> [SKIP][258] ([i915#11520]) +4 other tests skip
[258]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf.html
- shard-dg1: NOTRUN -> [SKIP][259] ([i915#11520]) +6 other tests skip
[259]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-update-continuous-sf:
- shard-dg2: NOTRUN -> [SKIP][260] ([i915#11520]) +1 other test skip
[260]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_psr2_sf@psr2-overlay-plane-update-continuous-sf.html
* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-dg1: NOTRUN -> [SKIP][261] ([i915#9683])
[261]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_psr2_su@frontbuffer-xrgb8888.html
* igt@kms_psr@fbc-pr-sprite-mmap-cpu:
- shard-dg2: NOTRUN -> [SKIP][262] ([i915#1072] / [i915#9732]) +4 other tests skip
[262]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_psr@fbc-pr-sprite-mmap-cpu.html
* igt@kms_psr@fbc-psr-primary-mmap-gtt:
- shard-tglu-1: NOTRUN -> [SKIP][263] ([i915#9732]) +7 other tests skip
[263]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_psr@fbc-psr-primary-mmap-gtt.html
* igt@kms_psr@fbc-psr2-sprite-plane-move:
- shard-mtlp: NOTRUN -> [SKIP][264] ([i915#9688]) +5 other tests skip
[264]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-1/igt@kms_psr@fbc-psr2-sprite-plane-move.html
* igt@kms_psr@pr-dpms:
- shard-tglu: NOTRUN -> [SKIP][265] ([i915#9732]) +12 other tests skip
[265]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_psr@pr-dpms.html
* igt@kms_psr@psr-sprite-mmap-cpu:
- shard-dg1: NOTRUN -> [SKIP][266] ([i915#1072] / [i915#9732]) +20 other tests skip
[266]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@kms_psr@psr-sprite-mmap-cpu.html
* igt@kms_psr@psr2-suspend:
- shard-rkl: NOTRUN -> [SKIP][267] ([i915#1072] / [i915#9732]) +13 other tests skip
[267]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_psr@psr2-suspend.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-dg1: NOTRUN -> [SKIP][268] ([i915#9685]) +2 other tests skip
[268]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
* igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
- shard-dg2: NOTRUN -> [SKIP][269] ([i915#9685])
[269]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
* igt@kms_rotation_crc@primary-y-tiled-reflect-x-180:
- shard-dg2: NOTRUN -> [SKIP][270] ([i915#5190])
[270]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_rotation_crc@primary-y-tiled-reflect-x-180.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0:
- shard-rkl: NOTRUN -> [SKIP][271] ([i915#5289])
[271]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-4/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270:
- shard-tglu: NOTRUN -> [SKIP][272] ([i915#5289]) +1 other test skip
[272]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90:
- shard-dg1: NOTRUN -> [SKIP][273] ([i915#5289])
[273]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-18/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html
* igt@kms_setmode@clone-exclusive-crtc:
- shard-tglu-1: NOTRUN -> [SKIP][274] ([i915#3555]) +3 other tests skip
[274]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_setmode@clone-exclusive-crtc.html
* igt@kms_setmode@invalid-clone-exclusive-crtc:
- shard-rkl: NOTRUN -> [SKIP][275] ([i915#3555]) +3 other tests skip
[275]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_setmode@invalid-clone-exclusive-crtc.html
- shard-tglu: NOTRUN -> [SKIP][276] ([i915#3555])
[276]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_setmode@invalid-clone-exclusive-crtc.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-tglu: NOTRUN -> [SKIP][277] ([i915#8623])
[277]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_tv_load_detect@load-detect:
- shard-snb: NOTRUN -> [SKIP][278] +195 other tests skip
[278]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-snb4/igt@kms_tv_load_detect@load-detect.html
* igt@kms_vrr@lobf:
- shard-tglu-1: NOTRUN -> [SKIP][279] ([i915#11920])
[279]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-1/igt@kms_vrr@lobf.html
* igt@kms_vrr@seamless-rr-switch-drrs:
- shard-rkl: NOTRUN -> [SKIP][280] ([i915#9906])
[280]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_vrr@seamless-rr-switch-drrs.html
- shard-tglu: NOTRUN -> [SKIP][281] ([i915#9906]) +1 other test skip
[281]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@kms_vrr@seamless-rr-switch-drrs.html
* igt@kms_writeback@writeback-check-output:
- shard-dg2: NOTRUN -> [SKIP][282] ([i915#2437])
[282]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@kms_writeback@writeback-check-output.html
* igt@kms_writeback@writeback-invalid-parameters:
- shard-dg1: NOTRUN -> [SKIP][283] ([i915#2437]) +1 other test skip
[283]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@kms_writeback@writeback-invalid-parameters.html
* igt@perf_pmu@busy-double-start@vcs0:
- shard-dg2: [PASS][284] -> [FAIL][285] ([i915#4349])
[284]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-11/igt@perf_pmu@busy-double-start@vcs0.html
[285]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-5/igt@perf_pmu@busy-double-start@vcs0.html
* igt@perf_pmu@busy-double-start@vecs0:
- shard-mtlp: [PASS][286] -> [FAIL][287] ([i915#4349])
[286]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-mtlp-6/igt@perf_pmu@busy-double-start@vecs0.html
[287]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-4/igt@perf_pmu@busy-double-start@vecs0.html
* igt@perf_pmu@module-unload:
- shard-tglu: NOTRUN -> [ABORT][288] ([i915#13010])
[288]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-2/igt@perf_pmu@module-unload.html
- shard-glk: [PASS][289] -> [DMESG-WARN][290] ([i915#1982])
[289]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-glk8/igt@perf_pmu@module-unload.html
[290]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk1/igt@perf_pmu@module-unload.html
* igt@perf_pmu@rc6-all-gts:
- shard-dg1: NOTRUN -> [SKIP][291] ([i915#8516]) +1 other test skip
[291]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@perf_pmu@rc6-all-gts.html
* igt@prime_vgem@basic-fence-flip:
- shard-dg2: NOTRUN -> [SKIP][292] ([i915#3708])
[292]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-3/igt@prime_vgem@basic-fence-flip.html
* igt@prime_vgem@basic-fence-mmap:
- shard-dg1: NOTRUN -> [SKIP][293] ([i915#3708] / [i915#4077])
[293]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@prime_vgem@basic-fence-mmap.html
* igt@prime_vgem@fence-write-hang:
- shard-dg1: NOTRUN -> [SKIP][294] ([i915#3708]) +1 other test skip
[294]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@prime_vgem@fence-write-hang.html
* igt@sriov_basic@bind-unbind-vf@vf-4:
- shard-tglu: NOTRUN -> [FAIL][295] ([i915#12910]) +9 other tests fail
[295]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-5/igt@sriov_basic@bind-unbind-vf@vf-4.html
* igt@sriov_basic@enable-vfs-autoprobe-off:
- shard-dg1: NOTRUN -> [SKIP][296] ([i915#9917])
[296]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-12/igt@sriov_basic@enable-vfs-autoprobe-off.html
* igt@sriov_basic@enable-vfs-bind-unbind-each:
- shard-rkl: NOTRUN -> [SKIP][297] ([i915#9917])
[297]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@sriov_basic@enable-vfs-bind-unbind-each.html
* igt@sriov_basic@enable-vfs-bind-unbind-each@numvfs-4:
- shard-mtlp: NOTRUN -> [FAIL][298] ([i915#12910]) +8 other tests fail
[298]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@sriov_basic@enable-vfs-bind-unbind-each@numvfs-4.html
#### Possible fixes ####
* igt@gem_ccs@suspend-resume:
- shard-dg2: [INCOMPLETE][299] ([i915#7297]) -> [PASS][300]
[299]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-7/igt@gem_ccs@suspend-resume.html
[300]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-11/igt@gem_ccs@suspend-resume.html
* igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0:
- shard-dg2: [INCOMPLETE][301] ([i915#12392] / [i915#7297]) -> [PASS][302]
[301]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-7/igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0.html
[302]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-11/igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0.html
* igt@gem_eio@kms:
- shard-dg1: [FAIL][303] ([i915#5784]) -> [PASS][304]
[303]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg1-14/igt@gem_eio@kms.html
[304]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@gem_eio@kms.html
* igt@gem_exec_suspend@basic-s4-devices@lmem0:
- shard-dg1: [ABORT][305] ([i915#7975] / [i915#8213]) -> [PASS][306] +1 other test pass
[305]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg1-14/igt@gem_exec_suspend@basic-s4-devices@lmem0.html
[306]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-13/igt@gem_exec_suspend@basic-s4-devices@lmem0.html
* igt@gem_exec_whisper@basic-fds:
- shard-rkl: [DMESG-WARN][307] ([i915#12964]) -> [PASS][308] +2 other tests pass
[307]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-rkl-5/igt@gem_exec_whisper@basic-fds.html
[308]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-5/igt@gem_exec_whisper@basic-fds.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-tglu: [ABORT][309] ([i915#12817] / [i915#9820]) -> [PASS][310]
[309]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-tglu-5/igt@i915_module_load@reload-with-fault-injection.html
[310]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-3/igt@i915_module_load@reload-with-fault-injection.html
- shard-glk: [DMESG-WARN][311] ([i915#1982]) -> [PASS][312]
[311]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-glk6/igt@i915_module_load@reload-with-fault-injection.html
[312]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk3/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_pm_rc6_residency@rc6-idle@gt0-vcs0:
- shard-dg1: [FAIL][313] ([i915#3591]) -> [PASS][314] +1 other test pass
[313]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg1-14/igt@i915_pm_rc6_residency@rc6-idle@gt0-vcs0.html
[314]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@i915_pm_rc6_residency@rc6-idle@gt0-vcs0.html
* igt@kms_big_fb@x-tiled-32bpp-rotate-180:
- shard-mtlp: [FAIL][315] ([i915#5138]) -> [PASS][316]
[315]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-mtlp-7/igt@kms_big_fb@x-tiled-32bpp-rotate-180.html
[316]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-5/igt@kms_big_fb@x-tiled-32bpp-rotate-180.html
* igt@kms_flip@flip-vs-absolute-wf_vblank@a-hdmi-a1:
- shard-tglu: [FAIL][317] ([i915#11989]) -> [PASS][318] +1 other test pass
[317]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-tglu-4/igt@kms_flip@flip-vs-absolute-wf_vblank@a-hdmi-a1.html
[318]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-tglu-4/igt@kms_flip@flip-vs-absolute-wf_vblank@a-hdmi-a1.html
* igt@kms_flip@plain-flip-ts-check-interruptible:
- shard-rkl: [FAIL][319] ([i915#11989]) -> [PASS][320] +1 other test pass
[319]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-rkl-3/igt@kms_flip@plain-flip-ts-check-interruptible.html
[320]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-6/igt@kms_flip@plain-flip-ts-check-interruptible.html
* igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a2:
- shard-rkl: [FAIL][321] ([i915#11832] / [i915#11989]) -> [PASS][322]
[321]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-rkl-3/igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a2.html
[322]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-6/igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a2.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-dg2: [SKIP][323] ([i915#9519]) -> [PASS][324] +1 other test pass
[323]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-3/igt@kms_pm_rpm@dpms-lpsp.html
[324]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-8/igt@kms_pm_rpm@dpms-lpsp.html
* igt@kms_pm_rpm@dpms-mode-unset-lpsp:
- shard-rkl: [SKIP][325] ([i915#9519]) -> [PASS][326]
[325]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-rkl-1/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html
[326]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-2/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html
* igt@perf_pmu@module-unload:
- shard-mtlp: [INCOMPLETE][327] -> [PASS][328]
[327]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-mtlp-5/igt@perf_pmu@module-unload.html
[328]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-2/igt@perf_pmu@module-unload.html
* igt@sysfs_heartbeat_interval@nopreempt:
- shard-mtlp: [ABORT][329] ([i915#13193]) -> [PASS][330] +1 other test pass
[329]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-mtlp-4/igt@sysfs_heartbeat_interval@nopreempt.html
[330]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-mtlp-1/igt@sysfs_heartbeat_interval@nopreempt.html
#### Warnings ####
* igt@i915_module_load@reload-with-fault-injection:
- shard-dg2: [DMESG-WARN][331] ([i915#10887]) -> [ABORT][332] ([i915#10887] / [i915#9820])
[331]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-7/igt@i915_module_load@reload-with-fault-injection.html
[332]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-11/igt@i915_module_load@reload-with-fault-injection.html
* igt@kms_async_flips@async-flip-suspend-resume:
- shard-rkl: [INCOMPLETE][333] ([i915#12761]) -> [DMESG-FAIL][334] ([i915#12964]) +1 other test dmesg-fail
[333]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-rkl-5/igt@kms_async_flips@async-flip-suspend-resume.html
[334]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-rkl-1/igt@kms_async_flips@async-flip-suspend-resume.html
* igt@kms_async_flips@crc:
- shard-glk: [INCOMPLETE][335] ([i915#13287] / [i915#9878]) -> [INCOMPLETE][336] ([i915#9878])
[335]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-glk8/igt@kms_async_flips@crc.html
[336]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk1/igt@kms_async_flips@crc.html
* igt@kms_async_flips@crc-atomic:
- shard-glk: [INCOMPLETE][337] ([i915#13287]) -> [INCOMPLETE][338] ([i915#13287] / [i915#13423]) +1 other test incomplete
[337]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-glk2/igt@kms_async_flips@crc-atomic.html
[338]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk6/igt@kms_async_flips@crc-atomic.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180:
- shard-dg1: [SKIP][339] ([i915#4423] / [i915#4538] / [i915#5286]) -> [SKIP][340] ([i915#4538] / [i915#5286])
[339]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg1-12/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180.html
[340]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180.html
* igt@kms_content_protection@atomic-dpms:
- shard-dg2: [SKIP][341] ([i915#7118] / [i915#9424]) -> [TIMEOUT][342] ([i915#7173])
[341]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-6/igt@kms_content_protection@atomic-dpms.html
[342]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-10/igt@kms_content_protection@atomic-dpms.html
* igt@kms_cursor_crc@cursor-random-32x10:
- shard-dg1: [SKIP][343] ([i915#3555] / [i915#4423]) -> [SKIP][344] ([i915#3555])
[343]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg1-13/igt@kms_cursor_crc@cursor-random-32x10.html
[344]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_cursor_crc@cursor-random-32x10.html
* igt@kms_cursor_crc@cursor-rapid-movement-512x512:
- shard-dg1: [SKIP][345] ([i915#13049] / [i915#4423]) -> [SKIP][346] ([i915#13049])
[345]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg1-13/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html
[346]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu:
- shard-dg2: [SKIP][347] ([i915#3458]) -> [SKIP][348] ([i915#10433] / [i915#3458]) +1 other test skip
[347]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu.html
[348]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-blt:
- shard-dg2: [SKIP][349] ([i915#10433] / [i915#3458]) -> [SKIP][350] ([i915#3458]) +2 other tests skip
[349]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-blt.html
[350]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg2-1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-blt.html
* igt@kms_pipe_crc_basic@suspend-read-crc:
- shard-glk: [INCOMPLETE][351] ([i915#12756]) -> [INCOMPLETE][352] ([i915#12756] / [i915#13409])
[351]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-glk4/igt@kms_pipe_crc_basic@suspend-read-crc.html
[352]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-glk3/igt@kms_pipe_crc_basic@suspend-read-crc.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25:
- shard-dg1: [SKIP][353] ([i915#12247] / [i915#4423] / [i915#6953]) -> [SKIP][354] ([i915#12247] / [i915#6953])
[353]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg1-12/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25.html
[354]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-a:
- shard-dg1: [SKIP][355] ([i915#12247] / [i915#4423]) -> [SKIP][356] ([i915#12247])
[355]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15892/shard-dg1-12/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-a.html
[356]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/shard-dg1-17/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-a.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[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#10887]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10887
[i915#1099]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1099
[i915#11078]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11078
[i915#11520]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11520
[i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
[i915#11713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11713
[i915#11832]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11832
[i915#11920]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11920
[i915#11965]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11965
[i915#11968]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11968
[i915#11989]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11989
[i915#12170]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12170
[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#12339]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12339
[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#12455]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12455
[i915#12713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12713
[i915#12755]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12755
[i915#12756]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12756
[i915#12761]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12761
[i915#12797]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12797
[i915#12805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12805
[i915#12817]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12817
[i915#12910]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12910
[i915#12917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12917
[i915#12964]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12964
[i915#13010]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13010
[i915#13026]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13026
[i915#13046]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13046
[i915#13049]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13049
[i915#13179]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13179
[i915#13193]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13193
[i915#13263]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13263
[i915#13287]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13287
[i915#13388]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13388
[i915#13389]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13389
[i915#13391]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13391
[i915#13398]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13398
[i915#13409]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13409
[i915#13423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13423
[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#1982]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1982
[i915#2190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2190
[i915#2346]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2346
[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#2672]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2672
[i915#280]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/280
[i915#284]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/284
[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#3297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3299
[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#3591]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3591
[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#3804]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3804
[i915#3828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3828
[i915#3840]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3840
[i915#4036]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4036
[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#4387]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4387
[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#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#4880]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4880
[i915#4885]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4885
[i915#5107]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5107
[i915#5138]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5138
[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#5507]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5507
[i915#5784]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5784
[i915#5956]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5956
[i915#6095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6095
[i915#6301]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6301
[i915#6335]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6335
[i915#6344]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6344
[i915#6412]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6412
[i915#6524]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/658
[i915#6590]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6590
[i915#6621]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6621
[i915#6805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6805
[i915#6880]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6880
[i915#6953]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6953
[i915#7116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7116
[i915#7118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7118
[i915#7173]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7173
[i915#7213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7213
[i915#7297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7297
[i915#7387]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7387
[i915#7443]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7443
[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#7975]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7975
[i915#7984]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7984
[i915#8213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8213
[i915#8228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8228
[i915#8381]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8381
[i915#8411]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8411
[i915#8414]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8414
[i915#8428]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8428
[i915#8430]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8430
[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#8709]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8709
[i915#8806]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8806
[i915#8810]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8810
[i915#8812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8812
[i915#8813]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8813
[i915#8898]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8898
[i915#9053]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9053
[i915#9067]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9067
[i915#9323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9323
[i915#9424]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9424
[i915#9519]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9519
[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#9809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9809
[i915#9820]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9820
[i915#9878]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9878
[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_15892 -> Patchwork_143040v1
CI-20190529: 20190529
CI_DR
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_143040v1/index.html
[-- Attachment #2: Type: text/html, Size: 124356 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 4/4] drm/i915/display: convert global state to struct intel_display
2024-12-31 16:27 ` [PATCH 4/4] drm/i915/display: convert global state " Jani Nikula
@ 2024-12-31 19:55 ` Gustavo Sousa
0 siblings, 0 replies; 13+ messages in thread
From: Gustavo Sousa @ 2024-12-31 19:55 UTC (permalink / raw)
To: Jani Nikula, intel-gfx, intel-xe; +Cc: jani.nikula, ville.syrjala
Quoting Jani Nikula (2024-12-31 13:27:40-03:00)
>Going forward, struct intel_display is the main display device
>structure. Convert intel_global_state.[ch] to it.
>
>This allows us to make intel_pmdemand.c completely independent of
>i915_drv.h.
>
>Cc: Gustavo Sousa <gustavo.sousa@intel.com>
>Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
with git show -W --word-diff and trust in the compiler.
>---
> drivers/gpu/drm/i915/display/intel_bw.c | 3 +-
> drivers/gpu/drm/i915/display/intel_cdclk.c | 3 +-
> .../drm/i915/display/intel_display_driver.c | 4 +-
> .../gpu/drm/i915/display/intel_global_state.c | 42 +++++++++----------
> .../gpu/drm/i915/display/intel_global_state.h | 6 +--
> drivers/gpu/drm/i915/display/intel_pmdemand.c | 6 +--
> drivers/gpu/drm/i915/display/skl_watermark.c | 3 +-
> 7 files changed, 33 insertions(+), 34 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
>index 08e8a67ca74c..23edc81741de 100644
>--- a/drivers/gpu/drm/i915/display/intel_bw.c
>+++ b/drivers/gpu/drm/i915/display/intel_bw.c
>@@ -1447,13 +1447,14 @@ static const struct intel_global_state_funcs intel_bw_funcs = {
>
> int intel_bw_init(struct drm_i915_private *i915)
> {
>+ struct intel_display *display = &i915->display;
> struct intel_bw_state *state;
>
> state = kzalloc(sizeof(*state), GFP_KERNEL);
> if (!state)
> return -ENOMEM;
>
>- intel_atomic_global_obj_init(i915, &i915->display.bw.obj,
>+ intel_atomic_global_obj_init(display, &display->bw.obj,
> &state->base, &intel_bw_funcs);
>
> /*
>diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c
>index 3506e576bf6b..c7a603589412 100644
>--- a/drivers/gpu/drm/i915/display/intel_cdclk.c
>+++ b/drivers/gpu/drm/i915/display/intel_cdclk.c
>@@ -3217,14 +3217,13 @@ int intel_cdclk_state_set_joined_mbus(struct intel_atomic_state *state, bool joi
>
> int intel_cdclk_init(struct intel_display *display)
> {
>- struct drm_i915_private *dev_priv = to_i915(display->drm);
> struct intel_cdclk_state *cdclk_state;
>
> cdclk_state = kzalloc(sizeof(*cdclk_state), GFP_KERNEL);
> if (!cdclk_state)
> return -ENOMEM;
>
>- intel_atomic_global_obj_init(dev_priv, &display->cdclk.obj,
>+ intel_atomic_global_obj_init(display, &display->cdclk.obj,
> &cdclk_state->base, &intel_cdclk_funcs);
>
> return 0;
>diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
>index c4cfb0406fa2..1aa0b298c278 100644
>--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
>+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
>@@ -163,9 +163,7 @@ static void intel_mode_config_init(struct intel_display *display)
>
> static void intel_mode_config_cleanup(struct intel_display *display)
> {
>- struct drm_i915_private *i915 = to_i915(display->drm);
>-
>- intel_atomic_global_obj_cleanup(i915);
>+ intel_atomic_global_obj_cleanup(display);
> drm_mode_config_cleanup(display->drm);
> }
>
>diff --git a/drivers/gpu/drm/i915/display/intel_global_state.c b/drivers/gpu/drm/i915/display/intel_global_state.c
>index cbcd1e91b7be..8a49e2bb37fa 100644
>--- a/drivers/gpu/drm/i915/display/intel_global_state.c
>+++ b/drivers/gpu/drm/i915/display/intel_global_state.c
>@@ -75,7 +75,7 @@ intel_atomic_global_state_get(struct intel_global_state *obj_state)
> return obj_state;
> }
>
>-void intel_atomic_global_obj_init(struct drm_i915_private *dev_priv,
>+void intel_atomic_global_obj_init(struct intel_display *display,
> struct intel_global_obj *obj,
> struct intel_global_state *state,
> const struct intel_global_state_funcs *funcs)
>@@ -88,26 +88,26 @@ void intel_atomic_global_obj_init(struct drm_i915_private *dev_priv,
>
> obj->state = state;
> obj->funcs = funcs;
>- list_add_tail(&obj->head, &dev_priv->display.global.obj_list);
>+ list_add_tail(&obj->head, &display->global.obj_list);
> }
>
>-void intel_atomic_global_obj_cleanup(struct drm_i915_private *dev_priv)
>+void intel_atomic_global_obj_cleanup(struct intel_display *display)
> {
> struct intel_global_obj *obj, *next;
>
>- list_for_each_entry_safe(obj, next, &dev_priv->display.global.obj_list, head) {
>+ list_for_each_entry_safe(obj, next, &display->global.obj_list, head) {
> list_del(&obj->head);
>
>- drm_WARN_ON(&dev_priv->drm, kref_read(&obj->state->ref) != 1);
>+ drm_WARN_ON(display->drm, kref_read(&obj->state->ref) != 1);
> intel_atomic_global_state_put(obj->state);
> }
> }
>
>-static void assert_global_state_write_locked(struct drm_i915_private *dev_priv)
>+static void assert_global_state_write_locked(struct intel_display *display)
> {
> struct intel_crtc *crtc;
>
>- for_each_intel_crtc(&dev_priv->drm, crtc)
>+ for_each_intel_crtc(display->drm, crtc)
> drm_modeset_lock_assert_held(&crtc->base.mutex);
> }
>
>@@ -126,23 +126,23 @@ static bool modeset_lock_is_held(struct drm_modeset_acquire_ctx *ctx,
>
> static void assert_global_state_read_locked(struct intel_atomic_state *state)
> {
>+ struct intel_display *display = to_intel_display(state);
> struct drm_modeset_acquire_ctx *ctx = state->base.acquire_ctx;
>- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
> struct intel_crtc *crtc;
>
>- for_each_intel_crtc(&dev_priv->drm, crtc) {
>+ for_each_intel_crtc(display->drm, crtc) {
> if (modeset_lock_is_held(ctx, &crtc->base.mutex))
> return;
> }
>
>- drm_WARN(&dev_priv->drm, 1, "Global state not read locked\n");
>+ drm_WARN(display->drm, 1, "Global state not read locked\n");
> }
>
> struct intel_global_state *
> intel_atomic_get_global_obj_state(struct intel_atomic_state *state,
> struct intel_global_obj *obj)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> int index, num_objs, i;
> size_t size;
> struct __intel_global_objs_state *arr;
>@@ -184,7 +184,7 @@ intel_atomic_get_global_obj_state(struct intel_atomic_state *state,
>
> state->num_global_objs = num_objs;
>
>- drm_dbg_atomic(&i915->drm, "Added new global object %p state %p to %p\n",
>+ drm_dbg_atomic(display->drm, "Added new global object %p state %p to %p\n",
> obj, obj_state, state);
>
> return obj_state;
>@@ -218,14 +218,14 @@ intel_atomic_get_new_global_obj_state(struct intel_atomic_state *state,
>
> void intel_atomic_swap_global_state(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> struct intel_global_state *old_obj_state, *new_obj_state;
> struct intel_global_obj *obj;
> int i;
>
> for_each_oldnew_global_obj_in_state(state, obj, old_obj_state,
> new_obj_state, i) {
>- drm_WARN_ON(&dev_priv->drm, obj->state != old_obj_state);
>+ drm_WARN_ON(display->drm, obj->state != old_obj_state);
>
> /*
> * If the new state wasn't modified (and properly
>@@ -234,7 +234,7 @@ void intel_atomic_swap_global_state(struct intel_atomic_state *state)
> if (!new_obj_state->changed)
> continue;
>
>- assert_global_state_write_locked(dev_priv);
>+ assert_global_state_write_locked(display);
>
> old_obj_state->state = state;
> new_obj_state->state = NULL;
>@@ -265,10 +265,10 @@ void intel_atomic_clear_global_state(struct intel_atomic_state *state)
> int intel_atomic_lock_global_state(struct intel_global_state *obj_state)
> {
> struct intel_atomic_state *state = obj_state->state;
>- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> struct intel_crtc *crtc;
>
>- for_each_intel_crtc(&dev_priv->drm, crtc) {
>+ for_each_intel_crtc(display->drm, crtc) {
> int ret;
>
> ret = drm_modeset_lock(&crtc->base.mutex,
>@@ -298,10 +298,10 @@ int intel_atomic_serialize_global_state(struct intel_global_state *obj_state)
> bool
> intel_atomic_global_state_is_serialized(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> struct intel_crtc *crtc;
>
>- for_each_intel_crtc(&i915->drm, crtc)
>+ for_each_intel_crtc(display->drm, crtc)
> if (!intel_atomic_get_new_crtc_state(state, crtc))
> return false;
> return true;
>@@ -344,7 +344,7 @@ intel_atomic_global_state_setup_commit(struct intel_atomic_state *state)
> int
> intel_atomic_global_state_wait_for_dependencies(struct intel_atomic_state *state)
> {
>- struct drm_i915_private *i915 = to_i915(state->base.dev);
>+ struct intel_display *display = to_intel_display(state);
> const struct intel_global_state *old_obj_state;
> struct intel_global_obj *obj;
> int i;
>@@ -358,7 +358,7 @@ intel_atomic_global_state_wait_for_dependencies(struct intel_atomic_state *state
>
> ret = wait_for_completion_timeout(&commit->done, 10 * HZ);
> if (ret == 0) {
>- drm_err(&i915->drm, "global state timed out\n");
>+ drm_err(display->drm, "global state timed out\n");
> return -ETIMEDOUT;
> }
> }
>diff --git a/drivers/gpu/drm/i915/display/intel_global_state.h b/drivers/gpu/drm/i915/display/intel_global_state.h
>index 6506a8e32972..d42fb2547ee9 100644
>--- a/drivers/gpu/drm/i915/display/intel_global_state.h
>+++ b/drivers/gpu/drm/i915/display/intel_global_state.h
>@@ -9,8 +9,8 @@
> #include <linux/kref.h>
> #include <linux/list.h>
>
>-struct drm_i915_private;
> struct intel_atomic_state;
>+struct intel_display;
> struct intel_global_obj;
> struct intel_global_state;
>
>@@ -69,11 +69,11 @@ struct __intel_global_objs_state {
> struct intel_global_state *state, *old_state, *new_state;
> };
>
>-void intel_atomic_global_obj_init(struct drm_i915_private *dev_priv,
>+void intel_atomic_global_obj_init(struct intel_display *display,
> struct intel_global_obj *obj,
> struct intel_global_state *state,
> const struct intel_global_state_funcs *funcs);
>-void intel_atomic_global_obj_cleanup(struct drm_i915_private *dev_priv);
>+void intel_atomic_global_obj_cleanup(struct intel_display *display);
>
> struct intel_global_state *
> intel_atomic_get_global_obj_state(struct intel_atomic_state *state,
>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>index 9373cf2885ab..975520322136 100644
>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>@@ -5,14 +5,15 @@
>
> #include <linux/bitops.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_de.h"
> #include "intel_display_trace.h"
> #include "intel_pmdemand.h"
>+#include "intel_step.h"
> #include "skl_watermark.h"
>
> struct pmdemand_params {
>@@ -115,14 +116,13 @@ intel_atomic_get_new_pmdemand_state(struct intel_atomic_state *state)
>
> int intel_pmdemand_init(struct intel_display *display)
> {
>- struct drm_i915_private *i915 = to_i915(display->drm);
> struct intel_pmdemand_state *pmdemand_state;
>
> pmdemand_state = kzalloc(sizeof(*pmdemand_state), GFP_KERNEL);
> if (!pmdemand_state)
> return -ENOMEM;
>
>- intel_atomic_global_obj_init(i915, &display->pmdemand.obj,
>+ intel_atomic_global_obj_init(display, &display->pmdemand.obj,
> &pmdemand_state->base,
> &intel_pmdemand_funcs);
>
>diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
>index 29e8ea91c858..5e6f2afe3cfe 100644
>--- a/drivers/gpu/drm/i915/display/skl_watermark.c
>+++ b/drivers/gpu/drm/i915/display/skl_watermark.c
>@@ -3326,13 +3326,14 @@ intel_atomic_get_dbuf_state(struct intel_atomic_state *state)
>
> int intel_dbuf_init(struct drm_i915_private *i915)
> {
>+ struct intel_display *display = &i915->display;
> struct intel_dbuf_state *dbuf_state;
>
> dbuf_state = kzalloc(sizeof(*dbuf_state), GFP_KERNEL);
> if (!dbuf_state)
> return -ENOMEM;
>
>- intel_atomic_global_obj_init(i915, &i915->display.dbuf.obj,
>+ intel_atomic_global_obj_init(display, &display->dbuf.obj,
> &dbuf_state->base, &intel_dbuf_funcs);
>
> return 0;
>--
>2.39.5
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/4] drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function
2024-12-31 19:11 ` Gustavo Sousa
@ 2025-01-07 17:43 ` Jani Nikula
0 siblings, 0 replies; 13+ messages in thread
From: Jani Nikula @ 2025-01-07 17:43 UTC (permalink / raw)
To: Gustavo Sousa, intel-gfx, intel-xe; +Cc: ville.syrjala
On Tue, 31 Dec 2024, Gustavo Sousa <gustavo.sousa@intel.com> wrote:
> Quoting Jani Nikula (2024-12-31 13:27:37-03:00)
>>In preparation for making struct intel_pmdemand_state an opaque type,
>>convert to_intel_pmdemand_state() to a function.
>>
>>Cc: Gustavo Sousa <gustavo.sousa@intel.com>
>>Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>
> This looks good to me, so
>
> Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
>
> , but I'm also taking this opportunity to reply to your comment below.
Thanks. I opted to merge this series as-is, with the idea that we can
make further improvements on top.
BR,
Jani.
>
>>
>>---
>>
>>This is the simplest change. There could be other alternatives.
>>
>>Outside of intel_pmdemand.c, this is only used to convert
>>display.pmdemand.obj.state to struct intel_pmdemand_state *. Maybe we
>>could just pass the global object or state pointer instead? Or we could
>>have a function to get the current state from, say, struct
>>intel_display? What we currently have is a bit cumbersome.
>
> I like the idea of the exposed interface receiving only pointers to the
> generic types and that we make the necessary conversion internally.
>
> We currently are only using to_intel_pmdemand_state() to be able to pass
> the correct argument to other functions exposed by the pmdemand header.
> Not sure there is much benefit in doing that except for some level of
> compile-time type-safety?
>
> So, I would generally say:
>
> - For functions that can operate directly on the display.*.obj member
> (e.g. hardware state readout), we just ask for the display struct
> pointer as a parameter.
>
> - For functions that potentially add the global state to the atomic
> state, we also ask for the pointer to the atomic state.
>
> - For functions that operate only on the state bits and that could be
> called for a state instance that could either be the current one (or
> old) or some new state during a commit, we ask for a pointer to the
> intel_global_state struct.
>
> --
> Gustavo Sousa
>
>>---
>> drivers/gpu/drm/i915/display/intel_pmdemand.c | 5 +++++
>> drivers/gpu/drm/i915/display/intel_pmdemand.h | 3 +--
>> 2 files changed, 6 insertions(+), 2 deletions(-)
>>
>>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.c b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>>index cdd314956a31..69b40b3735b3 100644
>>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.c
>>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.c
>>@@ -15,6 +15,11 @@
>> #include "intel_pmdemand.h"
>> #include "skl_watermark.h"
>>
>>+struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state)
>>+{
>>+ return container_of(obj_state, struct intel_pmdemand_state, base);
>>+}
>>+
>> static struct intel_global_state *
>> intel_pmdemand_duplicate_state(struct intel_global_obj *obj)
>> {
>>diff --git a/drivers/gpu/drm/i915/display/intel_pmdemand.h b/drivers/gpu/drm/i915/display/intel_pmdemand.h
>>index a1c49efdc493..89296364ec3b 100644
>>--- a/drivers/gpu/drm/i915/display/intel_pmdemand.h
>>+++ b/drivers/gpu/drm/i915/display/intel_pmdemand.h
>>@@ -43,8 +43,7 @@ struct intel_pmdemand_state {
>> struct pmdemand_params params;
>> };
>>
>>-#define to_intel_pmdemand_state(global_state) \
>>- container_of_const((global_state), struct intel_pmdemand_state, base)
>>+struct intel_pmdemand_state *to_intel_pmdemand_state(struct intel_global_state *obj_state);
>>
>> void intel_pmdemand_init_early(struct drm_i915_private *i915);
>> int intel_pmdemand_init(struct drm_i915_private *i915);
>>--
>>2.39.5
>>
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2025-01-07 17:44 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-31 16:27 [PATCH 0/4] drm/i915/pmdemand: cleanups Jani Nikula
2024-12-31 16:27 ` [PATCH 1/4] drm/i915/pmdemand: convert to_intel_pmdemand_state() to a function Jani Nikula
2024-12-31 19:11 ` Gustavo Sousa
2025-01-07 17:43 ` Jani Nikula
2024-12-31 16:27 ` [PATCH 2/4] drm/i915/pmdemand: make struct intel_pmdemand_state opaque Jani Nikula
2024-12-31 19:31 ` Gustavo Sousa
2024-12-31 16:27 ` [PATCH 3/4] drm/i915/pmdemand: convert to struct intel_display Jani Nikula
2024-12-31 19:39 ` Gustavo Sousa
2024-12-31 16:27 ` [PATCH 4/4] drm/i915/display: convert global state " Jani Nikula
2024-12-31 19:55 ` Gustavo Sousa
2024-12-31 17:05 ` ✗ Fi.CI.SPARSE: warning for drm/i915/pmdemand: cleanups Patchwork
2024-12-31 17:16 ` ✓ i915.CI.BAT: success " Patchwork
2024-12-31 19:42 ` ✗ i915.CI.Full: failure " Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox