* [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles
@ 2025-01-10 23:21 Vinay Belgaumkar
2025-01-11 0:04 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev2) Patchwork
` (7 more replies)
0 siblings, 8 replies; 13+ messages in thread
From: Vinay Belgaumkar @ 2025-01-10 23:21 UTC (permalink / raw)
To: intel-gfx, dri-devel
Cc: Vinay Belgaumkar, Sushma Venkatesh Reddy, Rodrigo Vivi
Default SLPC power profile is Base(0). Power Saving mode(1)
has conservative up/down thresholds and is suitable for use with
apps that typically need to be power efficient.
Selected power profile will be displayed in this format-
$ cat slpc_power_profile
[base] power_saving
$ echo power_saving > slpc_power_profile
$ cat slpc_power_profile
base [power_saving]
v2: Disable waitboost in power saving profile and updated sysfs
format and add some kernel doc for SLPC (Rodrigo)
Cc: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
---
drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 47 +++++++++++++++
drivers/gpu/drm/i915/gt/intel_rps.c | 4 ++
.../drm/i915/gt/uc/abi/guc_actions_slpc_abi.h | 5 ++
drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 60 +++++++++++++++++++
drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h | 1 +
.../gpu/drm/i915/gt/uc/intel_guc_slpc_types.h | 3 +
6 files changed, 120 insertions(+)
diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
index d7784650e4d9..83a7cc7dfbc8 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
+++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
@@ -464,6 +464,45 @@ static ssize_t slpc_ignore_eff_freq_store(struct kobject *kobj,
return err ?: count;
}
+static ssize_t slpc_power_profile_show(struct kobject *kobj,
+ struct kobj_attribute *attr,
+ char *buff)
+{
+ struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
+ struct intel_guc_slpc *slpc = >->uc.guc.slpc;
+
+ switch (slpc->power_profile) {
+ case SLPC_POWER_PROFILES_BASE:
+ return sysfs_emit(buff, "[%s] %s\n", "base", "power_saving");
+ case SLPC_POWER_PROFILES_POWER_SAVING:
+ return sysfs_emit(buff, "%s [%s]\n", "base", "power_saving");
+ }
+
+ return sysfs_emit(buff, "%u\n", slpc->power_profile);
+}
+
+static ssize_t slpc_power_profile_store(struct kobject *kobj,
+ struct kobj_attribute *attr,
+ const char *buff, size_t count)
+{
+ struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
+ struct intel_guc_slpc *slpc = >->uc.guc.slpc;
+ char power_saving[] = "power_saving";
+ char base[] = "base";
+ int err;
+ u32 val;
+
+ if (!strncmp(buff, power_saving, sizeof(power_saving) - 1))
+ val = SLPC_POWER_PROFILES_POWER_SAVING;
+ else if (!strncmp(buff, base, sizeof(base) - 1))
+ val = SLPC_POWER_PROFILES_BASE;
+ else
+ return -EINVAL;
+
+ err = intel_guc_slpc_set_power_profile(slpc, val);
+ return err ?: count;
+}
+
struct intel_gt_bool_throttle_attr {
struct attribute attr;
ssize_t (*show)(struct kobject *kobj, struct kobj_attribute *attr,
@@ -668,6 +707,7 @@ INTEL_GT_ATTR_RO(media_RP0_freq_mhz);
INTEL_GT_ATTR_RO(media_RPn_freq_mhz);
INTEL_GT_ATTR_RW(slpc_ignore_eff_freq);
+INTEL_GT_ATTR_RW(slpc_power_profile);
static const struct attribute *media_perf_power_attrs[] = {
&attr_media_freq_factor.attr,
@@ -864,6 +904,13 @@ void intel_gt_sysfs_pm_init(struct intel_gt *gt, struct kobject *kobj)
gt_warn(gt, "failed to create ignore_eff_freq sysfs (%pe)", ERR_PTR(ret));
}
+ if (intel_uc_uses_guc_slpc(>->uc)) {
+ ret = sysfs_create_file(kobj, &attr_slpc_power_profile.attr);
+ if (ret)
+ gt_warn(gt, "failed to create slpc_power_profile sysfs (%pe)",
+ ERR_PTR(ret));
+ }
+
if (i915_mmio_reg_valid(intel_gt_perf_limit_reasons_reg(gt))) {
ret = sysfs_create_files(kobj, throttle_reason_attrs);
if (ret)
diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
index fa304ea088e4..2cfaedb04876 100644
--- a/drivers/gpu/drm/i915/gt/intel_rps.c
+++ b/drivers/gpu/drm/i915/gt/intel_rps.c
@@ -1025,6 +1025,10 @@ void intel_rps_boost(struct i915_request *rq)
if (rps_uses_slpc(rps)) {
slpc = rps_to_slpc(rps);
+ /* Waitboost should not be done with power saving profile */
+ if (slpc->power_profile == SLPC_POWER_PROFILES_POWER_SAVING)
+ return;
+
if (slpc->min_freq_softlimit >= slpc->boost_freq)
return;
diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
index c34674e797c6..6de87ae5669e 100644
--- a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
+++ b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
@@ -228,6 +228,11 @@ struct slpc_optimized_strategies {
#define SLPC_OPTIMIZED_STRATEGY_COMPUTE REG_BIT(0)
+enum slpc_power_profiles {
+ SLPC_POWER_PROFILES_BASE = 0x0,
+ SLPC_POWER_PROFILES_POWER_SAVING = 0x1
+};
+
/**
* DOC: SLPC H2G MESSAGE FORMAT
*
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
index 706fffca698b..bee78467d4a3 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
@@ -15,6 +15,29 @@
#include "gt/intel_gt_regs.h"
#include "gt/intel_rps.h"
+/**
+ * DOC: SLPC - Dynamic Frequency management
+ *
+ * Single Loop Power Control is a GuC based algorithm which manages
+ * GT frequency based on how KMD initializes its parameters. SLPC is
+ * almost completely in control after initialization except for the
+ * waitboost scenario.
+ *
+ * KMD uses concept of waitboost to ramp frequency up to RP0 when
+ * there are pending submissions. The addition of power profiles adds
+ * another level of control to these mechanisms. When we choose the power
+ * saving profile, SLPC will use conservative thresholds to ramp frequency,
+ * thus saving power. KMD will disable waitboosts when this happens to aid
+ * further power savings. The user has some level of control through sysfs
+ * where min/max frequencies can be altered and the use of efficient freq
+ * can be modified as well.
+ *
+ * Another form of frequency control happens through per context hints.
+ * A context can be marked as low latency during creation. That will ensure
+ * that SLPC uses an aggressive frequency ramp when that context is active.
+ *
+ */
+
static inline struct intel_guc *slpc_to_guc(struct intel_guc_slpc *slpc)
{
return container_of(slpc, struct intel_guc, slpc);
@@ -265,6 +288,8 @@ int intel_guc_slpc_init(struct intel_guc_slpc *slpc)
slpc->num_boosts = 0;
slpc->media_ratio_mode = SLPC_MEDIA_RATIO_MODE_DYNAMIC_CONTROL;
+ slpc->power_profile = SLPC_POWER_PROFILES_BASE;
+
mutex_init(&slpc->lock);
INIT_WORK(&slpc->boost_work, slpc_boost_work);
@@ -567,6 +592,34 @@ int intel_guc_slpc_set_media_ratio_mode(struct intel_guc_slpc *slpc, u32 val)
return ret;
}
+int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val)
+{
+ struct drm_i915_private *i915 = slpc_to_i915(slpc);
+ intel_wakeref_t wakeref;
+ int ret = 0;
+
+ if (val > SLPC_POWER_PROFILES_POWER_SAVING)
+ return -EINVAL;
+
+ mutex_lock(&slpc->lock);
+ wakeref = intel_runtime_pm_get(&i915->runtime_pm);
+
+ ret = slpc_set_param(slpc,
+ SLPC_PARAM_POWER_PROFILE,
+ val);
+ if (ret)
+ guc_err(slpc_to_guc(slpc),
+ "Failed to set power profile to %d: %pe\n",
+ val, ERR_PTR(ret));
+ else
+ slpc->power_profile = val;
+
+ intel_runtime_pm_put(&i915->runtime_pm, wakeref);
+ mutex_unlock(&slpc->lock);
+
+ return ret;
+}
+
void intel_guc_pm_intrmsk_enable(struct intel_gt *gt)
{
u32 pm_intrmsk_mbz = 0;
@@ -728,6 +781,13 @@ int intel_guc_slpc_enable(struct intel_guc_slpc *slpc)
/* Enable SLPC Optimized Strategy for compute */
intel_guc_slpc_set_strategy(slpc, SLPC_OPTIMIZED_STRATEGY_COMPUTE);
+ /* Set cached value of power_profile */
+ ret = intel_guc_slpc_set_power_profile(slpc, slpc->power_profile);
+ if (unlikely(ret)) {
+ guc_probe_error(guc, "Failed to set SLPC power profile: %pe\n", ERR_PTR(ret));
+ return ret;
+ }
+
return 0;
}
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
index 1cb5fd44f05c..fc9f761b4372 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
@@ -46,5 +46,6 @@ void intel_guc_slpc_boost(struct intel_guc_slpc *slpc);
void intel_guc_slpc_dec_waiters(struct intel_guc_slpc *slpc);
int intel_guc_slpc_set_ignore_eff_freq(struct intel_guc_slpc *slpc, bool val);
int intel_guc_slpc_set_strategy(struct intel_guc_slpc *slpc, u32 val);
+int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val);
#endif
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
index a88651331497..83673b10ac4e 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
@@ -33,6 +33,9 @@ struct intel_guc_slpc {
u32 max_freq_softlimit;
bool ignore_eff_freq;
+ /* Base or power saving */
+ u32 power_profile;
+
/* cached media ratio mode */
u32 media_ratio_mode;
--
2.38.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev2)
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
@ 2025-01-11 0:04 ` Patchwork
2025-01-11 0:04 ` ✗ Fi.CI.SPARSE: " Patchwork
` (6 subsequent siblings)
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-01-11 0:04 UTC (permalink / raw)
To: Vinay Belgaumkar; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/slpc: Add sysfs for SLPC power profiles (rev2)
URL : https://patchwork.freedesktop.org/series/142685/
State : warning
== Summary ==
Error: dim checkpatch failed
b5a1c5aaa50a drm/i915/slpc: Add sysfs for SLPC power profiles
-:94: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#94: FILE: drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c:911:
+ gt_warn(gt, "failed to create slpc_power_profile sysfs (%pe)",
+ ERR_PTR(ret));
total: 0 errors, 0 warnings, 1 checks, 185 lines checked
^ permalink raw reply [flat|nested] 13+ messages in thread
* ✗ Fi.CI.SPARSE: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev2)
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
2025-01-11 0:04 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev2) Patchwork
@ 2025-01-11 0:04 ` Patchwork
2025-01-11 0:29 ` ✗ i915.CI.BAT: failure " Patchwork
` (5 subsequent siblings)
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-01-11 0:04 UTC (permalink / raw)
To: Vinay Belgaumkar; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/slpc: Add sysfs for SLPC power profiles (rev2)
URL : https://patchwork.freedesktop.org/series/142685/
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: failure for drm/i915/slpc: Add sysfs for SLPC power profiles (rev2)
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
2025-01-11 0:04 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev2) Patchwork
2025-01-11 0:04 ` ✗ Fi.CI.SPARSE: " Patchwork
@ 2025-01-11 0:29 ` Patchwork
2025-01-16 2:24 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev3) Patchwork
` (4 subsequent siblings)
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-01-11 0:29 UTC (permalink / raw)
To: Vinay Belgaumkar; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 4931 bytes --]
== Series Details ==
Series: drm/i915/slpc: Add sysfs for SLPC power profiles (rev2)
URL : https://patchwork.freedesktop.org/series/142685/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_15942 -> Patchwork_142685v2
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_142685v2 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_142685v2, 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.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/index.html
Participating hosts (38 -> 36)
------------------------------
Missing (2): fi-snb-2520m fi-pnv-d510
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_142685v2:
### IGT changes ###
#### Possible regressions ####
* igt@kms_cursor_legacy@basic-flip-before-cursor-varying-size:
- fi-cfl-8109u: [PASS][1] -> [DMESG-WARN][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15942/fi-cfl-8109u/igt@kms_cursor_legacy@basic-flip-before-cursor-varying-size.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/fi-cfl-8109u/igt@kms_cursor_legacy@basic-flip-before-cursor-varying-size.html
Known issues
------------
Here are the changes found in Patchwork_142685v2 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_pm_rpm@module-reload:
- bat-dg1-7: [PASS][3] -> [FAIL][4] ([i915#13401])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15942/bat-dg1-7/igt@i915_pm_rpm@module-reload.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/bat-dg1-7/igt@i915_pm_rpm@module-reload.html
- bat-dg2-11: [PASS][5] -> [FAIL][6] ([i915#13401])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15942/bat-dg2-11/igt@i915_pm_rpm@module-reload.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/bat-dg2-11/igt@i915_pm_rpm@module-reload.html
* igt@i915_selftest@live:
- bat-mtlp-6: [PASS][7] -> [DMESG-FAIL][8] ([i915#13393]) +1 other test dmesg-fail
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15942/bat-mtlp-6/igt@i915_selftest@live.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/bat-mtlp-6/igt@i915_selftest@live.html
- bat-arlh-3: [PASS][9] -> [DMESG-FAIL][10] ([i915#12435] / [i915#13393])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15942/bat-arlh-3/igt@i915_selftest@live.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/bat-arlh-3/igt@i915_selftest@live.html
* igt@i915_selftest@live@workarounds:
- bat-arlh-3: [PASS][11] -> [DMESG-FAIL][12] ([i915#13393])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15942/bat-arlh-3/igt@i915_selftest@live@workarounds.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/bat-arlh-3/igt@i915_selftest@live@workarounds.html
* igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence:
- bat-dg2-11: [PASS][13] -> [SKIP][14] ([i915#9197]) +2 other tests skip
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15942/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html
#### Possible fixes ####
* igt@i915_selftest@live@execlists:
- bat-arlh-2: [INCOMPLETE][15] ([i915#13050]) -> [PASS][16] +1 other test pass
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15942/bat-arlh-2/igt@i915_selftest@live@execlists.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/bat-arlh-2/igt@i915_selftest@live@execlists.html
[i915#12435]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12435
[i915#13050]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13050
[i915#13393]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13393
[i915#13401]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13401
[i915#9197]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9197
Build changes
-------------
* Linux: CI_DRM_15942 -> Patchwork_142685v2
CI-20190529: 20190529
CI_DRM_15942: 00f4619246294b1de4bac42742cfef95c1f37fde @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_8186: 2c6b2f0ed4075aa1ac3d341d612e41343cff4e4d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_142685v2: 00f4619246294b1de4bac42742cfef95c1f37fde @ git://anongit.freedesktop.org/gfx-ci/linux
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v2/index.html
[-- Attachment #2: Type: text/html, Size: 5900 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev3)
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
` (2 preceding siblings ...)
2025-01-11 0:29 ` ✗ i915.CI.BAT: failure " Patchwork
@ 2025-01-16 2:24 ` Patchwork
2025-01-16 2:24 ` ✗ Fi.CI.SPARSE: " Patchwork
` (3 subsequent siblings)
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-01-16 2:24 UTC (permalink / raw)
To: Belgaumkar, Vinay; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/slpc: Add sysfs for SLPC power profiles (rev3)
URL : https://patchwork.freedesktop.org/series/142685/
State : warning
== Summary ==
Error: dim checkpatch failed
f19a6796f4c4 drm/i915/slpc: Add sysfs for SLPC power profiles
-:94: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#94: FILE: drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c:911:
+ gt_warn(gt, "failed to create slpc_power_profile sysfs (%pe)",
+ ERR_PTR(ret));
total: 0 errors, 0 warnings, 1 checks, 185 lines checked
^ permalink raw reply [flat|nested] 13+ messages in thread
* ✗ Fi.CI.SPARSE: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev3)
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
` (3 preceding siblings ...)
2025-01-16 2:24 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev3) Patchwork
@ 2025-01-16 2:24 ` Patchwork
2025-01-16 2:49 ` ✓ i915.CI.BAT: success " Patchwork
` (2 subsequent siblings)
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-01-16 2:24 UTC (permalink / raw)
To: Belgaumkar, Vinay; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/slpc: Add sysfs for SLPC power profiles (rev3)
URL : https://patchwork.freedesktop.org/series/142685/
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/slpc: Add sysfs for SLPC power profiles (rev3)
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
` (4 preceding siblings ...)
2025-01-16 2:24 ` ✗ Fi.CI.SPARSE: " Patchwork
@ 2025-01-16 2:49 ` Patchwork
2025-01-16 6:44 ` ✓ i915.CI.Full: " Patchwork
2025-01-16 22:57 ` [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Rodrigo Vivi
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-01-16 2:49 UTC (permalink / raw)
To: Belgaumkar, Vinay; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 3854 bytes --]
== Series Details ==
Series: drm/i915/slpc: Add sysfs for SLPC power profiles (rev3)
URL : https://patchwork.freedesktop.org/series/142685/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_15964 -> Patchwork_142685v3
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/index.html
Participating hosts (42 -> 41)
------------------------------
Missing (1): fi-snb-2520m
New tests
---------
New tests have been introduced between CI_DRM_15964 and Patchwork_142685v3:
### New IGT tests (4) ###
* igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-7:
- Statuses : 1 pass(s)
- Exec time: [0.86] s
* igt@kms_pipe_crc_basic@nonblocking-crc@pipe-c-dp-7:
- Statuses : 1 pass(s)
- Exec time: [0.86] s
* igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-c-dp-7:
- Statuses : 1 pass(s)
- Exec time: [0.79] s
* igt@kms_pipe_crc_basic@read-crc@pipe-c-dp-7:
- Statuses : 1 pass(s)
- Exec time: [0.78] s
Known issues
------------
Here are the changes found in Patchwork_142685v3 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@dmabuf@all-tests:
- bat-apl-1: [PASS][1] -> [INCOMPLETE][2] ([i915#12904]) +1 other test incomplete
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/bat-apl-1/igt@dmabuf@all-tests.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/bat-apl-1/igt@dmabuf@all-tests.html
* igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence:
- bat-dg2-11: [PASS][3] -> [SKIP][4] ([i915#9197]) +2 other tests skip
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html
#### Possible fixes ####
* igt@i915_selftest@live:
- bat-apl-1: [DMESG-FAIL][5] -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/bat-apl-1/igt@i915_selftest@live.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/bat-apl-1/igt@i915_selftest@live.html
* igt@i915_selftest@live@active:
- bat-apl-1: [DMESG-FAIL][7] ([i915#12435]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/bat-apl-1/igt@i915_selftest@live@active.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/bat-apl-1/igt@i915_selftest@live@active.html
* igt@i915_selftest@live@workarounds:
- bat-arls-5: [DMESG-FAIL][9] ([i915#13393]) -> [PASS][10] +1 other test pass
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/bat-arls-5/igt@i915_selftest@live@workarounds.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/bat-arls-5/igt@i915_selftest@live@workarounds.html
[i915#12435]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12435
[i915#12904]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12904
[i915#13393]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13393
[i915#9197]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9197
Build changes
-------------
* Linux: CI_DRM_15964 -> Patchwork_142685v3
CI-20190529: 20190529
CI_DRM_15964: 4cea1f90028925afcf1a0f8a0ef301f90349688c @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_8192: a3b85ce819b99284bef57aafc7d44f50a62e097f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_142685v3: 4cea1f90028925afcf1a0f8a0ef301f90349688c @ git://anongit.freedesktop.org/gfx-ci/linux
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/index.html
[-- Attachment #2: Type: text/html, Size: 4698 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* ✓ i915.CI.Full: success for drm/i915/slpc: Add sysfs for SLPC power profiles (rev3)
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
` (5 preceding siblings ...)
2025-01-16 2:49 ` ✓ i915.CI.BAT: success " Patchwork
@ 2025-01-16 6:44 ` Patchwork
2025-01-16 22:57 ` [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Rodrigo Vivi
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-01-16 6:44 UTC (permalink / raw)
To: Belgaumkar, Vinay; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 100053 bytes --]
== Series Details ==
Series: drm/i915/slpc: Add sysfs for SLPC power profiles (rev3)
URL : https://patchwork.freedesktop.org/series/142685/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_15964_full -> Patchwork_142685v3_full
====================================================
Summary
-------
**WARNING**
Minor unknown changes coming with Patchwork_142685v3_full need to be verified
manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_142685v3_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (12 -> 12)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_142685v3_full:
### IGT changes ###
#### Warnings ####
* igt@gem_tiled_swapping@non-threaded:
- shard-rkl: [FAIL][1] ([i915#12941]) -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-rkl-6/igt@gem_tiled_swapping@non-threaded.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-4/igt@gem_tiled_swapping@non-threaded.html
Known issues
------------
Here are the changes found in Patchwork_142685v3_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@blit-reloc-purge-cache:
- shard-dg1: NOTRUN -> [SKIP][3] ([i915#8411])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@api_intel_bb@blit-reloc-purge-cache.html
- shard-dg2: NOTRUN -> [SKIP][4] ([i915#8411])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@api_intel_bb@blit-reloc-purge-cache.html
* igt@api_intel_bb@crc32:
- shard-tglu-1: NOTRUN -> [SKIP][5] ([i915#6230])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@api_intel_bb@crc32.html
* igt@api_intel_bb@object-reloc-keep-cache:
- shard-rkl: NOTRUN -> [SKIP][6] ([i915#8411])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@api_intel_bb@object-reloc-keep-cache.html
* igt@device_reset@unbind-reset-rebind:
- shard-dg1: NOTRUN -> [ABORT][7] ([i915#11814] / [i915#11815] / [i915#9413])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-14/igt@device_reset@unbind-reset-rebind.html
* igt@drm_fdinfo@busy-idle@vcs1:
- shard-dg1: NOTRUN -> [SKIP][8] ([i915#8414]) +11 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@drm_fdinfo@busy-idle@vcs1.html
* igt@drm_fdinfo@most-busy-check-all@bcs0:
- shard-dg2: NOTRUN -> [SKIP][9] ([i915#8414]) +15 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@drm_fdinfo@most-busy-check-all@bcs0.html
* igt@gem_ccs@ctrl-surf-copy:
- shard-tglu: NOTRUN -> [SKIP][10] ([i915#3555] / [i915#9323])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@gem_ccs@ctrl-surf-copy.html
- shard-rkl: NOTRUN -> [SKIP][11] ([i915#3555] / [i915#9323])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@gem_ccs@ctrl-surf-copy.html
* igt@gem_ccs@ctrl-surf-copy-new-ctx:
- shard-tglu: NOTRUN -> [SKIP][12] ([i915#9323])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@gem_ccs@ctrl-surf-copy-new-ctx.html
* igt@gem_ccs@large-ctrl-surf-copy:
- shard-dg1: NOTRUN -> [SKIP][13] ([i915#13008])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_ccs@large-ctrl-surf-copy.html
* igt@gem_ccs@suspend-resume:
- shard-rkl: NOTRUN -> [SKIP][14] ([i915#9323])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@gem_ccs@suspend-resume.html
* igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0:
- shard-dg2: [PASS][15] -> [INCOMPLETE][16] ([i915#12392] / [i915#7297])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-3/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0.html
* igt@gem_create@create-ext-set-pat:
- shard-dg2: NOTRUN -> [SKIP][17] ([i915#8562])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gem_create@create-ext-set-pat.html
* igt@gem_ctx_persistence@heartbeat-hostile:
- shard-dg2: NOTRUN -> [SKIP][18] ([i915#8555]) +2 other tests skip
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gem_ctx_persistence@heartbeat-hostile.html
* igt@gem_ctx_persistence@heartbeat-many:
- shard-dg1: NOTRUN -> [SKIP][19] ([i915#8555]) +1 other test skip
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@gem_ctx_persistence@heartbeat-many.html
* igt@gem_ctx_persistence@smoketest:
- shard-snb: NOTRUN -> [SKIP][20] ([i915#1099]) +3 other tests skip
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb2/igt@gem_ctx_persistence@smoketest.html
* igt@gem_eio@reset-stress:
- shard-dg2: [PASS][21] -> [FAIL][22] ([i915#12543] / [i915#5784])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-8/igt@gem_eio@reset-stress.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-4/igt@gem_eio@reset-stress.html
* igt@gem_exec_balancer@hog:
- shard-dg2: NOTRUN -> [SKIP][23] ([i915#4812])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gem_exec_balancer@hog.html
* igt@gem_exec_balancer@parallel-keep-submit-fence:
- shard-rkl: NOTRUN -> [SKIP][24] ([i915#4525]) +1 other test skip
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@gem_exec_balancer@parallel-keep-submit-fence.html
- shard-tglu: NOTRUN -> [SKIP][25] ([i915#4525]) +1 other test skip
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@gem_exec_balancer@parallel-keep-submit-fence.html
* igt@gem_exec_balancer@parallel-out-fence:
- shard-tglu-1: NOTRUN -> [SKIP][26] ([i915#4525]) +1 other test skip
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@gem_exec_balancer@parallel-out-fence.html
* igt@gem_exec_capture@capture-invisible:
- shard-dg2: NOTRUN -> [SKIP][27] ([i915#6334]) +2 other tests skip
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gem_exec_capture@capture-invisible.html
- shard-dg1: NOTRUN -> [SKIP][28] ([i915#6334]) +2 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_exec_capture@capture-invisible.html
* igt@gem_exec_capture@capture-recoverable:
- shard-tglu-1: NOTRUN -> [SKIP][29] ([i915#6344])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@gem_exec_capture@capture-recoverable.html
* igt@gem_exec_endless@dispatch@ccs0:
- shard-dg2: [PASS][30] -> [TIMEOUT][31] ([i915#3778] / [i915#7016]) +1 other test timeout
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-2/igt@gem_exec_endless@dispatch@ccs0.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@gem_exec_endless@dispatch@ccs0.html
* igt@gem_exec_fence@submit3:
- shard-dg1: NOTRUN -> [SKIP][32] ([i915#4812])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_exec_fence@submit3.html
* igt@gem_exec_flush@basic-uc-prw-default:
- shard-dg2: NOTRUN -> [SKIP][33] ([i915#3539])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@gem_exec_flush@basic-uc-prw-default.html
* igt@gem_exec_flush@basic-wb-pro-default:
- shard-dg1: NOTRUN -> [SKIP][34] ([i915#3539] / [i915#4852])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-18/igt@gem_exec_flush@basic-wb-pro-default.html
* igt@gem_exec_flush@basic-wb-ro-before-default:
- shard-dg2: NOTRUN -> [SKIP][35] ([i915#3539] / [i915#4852]) +1 other test skip
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@gem_exec_flush@basic-wb-ro-before-default.html
* igt@gem_exec_reloc@basic-cpu-gtt-noreloc:
- shard-dg2: NOTRUN -> [SKIP][36] ([i915#3281]) +10 other tests skip
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@gem_exec_reloc@basic-cpu-gtt-noreloc.html
* igt@gem_exec_reloc@basic-gtt-read-noreloc:
- shard-rkl: NOTRUN -> [SKIP][37] ([i915#3281]) +4 other tests skip
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@gem_exec_reloc@basic-gtt-read-noreloc.html
* igt@gem_exec_reloc@basic-scanout:
- shard-dg1: NOTRUN -> [SKIP][38] ([i915#3281]) +13 other tests skip
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_exec_reloc@basic-scanout.html
* igt@gem_exec_schedule@preempt-queue:
- shard-dg2: NOTRUN -> [SKIP][39] ([i915#4537] / [i915#4812])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@gem_exec_schedule@preempt-queue.html
* igt@gem_exec_suspend@basic-s0:
- shard-dg2: [PASS][40] -> [INCOMPLETE][41] ([i915#11441] / [i915#13304])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-2/igt@gem_exec_suspend@basic-s0.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-2/igt@gem_exec_suspend@basic-s0.html
* igt@gem_exec_suspend@basic-s0@lmem0:
- shard-dg2: [PASS][42] -> [INCOMPLETE][43] ([i915#11441])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-2/igt@gem_exec_suspend@basic-s0@lmem0.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-2/igt@gem_exec_suspend@basic-s0@lmem0.html
* igt@gem_exec_suspend@basic-s3-devices:
- shard-dg1: [PASS][44] -> [DMESG-WARN][45] ([i915#4423]) +4 other tests dmesg-warn
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-13/igt@gem_exec_suspend@basic-s3-devices.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@gem_exec_suspend@basic-s3-devices.html
* igt@gem_fenced_exec_thrash@no-spare-fences:
- shard-dg1: NOTRUN -> [SKIP][46] ([i915#4860]) +1 other test skip
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_fenced_exec_thrash@no-spare-fences.html
- shard-dg2: NOTRUN -> [SKIP][47] ([i915#4860])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gem_fenced_exec_thrash@no-spare-fences.html
* igt@gem_lmem_swapping@heavy-verify-multi:
- shard-rkl: NOTRUN -> [SKIP][48] ([i915#4613]) +1 other test skip
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@gem_lmem_swapping@heavy-verify-multi.html
* igt@gem_lmem_swapping@heavy-verify-random:
- shard-tglu-1: NOTRUN -> [SKIP][49] ([i915#4613]) +1 other test skip
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@gem_lmem_swapping@heavy-verify-random.html
* igt@gem_lmem_swapping@heavy-verify-random-ccs:
- shard-glk: NOTRUN -> [SKIP][50] ([i915#4613])
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk4/igt@gem_lmem_swapping@heavy-verify-random-ccs.html
* igt@gem_lmem_swapping@smem-oom:
- shard-mtlp: NOTRUN -> [SKIP][51] ([i915#4613])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@gem_lmem_swapping@smem-oom.html
* igt@gem_media_fill@media-fill:
- shard-dg2: NOTRUN -> [SKIP][52] ([i915#8289])
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@gem_media_fill@media-fill.html
* igt@gem_media_vme:
- shard-tglu-1: NOTRUN -> [SKIP][53] ([i915#284])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@gem_media_vme.html
* igt@gem_mmap_gtt@basic-small-bo:
- shard-dg2: NOTRUN -> [SKIP][54] ([i915#4077]) +11 other tests skip
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@gem_mmap_gtt@basic-small-bo.html
* igt@gem_mmap_gtt@medium-copy:
- shard-dg1: NOTRUN -> [SKIP][55] ([i915#4077]) +5 other tests skip
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@gem_mmap_gtt@medium-copy.html
* igt@gem_mmap_offset@clear-via-pagefault:
- shard-mtlp: [PASS][56] -> [ABORT][57] ([i915#10729]) +1 other test abort
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-mtlp-6/igt@gem_mmap_offset@clear-via-pagefault.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-8/igt@gem_mmap_offset@clear-via-pagefault.html
* igt@gem_mmap_wc@read-write-distinct:
- shard-dg1: NOTRUN -> [SKIP][58] ([i915#4083]) +5 other tests skip
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_mmap_wc@read-write-distinct.html
* igt@gem_mmap_wc@write-wc-read-gtt:
- shard-dg2: NOTRUN -> [SKIP][59] ([i915#4083]) +4 other tests skip
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@gem_mmap_wc@write-wc-read-gtt.html
* igt@gem_partial_pwrite_pread@reads:
- shard-rkl: NOTRUN -> [SKIP][60] ([i915#3282]) +2 other tests skip
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@gem_partial_pwrite_pread@reads.html
* igt@gem_pread@exhaustion:
- shard-snb: NOTRUN -> [WARN][61] ([i915#2658]) +1 other test warn
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb4/igt@gem_pread@exhaustion.html
* igt@gem_pread@snoop:
- shard-dg2: NOTRUN -> [SKIP][62] ([i915#3282]) +3 other tests skip
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gem_pread@snoop.html
* igt@gem_pwrite@basic-self:
- shard-dg1: NOTRUN -> [SKIP][63] ([i915#3282]) +1 other test skip
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_pwrite@basic-self.html
* igt@gem_pxp@create-regular-buffer:
- shard-dg2: NOTRUN -> [SKIP][64] ([i915#4270]) +2 other tests skip
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@gem_pxp@create-regular-buffer.html
* igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted:
- shard-rkl: NOTRUN -> [TIMEOUT][65] ([i915#12964])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted.html
* igt@gem_pxp@hw-rejects-pxp-buffer:
- shard-rkl: NOTRUN -> [TIMEOUT][66] ([i915#12917] / [i915#12964])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@gem_pxp@hw-rejects-pxp-buffer.html
- shard-tglu-1: NOTRUN -> [SKIP][67] ([i915#13398])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@gem_pxp@hw-rejects-pxp-buffer.html
* igt@gem_readwrite@read-write:
- shard-mtlp: NOTRUN -> [SKIP][68] ([i915#3282])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@gem_readwrite@read-write.html
* igt@gem_render_copy@y-tiled-ccs-to-y-tiled:
- shard-dg2: NOTRUN -> [SKIP][69] ([i915#5190] / [i915#8428]) +5 other tests skip
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@gem_render_copy@y-tiled-ccs-to-y-tiled.html
* igt@gem_set_tiling_vs_blt@tiled-to-tiled:
- shard-dg2: NOTRUN -> [SKIP][70] ([i915#4079]) +1 other test skip
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gem_set_tiling_vs_blt@tiled-to-tiled.html
* igt@gem_softpin@evict-snoop-interruptible:
- shard-dg1: NOTRUN -> [SKIP][71] ([i915#4885])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_softpin@evict-snoop-interruptible.html
* igt@gem_userptr_blits@coherency-sync:
- shard-dg2: NOTRUN -> [SKIP][72] ([i915#3297]) +3 other tests skip
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@gem_userptr_blits@coherency-sync.html
- shard-tglu: NOTRUN -> [SKIP][73] ([i915#3297])
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@gem_userptr_blits@coherency-sync.html
* igt@gem_userptr_blits@coherency-unsync:
- shard-tglu-1: NOTRUN -> [SKIP][74] ([i915#3297]) +1 other test skip
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@gem_userptr_blits@coherency-unsync.html
* igt@gem_userptr_blits@create-destroy-unsync:
- shard-dg1: NOTRUN -> [SKIP][75] ([i915#3297])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_userptr_blits@create-destroy-unsync.html
* igt@gem_userptr_blits@map-fixed-invalidate:
- shard-mtlp: NOTRUN -> [SKIP][76] ([i915#3297])
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@gem_userptr_blits@map-fixed-invalidate.html
* igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy:
- shard-dg2: NOTRUN -> [SKIP][77] ([i915#3297] / [i915#4880])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
* igt@gem_userptr_blits@relocations:
- shard-dg1: NOTRUN -> [SKIP][78] ([i915#3281] / [i915#3297])
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_userptr_blits@relocations.html
* igt@gen9_exec_parse@allowed-single:
- shard-dg2: NOTRUN -> [SKIP][79] ([i915#2856]) +3 other tests skip
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gen9_exec_parse@allowed-single.html
* igt@gen9_exec_parse@batch-invalid-length:
- shard-rkl: NOTRUN -> [SKIP][80] ([i915#2527]) +2 other tests skip
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@gen9_exec_parse@batch-invalid-length.html
* igt@gen9_exec_parse@bb-secure:
- shard-tglu-1: NOTRUN -> [SKIP][81] ([i915#2527] / [i915#2856]) +1 other test skip
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@gen9_exec_parse@bb-secure.html
* igt@gen9_exec_parse@bb-start-out:
- shard-dg1: NOTRUN -> [SKIP][82] ([i915#2527]) +1 other test skip
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@gen9_exec_parse@bb-start-out.html
* igt@gen9_exec_parse@unaligned-jump:
- shard-tglu: NOTRUN -> [SKIP][83] ([i915#2527] / [i915#2856]) +1 other test skip
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@gen9_exec_parse@unaligned-jump.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-glk: [PASS][84] -> [ABORT][85] ([i915#9820])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-glk6/igt@i915_module_load@reload-with-fault-injection.html
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk5/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_module_load@resize-bar:
- shard-rkl: NOTRUN -> [SKIP][86] ([i915#6412])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@i915_module_load@resize-bar.html
* igt@i915_pm_freq_api@freq-reset:
- shard-tglu-1: NOTRUN -> [SKIP][87] ([i915#8399])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@i915_pm_freq_api@freq-reset.html
* igt@i915_pm_rc6_residency@rc6-idle:
- shard-tglu: NOTRUN -> [WARN][88] ([i915#2681]) +4 other tests warn
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@i915_pm_rc6_residency@rc6-idle.html
* igt@i915_pm_rc6_residency@rc6-idle@gt0-vcs0:
- shard-dg1: [PASS][89] -> [FAIL][90] ([i915#3591]) +1 other test fail
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-17/igt@i915_pm_rc6_residency@rc6-idle@gt0-vcs0.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-14/igt@i915_pm_rc6_residency@rc6-idle@gt0-vcs0.html
* igt@i915_pm_rc6_residency@rc6-idle@gt0-vecs0:
- shard-dg1: [PASS][91] -> [FAIL][92] ([i915#12739] / [i915#3591])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-17/igt@i915_pm_rc6_residency@rc6-idle@gt0-vecs0.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-14/igt@i915_pm_rc6_residency@rc6-idle@gt0-vecs0.html
* igt@i915_pm_rpm@gem-evict-pwrite:
- shard-mtlp: NOTRUN -> [SKIP][93] ([i915#4077]) +1 other test skip
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@i915_pm_rpm@gem-evict-pwrite.html
* igt@i915_pm_rpm@system-suspend-execbuf:
- shard-glk: [PASS][94] -> [INCOMPLETE][95] ([i915#12797])
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-glk4/igt@i915_pm_rpm@system-suspend-execbuf.html
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk9/igt@i915_pm_rpm@system-suspend-execbuf.html
* igt@i915_pm_rps@thresholds-idle:
- shard-dg2: NOTRUN -> [SKIP][96] ([i915#11681])
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@i915_pm_rps@thresholds-idle.html
* igt@i915_pm_rps@thresholds-idle-park:
- shard-dg1: NOTRUN -> [SKIP][97] ([i915#11681])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@i915_pm_rps@thresholds-idle-park.html
* igt@i915_query@hwconfig_table:
- shard-tglu-1: NOTRUN -> [SKIP][98] ([i915#6245])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@i915_query@hwconfig_table.html
- shard-dg1: NOTRUN -> [SKIP][99] ([i915#6245])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-14/igt@i915_query@hwconfig_table.html
* igt@i915_selftest@mock:
- shard-snb: NOTRUN -> [DMESG-WARN][100] ([i915#9311]) +1 other test dmesg-warn
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb2/igt@i915_selftest@mock.html
* igt@i915_suspend@basic-s3-without-i915:
- shard-tglu-1: NOTRUN -> [INCOMPLETE][101] ([i915#7443])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@i915_suspend@basic-s3-without-i915.html
* igt@i915_suspend@debugfs-reader:
- shard-glk: [PASS][102] -> [INCOMPLETE][103] ([i915#4817])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-glk9/igt@i915_suspend@debugfs-reader.html
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk6/igt@i915_suspend@debugfs-reader.html
* igt@kms_addfb_basic@basic-x-tiled-legacy:
- shard-dg2: NOTRUN -> [SKIP][104] ([i915#4212]) +3 other tests skip
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_addfb_basic@basic-x-tiled-legacy.html
* igt@kms_addfb_basic@basic-y-tiled-legacy:
- shard-dg1: NOTRUN -> [SKIP][105] ([i915#4215])
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_addfb_basic@basic-y-tiled-legacy.html
- shard-dg2: NOTRUN -> [SKIP][106] ([i915#4215] / [i915#5190])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_addfb_basic@basic-y-tiled-legacy.html
* igt@kms_addfb_basic@bo-too-small-due-to-tiling:
- shard-dg1: NOTRUN -> [SKIP][107] ([i915#4212]) +1 other test skip
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_addfb_basic@bo-too-small-due-to-tiling.html
* igt@kms_addfb_basic@invalid-smem-bo-on-discrete:
- shard-tglu-1: NOTRUN -> [SKIP][108] ([i915#12454] / [i915#12712])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html
* igt@kms_async_flips@async-flip-with-page-flip-events-atomic@pipe-a-hdmi-a-1-y-rc-ccs:
- shard-rkl: NOTRUN -> [SKIP][109] ([i915#8709]) +3 other tests skip
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-2/igt@kms_async_flips@async-flip-with-page-flip-events-atomic@pipe-a-hdmi-a-1-y-rc-ccs.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-3-y-rc-ccs:
- shard-dg1: NOTRUN -> [SKIP][110] ([i915#8709]) +7 other tests skip
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-12/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-3-y-rc-ccs.html
* igt@kms_atomic_transition@modeset-transition-nonblocking-fencing:
- shard-glk: [PASS][111] -> [FAIL][112] ([i915#12238])
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-glk2/igt@kms_atomic_transition@modeset-transition-nonblocking-fencing.html
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk8/igt@kms_atomic_transition@modeset-transition-nonblocking-fencing.html
* igt@kms_atomic_transition@modeset-transition-nonblocking-fencing@2x-outputs:
- shard-glk: [PASS][113] -> [FAIL][114] ([i915#11859])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-glk2/igt@kms_atomic_transition@modeset-transition-nonblocking-fencing@2x-outputs.html
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk8/igt@kms_atomic_transition@modeset-transition-nonblocking-fencing@2x-outputs.html
* igt@kms_atomic_transition@plane-all-modeset-transition:
- shard-dg1: [PASS][115] -> [FAIL][116] ([i915#5956])
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-18/igt@kms_atomic_transition@plane-all-modeset-transition.html
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-12/igt@kms_atomic_transition@plane-all-modeset-transition.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
- shard-snb: NOTRUN -> [SKIP][117] ([i915#1769])
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb2/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
* igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
- shard-rkl: NOTRUN -> [SKIP][118] ([i915#1769] / [i915#3555])
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html
- shard-tglu: NOTRUN -> [SKIP][119] ([i915#1769] / [i915#3555])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/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-dg1: NOTRUN -> [FAIL][120] ([i915#5956])
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-12/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-3.html
* igt@kms_atomic_transition@plane-toggle-modeset-transition:
- shard-dg2: [PASS][121] -> [FAIL][122] ([i915#5956]) +1 other test fail
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-5/igt@kms_atomic_transition@plane-toggle-modeset-transition.html
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-2/igt@kms_atomic_transition@plane-toggle-modeset-transition.html
* igt@kms_big_fb@4-tiled-16bpp-rotate-0:
- shard-dg1: NOTRUN -> [SKIP][123] ([i915#4538] / [i915#5286]) +3 other tests skip
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_big_fb@4-tiled-16bpp-rotate-0.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-tglu-1: NOTRUN -> [SKIP][124] ([i915#5286]) +3 other tests skip
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-tglu: NOTRUN -> [SKIP][125] ([i915#5286]) +2 other tests skip
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-mtlp: [PASS][126] -> [DMESG-FAIL][127] ([i915#13314])
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-mtlp-1/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-6/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip:
- shard-rkl: NOTRUN -> [SKIP][128] ([i915#5286]) +4 other tests skip
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html
* igt@kms_big_fb@linear-64bpp-rotate-90:
- shard-rkl: NOTRUN -> [SKIP][129] ([i915#3638]) +1 other test skip
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@kms_big_fb@linear-64bpp-rotate-90.html
* igt@kms_big_fb@x-tiled-32bpp-rotate-270:
- shard-dg2: NOTRUN -> [SKIP][130] +14 other tests skip
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html
* igt@kms_big_fb@y-tiled-64bpp-rotate-90:
- shard-dg1: NOTRUN -> [SKIP][131] ([i915#3638]) +2 other tests skip
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_big_fb@y-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@yf-tiled-64bpp-rotate-0:
- shard-dg2: NOTRUN -> [SKIP][132] ([i915#4538] / [i915#5190]) +10 other tests skip
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@kms_big_fb@yf-tiled-64bpp-rotate-0.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0:
- shard-dg1: NOTRUN -> [SKIP][133] ([i915#4538]) +2 other tests skip
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0.html
* igt@kms_ccs@bad-pixel-format-4-tiled-mtl-mc-ccs:
- shard-dg2: NOTRUN -> [SKIP][134] ([i915#10307] / [i915#6095]) +86 other tests skip
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_ccs@bad-pixel-format-4-tiled-mtl-mc-ccs.html
* igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-1:
- shard-tglu-1: NOTRUN -> [SKIP][135] ([i915#6095]) +29 other tests skip
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-1.html
* igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs:
- shard-dg2: NOTRUN -> [SKIP][136] ([i915#12313])
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs:
- shard-dg1: NOTRUN -> [SKIP][137] ([i915#12313])
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-a-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][138] ([i915#6095]) +4 other tests skip
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-a-edp-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs:
- shard-dg2: NOTRUN -> [SKIP][139] ([i915#12805])
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs.html
- shard-rkl: NOTRUN -> [SKIP][140] ([i915#12805])
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs.html
- shard-tglu-1: NOTRUN -> [SKIP][141] ([i915#12805])
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-d-hdmi-a-3:
- shard-dg1: NOTRUN -> [SKIP][142] ([i915#6095]) +163 other tests skip
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-d-hdmi-a-3.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-ccs@pipe-a-hdmi-a-2:
- shard-glk: NOTRUN -> [INCOMPLETE][143] ([i915#12796])
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk9/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs@pipe-a-hdmi-a-2.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-mc-ccs:
- shard-dg2: NOTRUN -> [SKIP][144] ([i915#6095]) +9 other tests skip
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-mc-ccs.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs:
- shard-tglu-1: NOTRUN -> [SKIP][145] ([i915#12313]) +2 other tests skip
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-dg2-mc-ccs@pipe-a-hdmi-a-1:
- shard-tglu: NOTRUN -> [SKIP][146] ([i915#6095]) +39 other tests skip
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-dg2-mc-ccs@pipe-a-hdmi-a-1.html
* igt@kms_ccs@missing-ccs-buffer-yf-tiled-ccs@pipe-a-hdmi-a-4:
- shard-dg1: NOTRUN -> [SKIP][147] ([i915#4423] / [i915#6095]) +1 other test skip
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_ccs@missing-ccs-buffer-yf-tiled-ccs@pipe-a-hdmi-a-4.html
* igt@kms_ccs@random-ccs-data-y-tiled-ccs@pipe-b-hdmi-a-1:
- shard-rkl: NOTRUN -> [SKIP][148] ([i915#6095]) +61 other tests skip
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-4/igt@kms_ccs@random-ccs-data-y-tiled-ccs@pipe-b-hdmi-a-1.html
* igt@kms_cdclk@mode-transition:
- shard-mtlp: NOTRUN -> [SKIP][149] ([i915#7213] / [i915#9010]) +4 other tests skip
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_cdclk@mode-transition.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-tglu: NOTRUN -> [SKIP][150] ([i915#3742])
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_cdclk@mode-transition-all-outputs.html
- shard-dg2: NOTRUN -> [SKIP][151] ([i915#11616] / [i915#7213])
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_chamelium_edid@dp-edid-stress-resolution-non-4k:
- shard-dg2: NOTRUN -> [SKIP][152] ([i915#11151] / [i915#7828]) +9 other tests skip
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_chamelium_edid@dp-edid-stress-resolution-non-4k.html
* igt@kms_chamelium_edid@vga-edid-read:
- shard-tglu: NOTRUN -> [SKIP][153] ([i915#11151] / [i915#7828]) +3 other tests skip
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_chamelium_edid@vga-edid-read.html
* igt@kms_chamelium_hpd@hdmi-hpd-fast:
- shard-rkl: NOTRUN -> [SKIP][154] ([i915#11151] / [i915#7828]) +4 other tests skip
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_chamelium_hpd@hdmi-hpd-fast.html
* igt@kms_chamelium_hpd@hdmi-hpd-storm-disable:
- shard-dg1: NOTRUN -> [SKIP][155] ([i915#11151] / [i915#7828]) +4 other tests skip
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_chamelium_hpd@hdmi-hpd-storm-disable.html
* igt@kms_chamelium_hpd@vga-hpd-enable-disable-mode:
- shard-mtlp: NOTRUN -> [SKIP][156] ([i915#11151] / [i915#7828])
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_chamelium_hpd@vga-hpd-enable-disable-mode.html
* igt@kms_chamelium_hpd@vga-hpd-fast:
- shard-tglu-1: NOTRUN -> [SKIP][157] ([i915#11151] / [i915#7828]) +3 other tests skip
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_chamelium_hpd@vga-hpd-fast.html
* igt@kms_color@deep-color:
- shard-tglu-1: NOTRUN -> [SKIP][158] ([i915#3555] / [i915#9979])
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_color@deep-color.html
* igt@kms_content_protection@atomic-dpms:
- shard-dg2: NOTRUN -> [SKIP][159] ([i915#7118] / [i915#9424])
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@content-type-change:
- shard-tglu: NOTRUN -> [SKIP][160] ([i915#6944] / [i915#9424]) +1 other test skip
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_content_protection@content-type-change.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-dg2: NOTRUN -> [SKIP][161] ([i915#3299])
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@kms_content_protection@dp-mst-lic-type-1.html
- shard-dg1: NOTRUN -> [SKIP][162] ([i915#3299])
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-rkl: NOTRUN -> [SKIP][163] ([i915#3116])
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_content_protection@mei-interface:
- shard-dg2: NOTRUN -> [SKIP][164] ([i915#9424]) +1 other test skip
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_content_protection@mei-interface.html
- shard-rkl: NOTRUN -> [SKIP][165] ([i915#9424]) +1 other test skip
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_content_protection@mei-interface.html
- shard-tglu-1: NOTRUN -> [SKIP][166] ([i915#6944] / [i915#9424])
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_content_protection@mei-interface.html
* igt@kms_content_protection@srm:
- shard-dg1: NOTRUN -> [SKIP][167] ([i915#7116])
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_content_protection@srm.html
* igt@kms_cursor_crc@cursor-offscreen-512x170:
- shard-tglu: NOTRUN -> [SKIP][168] ([i915#13049])
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_cursor_crc@cursor-offscreen-512x170.html
* igt@kms_cursor_crc@cursor-offscreen-512x512:
- shard-dg1: NOTRUN -> [SKIP][169] ([i915#13049])
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_cursor_crc@cursor-offscreen-512x512.html
* igt@kms_cursor_crc@cursor-random-512x170:
- shard-dg2: NOTRUN -> [SKIP][170] ([i915#13049])
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_cursor_crc@cursor-random-512x170.html
- shard-rkl: NOTRUN -> [SKIP][171] ([i915#13049])
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_cursor_crc@cursor-random-512x170.html
- shard-tglu-1: NOTRUN -> [SKIP][172] ([i915#13049])
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_cursor_crc@cursor-random-512x170.html
* igt@kms_cursor_crc@cursor-rapid-movement-32x32:
- shard-mtlp: NOTRUN -> [SKIP][173] ([i915#3555] / [i915#8814])
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html
* igt@kms_cursor_crc@cursor-rapid-movement-max-size:
- shard-dg2: NOTRUN -> [SKIP][174] ([i915#3555]) +6 other tests skip
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html
* igt@kms_cursor_crc@cursor-sliding-256x256:
- shard-rkl: NOTRUN -> [DMESG-WARN][175] ([i915#12964]) +18 other tests dmesg-warn
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_cursor_crc@cursor-sliding-256x256.html
* igt@kms_cursor_crc@cursor-sliding-32x10:
- shard-rkl: NOTRUN -> [SKIP][176] ([i915#3555]) +4 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@kms_cursor_crc@cursor-sliding-32x10.html
* igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy:
- shard-rkl: NOTRUN -> [SKIP][177] +12 other tests skip
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- shard-dg2: NOTRUN -> [SKIP][178] ([i915#4103] / [i915#4213]) +1 other test skip
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size:
- shard-rkl: NOTRUN -> [SKIP][179] ([i915#4103])
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
* igt@kms_cursor_legacy@cursora-vs-flipb-toggle:
- shard-dg2: NOTRUN -> [SKIP][180] ([i915#13046] / [i915#5354]) +5 other tests skip
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_cursor_legacy@cursora-vs-flipb-toggle.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size:
- shard-tglu: NOTRUN -> [SKIP][181] +36 other tests skip
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html
* igt@kms_cursor_legacy@flip-vs-cursor-varying-size:
- shard-snb: NOTRUN -> [FAIL][182] ([i915#2346])
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb2/igt@kms_cursor_legacy@flip-vs-cursor-varying-size.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-tglu: NOTRUN -> [SKIP][183] ([i915#4103]) +2 other tests skip
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
* igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
- shard-dg2: NOTRUN -> [SKIP][184] ([i915#9833])
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
- shard-dg1: NOTRUN -> [SKIP][185] ([i915#9723])
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
* igt@kms_display_modes@mst-extended-mode-negative:
- shard-dg2: NOTRUN -> [SKIP][186] ([i915#8588])
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_display_modes@mst-extended-mode-negative.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc:
- shard-dg1: NOTRUN -> [SKIP][187] ([i915#3555]) +3 other tests skip
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_dither@fb-8bpc-vs-panel-6bpc.html
* igt@kms_dsc@dsc-with-bpc:
- shard-dg1: NOTRUN -> [SKIP][188] ([i915#3555] / [i915#3840])
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_dsc@dsc-with-bpc.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc:
- shard-dg2: NOTRUN -> [SKIP][189] ([i915#3840] / [i915#9053])
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_dsc@dsc-with-output-formats-with-bpc.html
- shard-tglu: NOTRUN -> [SKIP][190] ([i915#3840] / [i915#9053])
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_dsc@dsc-with-output-formats-with-bpc.html
* igt@kms_fbcon_fbt@psr:
- shard-tglu-1: NOTRUN -> [SKIP][191] ([i915#3469])
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_fbcon_fbt@psr.html
* igt@kms_feature_discovery@display-3x:
- shard-mtlp: NOTRUN -> [SKIP][192] ([i915#1839])
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_feature_discovery@display-3x.html
* igt@kms_feature_discovery@display-4x:
- shard-dg1: NOTRUN -> [SKIP][193] ([i915#1839])
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_feature_discovery@display-4x.html
* igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset-interruptible:
- shard-dg1: NOTRUN -> [SKIP][194] ([i915#9934]) +4 other tests skip
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset-interruptible.html
* igt@kms_flip@2x-flip-vs-panning:
- shard-tglu-1: NOTRUN -> [SKIP][195] ([i915#3637]) +3 other tests skip
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_flip@2x-flip-vs-panning.html
* igt@kms_flip@2x-plain-flip-ts-check-interruptible:
- shard-mtlp: NOTRUN -> [SKIP][196] ([i915#3637]) +1 other test skip
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html
* igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset:
- shard-dg2: NOTRUN -> [SKIP][197] ([i915#9934]) +8 other tests skip
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset.html
- shard-tglu: NOTRUN -> [SKIP][198] ([i915#3637]) +2 other tests skip
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset.html
* igt@kms_flip@2x-wf_vblank-ts-check:
- shard-rkl: NOTRUN -> [SKIP][199] ([i915#9934]) +4 other tests skip
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_flip@2x-wf_vblank-ts-check.html
* igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible:
- shard-tglu: [PASS][200] -> [FAIL][201] ([i915#11989]) +1 other test fail
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-tglu-6/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible.html
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-6/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible.html
* igt@kms_flip@flip-vs-absolute-wf_vblank@a-hdmi-a2:
- shard-rkl: NOTRUN -> [FAIL][202] ([i915#11989]) +1 other test fail
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_flip@flip-vs-absolute-wf_vblank@a-hdmi-a2.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-tglu: NOTRUN -> [SKIP][203] ([i915#2672] / [i915#3555]) +1 other test skip
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-downscaling:
- shard-dg2: NOTRUN -> [SKIP][204] ([i915#2672] / [i915#3555]) +3 other tests skip
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling@pipe-a-valid-mode:
- shard-tglu-1: NOTRUN -> [SKIP][205] ([i915#2587] / [i915#2672]) +2 other tests skip
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-valid-mode:
- shard-tglu: NOTRUN -> [SKIP][206] ([i915#2587] / [i915#2672]) +2 other tests skip
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling:
- shard-tglu: NOTRUN -> [SKIP][207] ([i915#2587] / [i915#2672] / [i915#3555])
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling@pipe-a-valid-mode:
- shard-dg2: NOTRUN -> [SKIP][208] ([i915#2672]) +6 other tests skip
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling:
- shard-dg1: NOTRUN -> [SKIP][209] ([i915#2587] / [i915#2672] / [i915#3555])
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling:
- shard-dg1: NOTRUN -> [SKIP][210] ([i915#2672] / [i915#3555]) +2 other tests skip
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling@pipe-a-valid-mode:
- shard-dg1: NOTRUN -> [SKIP][211] ([i915#2587] / [i915#2672]) +3 other tests skip
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling:
- shard-rkl: NOTRUN -> [SKIP][212] ([i915#2672] / [i915#3555]) +1 other test skip
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling.html
- shard-tglu-1: NOTRUN -> [SKIP][213] ([i915#2672] / [i915#3555]) +2 other tests skip
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/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-rkl: NOTRUN -> [SKIP][214] ([i915#2672]) +1 other test skip
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/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][215] ([i915#2672] / [i915#3555] / [i915#5190]) +2 other tests skip
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite:
- shard-dg2: NOTRUN -> [FAIL][216] ([i915#6880])
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-wc:
- shard-rkl: NOTRUN -> [SKIP][217] ([i915#1825]) +23 other tests skip
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu:
- shard-tglu-1: NOTRUN -> [SKIP][218] +51 other tests skip
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbc-2p-rte:
- shard-dg2: NOTRUN -> [SKIP][219] ([i915#5354]) +26 other tests skip
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_frontbuffer_tracking@fbc-2p-rte.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt:
- shard-mtlp: NOTRUN -> [SKIP][220] ([i915#1825])
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-tiling-y:
- shard-dg2: NOTRUN -> [SKIP][221] ([i915#10055])
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@kms_frontbuffer_tracking@fbc-tiling-y.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][222] ([i915#8708]) +13 other tests skip
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][223] ([i915#8708])
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-pwrite:
- shard-dg1: NOTRUN -> [SKIP][224] +25 other tests skip
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-shrfb-fliptrack-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][225] ([i915#8708]) +19 other tests skip
[225]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@kms_frontbuffer_tracking@fbcpsr-2p-shrfb-fliptrack-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-tglu-1: NOTRUN -> [SKIP][226] ([i915#5439])
[226]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-linear:
- shard-glk: NOTRUN -> [SKIP][227] +72 other tests skip
[227]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk4/igt@kms_frontbuffer_tracking@fbcpsr-tiling-linear.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-pwrite:
- shard-rkl: NOTRUN -> [SKIP][228] ([i915#3023]) +13 other tests skip
[228]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary:
- shard-dg2: NOTRUN -> [SKIP][229] ([i915#3458]) +18 other tests skip
[229]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary.html
* igt@kms_frontbuffer_tracking@psr-rgb565-draw-pwrite:
- shard-dg1: NOTRUN -> [SKIP][230] ([i915#3458]) +8 other tests skip
[230]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_frontbuffer_tracking@psr-rgb565-draw-pwrite.html
* igt@kms_hdr@brightness-with-hdr:
- shard-rkl: NOTRUN -> [SKIP][231] ([i915#12713])
[231]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_hdr@brightness-with-hdr.html
* igt@kms_hdr@static-toggle-dpms:
- shard-rkl: NOTRUN -> [SKIP][232] ([i915#3555] / [i915#8228])
[232]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@kms_hdr@static-toggle-dpms.html
- shard-tglu: NOTRUN -> [SKIP][233] ([i915#3555] / [i915#8228])
[233]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_hdr@static-toggle-dpms.html
* igt@kms_joiner@basic-ultra-joiner:
- shard-tglu: NOTRUN -> [SKIP][234] ([i915#12339])
[234]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_joiner@basic-ultra-joiner.html
- shard-dg2: NOTRUN -> [SKIP][235] ([i915#12339])
[235]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_joiner@basic-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-big-joiner:
- shard-dg1: NOTRUN -> [SKIP][236] ([i915#10656])
[236]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_joiner@invalid-modeset-big-joiner.html
* igt@kms_joiner@invalid-modeset-force-ultra-joiner:
- shard-dg2: NOTRUN -> [SKIP][237] ([i915#10656]) +1 other test skip
[237]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html
* igt@kms_plane_alpha_blend@alpha-transparent-fb:
- shard-glk: NOTRUN -> [FAIL][238] ([i915#10647] / [i915#12177])
[238]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk4/igt@kms_plane_alpha_blend@alpha-transparent-fb.html
* igt@kms_plane_alpha_blend@alpha-transparent-fb@pipe-a-hdmi-a-1:
- shard-glk: NOTRUN -> [FAIL][239] ([i915#10647]) +1 other test fail
[239]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk4/igt@kms_plane_alpha_blend@alpha-transparent-fb@pipe-a-hdmi-a-1.html
* igt@kms_plane_lowres@tiling-4:
- shard-tglu: NOTRUN -> [SKIP][240] ([i915#3555]) +2 other tests skip
[240]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_plane_lowres@tiling-4.html
* igt@kms_plane_multiple@tiling-y:
- shard-dg2: NOTRUN -> [SKIP][241] ([i915#8806])
[241]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_plane_multiple@tiling-y.html
* igt@kms_plane_multiple@tiling-yf:
- shard-dg2: NOTRUN -> [SKIP][242] ([i915#3555] / [i915#8806])
[242]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_plane_multiple@tiling-yf.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers:
- shard-dg2: NOTRUN -> [SKIP][243] ([i915#12247] / [i915#9423])
[243]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-a:
- shard-rkl: NOTRUN -> [SKIP][244] ([i915#12247]) +4 other tests skip
[244]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-a.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-b:
- shard-dg2: NOTRUN -> [SKIP][245] ([i915#12247]) +3 other tests skip
[245]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-b.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-d:
- shard-tglu-1: NOTRUN -> [SKIP][246] ([i915#12247]) +12 other tests skip
[246]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-d.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation:
- shard-tglu-1: NOTRUN -> [SKIP][247] ([i915#3555]) +5 other tests skip
[247]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation.html
* igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-a:
- shard-dg1: NOTRUN -> [SKIP][248] ([i915#12247]) +8 other tests skip
[248]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-a.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25:
- shard-rkl: NOTRUN -> [SKIP][249] ([i915#12247] / [i915#6953])
[249]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25:
- shard-tglu-1: NOTRUN -> [SKIP][250] ([i915#12247] / [i915#3555])
[250]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25.html
- shard-dg1: NOTRUN -> [SKIP][251] ([i915#12247] / [i915#3555])
[251]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-14/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25.html
* igt@kms_pm_backlight@brightness-with-dpms:
- shard-dg1: NOTRUN -> [SKIP][252] ([i915#12343])
[252]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_pm_backlight@brightness-with-dpms.html
- shard-dg2: NOTRUN -> [SKIP][253] ([i915#12343])
[253]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@kms_pm_backlight@brightness-with-dpms.html
* igt@kms_pm_backlight@fade:
- shard-tglu: NOTRUN -> [SKIP][254] ([i915#9812])
[254]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_pm_backlight@fade.html
* igt@kms_pm_backlight@fade-with-dpms:
- shard-tglu-1: NOTRUN -> [SKIP][255] ([i915#9812]) +1 other test skip
[255]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_pm_backlight@fade-with-dpms.html
* igt@kms_pm_backlight@fade-with-suspend:
- shard-rkl: NOTRUN -> [SKIP][256] ([i915#5354]) +1 other test skip
[256]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_pm_backlight@fade-with-suspend.html
* igt@kms_pm_dc@dc5-dpms-negative:
- shard-rkl: [PASS][257] -> [DMESG-WARN][258] ([i915#12964]) +9 other tests dmesg-warn
[257]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-rkl-5/igt@kms_pm_dc@dc5-dpms-negative.html
[258]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-3/igt@kms_pm_dc@dc5-dpms-negative.html
- shard-mtlp: NOTRUN -> [SKIP][259] ([i915#13441])
[259]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_pm_dc@dc5-dpms-negative.html
* igt@kms_pm_dc@dc6-dpms:
- shard-rkl: NOTRUN -> [SKIP][260] ([i915#3361])
[260]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_pm_dc@dc6-dpms.html
* igt@kms_pm_lpsp@kms-lpsp:
- shard-dg1: NOTRUN -> [SKIP][261] ([i915#9340])
[261]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_pm_lpsp@kms-lpsp.html
* igt@kms_pm_lpsp@screens-disabled:
- shard-tglu-1: NOTRUN -> [SKIP][262] ([i915#8430])
[262]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_pm_lpsp@screens-disabled.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-dg2: NOTRUN -> [SKIP][263] ([i915#9519]) +1 other test skip
[263]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@kms_pm_rpm@dpms-lpsp.html
- shard-dg1: NOTRUN -> [SKIP][264] ([i915#9519])
[264]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_pm_rpm@dpms-lpsp.html
* igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait:
- shard-rkl: [PASS][265] -> [SKIP][266] ([i915#9519]) +1 other test skip
[265]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-rkl-1/igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait.html
[266]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-2/igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait.html
- shard-tglu: NOTRUN -> [SKIP][267] ([i915#9519])
[267]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait.html
* igt@kms_prime@basic-crc-hybrid:
- shard-rkl: NOTRUN -> [SKIP][268] ([i915#6524])
[268]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@kms_prime@basic-crc-hybrid.html
- shard-tglu: NOTRUN -> [SKIP][269] ([i915#6524])
[269]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_prime@basic-crc-hybrid.html
* igt@kms_psr2_sf@fbc-pr-cursor-plane-update-sf:
- shard-tglu: NOTRUN -> [SKIP][270] ([i915#11520]) +4 other tests skip
[270]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_psr2_sf@fbc-pr-cursor-plane-update-sf.html
* igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-sf:
- shard-glk: NOTRUN -> [SKIP][271] ([i915#11520]) +1 other test skip
[271]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk4/igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf:
- shard-tglu-1: NOTRUN -> [SKIP][272] ([i915#11520]) +4 other tests skip
[272]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-sf:
- shard-dg2: NOTRUN -> [SKIP][273] ([i915#11520]) +7 other tests skip
[273]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf:
- shard-dg1: NOTRUN -> [SKIP][274] ([i915#11520]) +5 other tests skip
[274]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area:
- shard-rkl: NOTRUN -> [SKIP][275] ([i915#11520]) +4 other tests skip
[275]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area.html
* igt@kms_psr2_sf@psr2-primary-plane-update-sf-dmg-area-big-fb:
- shard-snb: NOTRUN -> [SKIP][276] ([i915#11520]) +7 other tests skip
[276]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb2/igt@kms_psr2_sf@psr2-primary-plane-update-sf-dmg-area-big-fb.html
* igt@kms_psr2_su@page_flip-xrgb8888:
- shard-dg2: NOTRUN -> [SKIP][277] ([i915#9683])
[277]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_psr2_su@page_flip-xrgb8888.html
- shard-rkl: NOTRUN -> [SKIP][278] ([i915#9683])
[278]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_psr2_su@page_flip-xrgb8888.html
- shard-tglu-1: NOTRUN -> [SKIP][279] ([i915#9683])
[279]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_psr2_su@page_flip-xrgb8888.html
* igt@kms_psr@fbc-pr-sprite-render:
- shard-tglu-1: NOTRUN -> [SKIP][280] ([i915#9732]) +12 other tests skip
[280]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_psr@fbc-pr-sprite-render.html
* igt@kms_psr@fbc-psr-primary-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][281] ([i915#1072] / [i915#9732]) +21 other tests skip
[281]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_psr@fbc-psr-primary-mmap-gtt.html
* igt@kms_psr@fbc-psr2-basic@edp-1:
- shard-mtlp: NOTRUN -> [SKIP][282] ([i915#9688]) +1 other test skip
[282]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@kms_psr@fbc-psr2-basic@edp-1.html
* igt@kms_psr@psr-cursor-mmap-gtt:
- shard-tglu: NOTRUN -> [SKIP][283] ([i915#9732]) +10 other tests skip
[283]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_psr@psr-cursor-mmap-gtt.html
* igt@kms_psr@psr2-sprite-mmap-cpu:
- shard-rkl: NOTRUN -> [SKIP][284] ([i915#1072] / [i915#9732]) +15 other tests skip
[284]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@kms_psr@psr2-sprite-mmap-cpu.html
* igt@kms_psr@psr2-sprite-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][285] ([i915#1072] / [i915#9732]) +9 other tests skip
[285]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_psr@psr2-sprite-mmap-gtt.html
* igt@kms_rotation_crc@primary-4-tiled-reflect-x-180:
- shard-dg1: NOTRUN -> [SKIP][286] ([i915#5289])
[286]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_rotation_crc@primary-4-tiled-reflect-x-180.html
* igt@kms_rotation_crc@primary-y-tiled-reflect-x-0:
- shard-dg2: NOTRUN -> [SKIP][287] ([i915#5190]) +1 other test skip
[287]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_rotation_crc@primary-y-tiled-reflect-x-0.html
* igt@kms_rotation_crc@primary-y-tiled-reflect-x-90:
- shard-dg2: NOTRUN -> [SKIP][288] ([i915#12755] / [i915#5190])
[288]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_rotation_crc@primary-y-tiled-reflect-x-90.html
* igt@kms_rotation_crc@sprite-rotation-270:
- shard-dg2: NOTRUN -> [SKIP][289] ([i915#12755])
[289]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_rotation_crc@sprite-rotation-270.html
* igt@kms_selftest@drm_framebuffer:
- shard-dg1: NOTRUN -> [ABORT][290] ([i915#13179]) +1 other test abort
[290]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-18/igt@kms_selftest@drm_framebuffer.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-tglu-1: NOTRUN -> [SKIP][291] ([i915#8623])
[291]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_tiled_display@basic-test-pattern-with-chamelium:
- shard-dg2: NOTRUN -> [SKIP][292] ([i915#8623])
[292]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
* igt@kms_vrr@max-min:
- shard-tglu-1: NOTRUN -> [SKIP][293] ([i915#9906])
[293]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-1/igt@kms_vrr@max-min.html
* igt@kms_vrr@negative-basic:
- shard-dg2: NOTRUN -> [SKIP][294] ([i915#3555] / [i915#9906])
[294]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_vrr@negative-basic.html
- shard-dg1: NOTRUN -> [SKIP][295] ([i915#3555] / [i915#9906])
[295]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_vrr@negative-basic.html
* igt@kms_vrr@seamless-rr-switch-drrs:
- shard-tglu: NOTRUN -> [SKIP][296] ([i915#9906])
[296]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_vrr@seamless-rr-switch-drrs.html
- shard-dg2: NOTRUN -> [SKIP][297] ([i915#9906])
[297]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@kms_vrr@seamless-rr-switch-drrs.html
* igt@kms_writeback@writeback-fb-id:
- shard-dg2: NOTRUN -> [SKIP][298] ([i915#2437])
[298]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@kms_writeback@writeback-fb-id.html
- shard-dg1: NOTRUN -> [SKIP][299] ([i915#2437])
[299]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_writeback@writeback-fb-id.html
* igt@kms_writeback@writeback-invalid-parameters:
- shard-tglu: NOTRUN -> [SKIP][300] ([i915#2437])
[300]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-9/igt@kms_writeback@writeback-invalid-parameters.html
- shard-rkl: NOTRUN -> [SKIP][301] ([i915#2437])
[301]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@kms_writeback@writeback-invalid-parameters.html
* igt@kms_writeback@writeback-pixel-formats:
- shard-dg1: NOTRUN -> [SKIP][302] ([i915#2437] / [i915#9412])
[302]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@kms_writeback@writeback-pixel-formats.html
* igt@perf_pmu@frequency@gt0:
- shard-dg2: NOTRUN -> [FAIL][303] ([i915#12549] / [i915#6806]) +1 other test fail
[303]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-8/igt@perf_pmu@frequency@gt0.html
* igt@perf_pmu@multi-client@vecs1:
- shard-dg2: NOTRUN -> [FAIL][304] ([i915#4349]) +1 other test fail
[304]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@perf_pmu@multi-client@vecs1.html
* igt@perf_pmu@rc6-suspend:
- shard-glk: [PASS][305] -> [INCOMPLETE][306] ([i915#13356])
[305]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-glk2/igt@perf_pmu@rc6-suspend.html
[306]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk7/igt@perf_pmu@rc6-suspend.html
* igt@prime_vgem@basic-fence-mmap:
- shard-dg2: NOTRUN -> [SKIP][307] ([i915#3708] / [i915#4077])
[307]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-5/igt@prime_vgem@basic-fence-mmap.html
- shard-dg1: NOTRUN -> [SKIP][308] ([i915#3708] / [i915#4077])
[308]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@prime_vgem@basic-fence-mmap.html
* igt@sriov_basic@enable-vfs-bind-unbind-each:
- shard-dg1: NOTRUN -> [SKIP][309] ([i915#9917])
[309]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@sriov_basic@enable-vfs-bind-unbind-each.html
* igt@sysfs_heartbeat_interval@precise:
- shard-snb: NOTRUN -> [SKIP][310] +327 other tests skip
[310]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb2/igt@sysfs_heartbeat_interval@precise.html
* igt@tools_test@sysfs_l3_parity:
- shard-dg1: NOTRUN -> [SKIP][311] ([i915#4818])
[311]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@tools_test@sysfs_l3_parity.html
#### Possible fixes ####
* igt@debugfs_test@read_all_entries:
- shard-mtlp: [ABORT][312] -> [PASS][313]
[312]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-mtlp-7/igt@debugfs_test@read_all_entries.html
[313]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-3/igt@debugfs_test@read_all_entries.html
* igt@gem_exec_parallel@engines:
- shard-rkl: [DMESG-WARN][314] ([i915#12964]) -> [PASS][315] +5 other tests pass
[314]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-rkl-6/igt@gem_exec_parallel@engines.html
[315]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-4/igt@gem_exec_parallel@engines.html
* igt@gem_exec_suspend@basic-s4-devices:
- shard-dg2: [ABORT][316] ([i915#7975] / [i915#8213]) -> [PASS][317] +1 other test pass
[316]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-10/igt@gem_exec_suspend@basic-s4-devices.html
[317]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@gem_exec_suspend@basic-s4-devices.html
* igt@gem_exec_suspend@basic-s4-devices@lmem0:
- shard-dg1: [ABORT][318] ([i915#7975] / [i915#8213]) -> [PASS][319] +1 other test pass
[318]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-14/igt@gem_exec_suspend@basic-s4-devices@lmem0.html
[319]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-17/igt@gem_exec_suspend@basic-s4-devices@lmem0.html
* igt@gem_mmap_gtt@big-copy-xy:
- shard-snb: [INCOMPLETE][320] -> [PASS][321]
[320]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-snb2/igt@gem_mmap_gtt@big-copy-xy.html
[321]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb7/igt@gem_mmap_gtt@big-copy-xy.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-rkl: [ABORT][322] ([i915#9820]) -> [PASS][323]
[322]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-rkl-7/igt@i915_module_load@reload-with-fault-injection.html
[323]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-6/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_selftest@live@workarounds:
- shard-mtlp: [DMESG-FAIL][324] ([i915#13393]) -> [PASS][325] +1 other test pass
[324]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-mtlp-5/igt@i915_selftest@live@workarounds.html
[325]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-5/igt@i915_selftest@live@workarounds.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
- shard-dg2: [FAIL][326] ([i915#5956]) -> [PASS][327]
[326]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-10/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
[327]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-11/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-ccs@pipe-a-hdmi-a-1:
- shard-glk: [INCOMPLETE][328] ([i915#12796]) -> [PASS][329]
[328]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-glk8/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs@pipe-a-hdmi-a-1.html
[329]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk9/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs@pipe-a-hdmi-a-1.html
* igt@kms_cursor_legacy@flip-vs-cursor-varying-size:
- shard-mtlp: [FAIL][330] ([i915#2346]) -> [PASS][331]
[330]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-mtlp-2/igt@kms_cursor_legacy@flip-vs-cursor-varying-size.html
[331]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-7/igt@kms_cursor_legacy@flip-vs-cursor-varying-size.html
* igt@kms_flip@plain-flip-ts-check:
- shard-snb: [FAIL][332] ([i915#11989]) -> [PASS][333] +1 other test pass
[332]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-snb1/igt@kms_flip@plain-flip-ts-check.html
[333]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-snb1/igt@kms_flip@plain-flip-ts-check.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling:
- shard-dg1: [DMESG-WARN][334] ([i915#4423]) -> [PASS][335] +1 other test pass
[334]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-17/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling.html
[335]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-14/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling.html
* igt@kms_pm_dc@dc6-dpms:
- shard-tglu: [FAIL][336] ([i915#9295]) -> [PASS][337]
[336]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-tglu-8/igt@kms_pm_dc@dc6-dpms.html
[337]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-2/igt@kms_pm_dc@dc6-dpms.html
* igt@kms_pm_rpm@modeset-non-lpsp-stress:
- shard-rkl: [SKIP][338] ([i915#9519]) -> [PASS][339] +1 other test pass
[338]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-rkl-7/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
[339]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-1/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
* igt@kms_vrr@negative-basic:
- shard-mtlp: [FAIL][340] ([i915#10393]) -> [PASS][341] +1 other test pass
[340]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-mtlp-5/igt@kms_vrr@negative-basic.html
[341]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-mtlp-5/igt@kms_vrr@negative-basic.html
#### Warnings ####
* igt@gem_lmem_swapping@smem-oom@lmem0:
- shard-dg1: [TIMEOUT][342] ([i915#5493]) -> [DMESG-WARN][343] ([i915#5493]) +1 other test dmesg-warn
[342]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-13/igt@gem_lmem_swapping@smem-oom@lmem0.html
[343]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@gem_lmem_swapping@smem-oom@lmem0.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-dg2: [ABORT][344] -> [ABORT][345] ([i915#10887] / [i915#9820])
[344]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-11/igt@i915_module_load@reload-with-fault-injection.html
[345]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_suspend@basic-s3-without-i915:
- shard-glk: [INCOMPLETE][346] ([i915#1982] / [i915#4817]) -> [INCOMPLETE][347] ([i915#4817])
[346]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-glk3/igt@i915_suspend@basic-s3-without-i915.html
[347]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-glk4/igt@i915_suspend@basic-s3-without-i915.html
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-rkl: [DMESG-WARN][348] ([i915#12917] / [i915#12964]) -> [DMESG-FAIL][349] ([i915#12964])
[348]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-rkl-4/igt@kms_frontbuffer_tracking@fbc-suspend.html
[349]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-rkl-7/igt@kms_frontbuffer_tracking@fbc-suspend.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-mmap-wc:
- shard-dg1: [SKIP][350] ([i915#4423] / [i915#8708]) -> [SKIP][351] ([i915#8708])
[350]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-14/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-mmap-wc.html
[351]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-blt:
- shard-dg1: [SKIP][352] -> [SKIP][353] ([i915#4423])
[352]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-13/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-blt.html
[353]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-13/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-blt.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-dg1: [SKIP][354] ([i915#3555] / [i915#4423] / [i915#8228]) -> [SKIP][355] ([i915#3555] / [i915#8228])
[354]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg1-17/igt@kms_hdr@bpc-switch-suspend.html
[355]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg1-14/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_hdr@brightness-with-hdr:
- shard-dg2: [SKIP][356] ([i915#12713]) -> [SKIP][357] ([i915#13331])
[356]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-dg2-3/igt@kms_hdr@brightness-with-hdr.html
[357]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-dg2-10/igt@kms_hdr@brightness-with-hdr.html
- shard-tglu: [SKIP][358] ([i915#12713]) -> [SKIP][359] ([i915#1187] / [i915#12713])
[358]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15964/shard-tglu-8/igt@kms_hdr@brightness-with-hdr.html
[359]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/shard-tglu-2/igt@kms_hdr@brightness-with-hdr.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[i915#10055]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10055
[i915#10307]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10307
[i915#10393]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10393
[i915#10647]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10647
[i915#10656]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10656
[i915#1072]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1072
[i915#10729]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10729
[i915#10887]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10887
[i915#1099]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1099
[i915#11151]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11151
[i915#11441]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11441
[i915#11520]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11520
[i915#11616]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11616
[i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
[i915#11814]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11814
[i915#11815]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11815
[i915#11859]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11859
[i915#1187]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1187
[i915#11989]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11989
[i915#12177]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12177
[i915#12238]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12238
[i915#12247]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12247
[i915#12313]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12313
[i915#12339]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12339
[i915#12343]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12343
[i915#12392]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12392
[i915#12454]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12454
[i915#12543]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12543
[i915#12549]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12549
[i915#12712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12712
[i915#12713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12713
[i915#12739]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12739
[i915#12755]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12755
[i915#12796]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12796
[i915#12797]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12797
[i915#12805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12805
[i915#12917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12917
[i915#12941]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12941
[i915#12964]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12964
[i915#13008]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13008
[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#13304]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13304
[i915#13314]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13314
[i915#13331]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13331
[i915#13356]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13356
[i915#13393]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13393
[i915#13398]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13398
[i915#13441]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13441
[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#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#2658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2658
[i915#2672]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2672
[i915#2681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2681
[i915#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#3361]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3361
[i915#3458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3458
[i915#3469]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3469
[i915#3539]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555
[i915#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#3742]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3742
[i915#3778]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3778
[i915#3840]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3840
[i915#3936]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3936
[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#4215]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4215
[i915#4270]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4270
[i915#4349]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4349
[i915#4423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4423
[i915#4525]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4525
[i915#4537]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4537
[i915#4538]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4538
[i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613
[i915#4812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4812
[i915#4817]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4817
[i915#4818]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4818
[i915#4852]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4852
[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#5190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5190
[i915#5286]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5286
[i915#5289]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5289
[i915#5354]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5354
[i915#5439]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5439
[i915#5493]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5493
[i915#5784]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5784
[i915#5956]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5956
[i915#6095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6095
[i915#6230]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6230
[i915#6245]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6245
[i915#6334]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6334
[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#6806]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6806
[i915#6880]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6880
[i915#6944]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6944
[i915#6953]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6953
[i915#7016]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7016
[i915#7116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7116
[i915#7118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7118
[i915#7213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7213
[i915#7297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7297
[i915#7443]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7443
[i915#7828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7828
[i915#7975]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7975
[i915#8213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8213
[i915#8228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8228
[i915#8289]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8289
[i915#8381]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8381
[i915#8399]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8399
[i915#8411]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8411
[i915#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#8555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8555
[i915#8562]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8562
[i915#8588]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8588
[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#8814]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8814
[i915#9010]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9010
[i915#9053]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9053
[i915#9295]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9295
[i915#9311]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9311
[i915#9323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9323
[i915#9340]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9340
[i915#9412]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9412
[i915#9413]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9413
[i915#9423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9423
[i915#9424]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9424
[i915#9519]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9519
[i915#9683]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9683
[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#9812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9812
[i915#9820]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9820
[i915#9833]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9833
[i915#9906]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9906
[i915#9917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9917
[i915#9934]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9934
[i915#9979]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9979
Build changes
-------------
* Linux: CI_DRM_15964 -> Patchwork_142685v3
CI-20190529: 20190529
CI_DRM_15964: 4cea1f90028925afcf1a0f8a0ef301f90349688c @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_8192: a3b85ce819b99284bef57aafc7d44f50a62e097f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_142685v3: 4cea1f90028925afcf1a0f8a0ef301f90349688c @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_142685v3/index.html
[-- Attachment #2: Type: text/html, Size: 124402 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
` (6 preceding siblings ...)
2025-01-16 6:44 ` ✓ i915.CI.Full: " Patchwork
@ 2025-01-16 22:57 ` Rodrigo Vivi
2025-01-16 23:51 ` Belgaumkar, Vinay
7 siblings, 1 reply; 13+ messages in thread
From: Rodrigo Vivi @ 2025-01-16 22:57 UTC (permalink / raw)
To: Vinay Belgaumkar; +Cc: intel-gfx, dri-devel, Sushma Venkatesh Reddy
On Fri, Jan 10, 2025 at 03:21:51PM -0800, Vinay Belgaumkar wrote:
> Default SLPC power profile is Base(0). Power Saving mode(1)
> has conservative up/down thresholds and is suitable for use with
> apps that typically need to be power efficient.
>
> Selected power profile will be displayed in this format-
>
> $ cat slpc_power_profile
>
> [base] power_saving
>
> $ echo power_saving > slpc_power_profile
> $ cat slpc_power_profile
>
> base [power_saving]
>
> v2: Disable waitboost in power saving profile and updated sysfs
> format and add some kernel doc for SLPC (Rodrigo)
>
> Cc: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 47 +++++++++++++++
> drivers/gpu/drm/i915/gt/intel_rps.c | 4 ++
> .../drm/i915/gt/uc/abi/guc_actions_slpc_abi.h | 5 ++
> drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 60 +++++++++++++++++++
> drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h | 1 +
> .../gpu/drm/i915/gt/uc/intel_guc_slpc_types.h | 3 +
> 6 files changed, 120 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> index d7784650e4d9..83a7cc7dfbc8 100644
> --- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> +++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> @@ -464,6 +464,45 @@ static ssize_t slpc_ignore_eff_freq_store(struct kobject *kobj,
> return err ?: count;
> }
>
> +static ssize_t slpc_power_profile_show(struct kobject *kobj,
> + struct kobj_attribute *attr,
> + char *buff)
> +{
> + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
> + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
> +
> + switch (slpc->power_profile) {
> + case SLPC_POWER_PROFILES_BASE:
> + return sysfs_emit(buff, "[%s] %s\n", "base", "power_saving");
> + case SLPC_POWER_PROFILES_POWER_SAVING:
> + return sysfs_emit(buff, "%s [%s]\n", "base", "power_saving");
I had thought about something generic like kernel/power/main.c, but that is
indeed not needed since we do only have 2 options. This came out cleaner
than I though, although not generic...
> + }
> +
> + return sysfs_emit(buff, "%u\n", slpc->power_profile);
> +}
> +
> +static ssize_t slpc_power_profile_store(struct kobject *kobj,
> + struct kobj_attribute *attr,
> + const char *buff, size_t count)
> +{
> + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
> + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
> + char power_saving[] = "power_saving";
> + char base[] = "base";
> + int err;
> + u32 val;
> +
> + if (!strncmp(buff, power_saving, sizeof(power_saving) - 1))
> + val = SLPC_POWER_PROFILES_POWER_SAVING;
> + else if (!strncmp(buff, base, sizeof(base) - 1))
> + val = SLPC_POWER_PROFILES_BASE;
> + else
> + return -EINVAL;
> +
> + err = intel_guc_slpc_set_power_profile(slpc, val);
> + return err ?: count;
> +}
> +
> struct intel_gt_bool_throttle_attr {
> struct attribute attr;
> ssize_t (*show)(struct kobject *kobj, struct kobj_attribute *attr,
> @@ -668,6 +707,7 @@ INTEL_GT_ATTR_RO(media_RP0_freq_mhz);
> INTEL_GT_ATTR_RO(media_RPn_freq_mhz);
>
> INTEL_GT_ATTR_RW(slpc_ignore_eff_freq);
> +INTEL_GT_ATTR_RW(slpc_power_profile);
>
> static const struct attribute *media_perf_power_attrs[] = {
> &attr_media_freq_factor.attr,
> @@ -864,6 +904,13 @@ void intel_gt_sysfs_pm_init(struct intel_gt *gt, struct kobject *kobj)
> gt_warn(gt, "failed to create ignore_eff_freq sysfs (%pe)", ERR_PTR(ret));
> }
>
> + if (intel_uc_uses_guc_slpc(>->uc)) {
> + ret = sysfs_create_file(kobj, &attr_slpc_power_profile.attr);
> + if (ret)
> + gt_warn(gt, "failed to create slpc_power_profile sysfs (%pe)",
> + ERR_PTR(ret));
> + }
> +
> if (i915_mmio_reg_valid(intel_gt_perf_limit_reasons_reg(gt))) {
> ret = sysfs_create_files(kobj, throttle_reason_attrs);
> if (ret)
> diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
> index fa304ea088e4..2cfaedb04876 100644
> --- a/drivers/gpu/drm/i915/gt/intel_rps.c
> +++ b/drivers/gpu/drm/i915/gt/intel_rps.c
> @@ -1025,6 +1025,10 @@ void intel_rps_boost(struct i915_request *rq)
> if (rps_uses_slpc(rps)) {
> slpc = rps_to_slpc(rps);
>
> + /* Waitboost should not be done with power saving profile */
> + if (slpc->power_profile == SLPC_POWER_PROFILES_POWER_SAVING)
> + return;
hmmm... I'm afraid this is not enough... Although I just noticed that we
still have a problem for the low context strategy.
Please notice the intel_display_rps_boost_after_vblank...
So we probably need something like these:
https://github.com/rodrigovivi/linux/commit/42e24a146239a1b950ed047f619f334f5205ae8a
other than that I believe this is good, thanks for adding this
> +
> if (slpc->min_freq_softlimit >= slpc->boost_freq)
> return;
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> index c34674e797c6..6de87ae5669e 100644
> --- a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> +++ b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> @@ -228,6 +228,11 @@ struct slpc_optimized_strategies {
>
> #define SLPC_OPTIMIZED_STRATEGY_COMPUTE REG_BIT(0)
>
> +enum slpc_power_profiles {
> + SLPC_POWER_PROFILES_BASE = 0x0,
> + SLPC_POWER_PROFILES_POWER_SAVING = 0x1
> +};
> +
> /**
> * DOC: SLPC H2G MESSAGE FORMAT
> *
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> index 706fffca698b..bee78467d4a3 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> @@ -15,6 +15,29 @@
> #include "gt/intel_gt_regs.h"
> #include "gt/intel_rps.h"
>
> +/**
> + * DOC: SLPC - Dynamic Frequency management
> + *
> + * Single Loop Power Control is a GuC based algorithm which manages
> + * GT frequency based on how KMD initializes its parameters. SLPC is
> + * almost completely in control after initialization except for the
> + * waitboost scenario.
> + *
> + * KMD uses concept of waitboost to ramp frequency up to RP0 when
> + * there are pending submissions. The addition of power profiles adds
> + * another level of control to these mechanisms. When we choose the power
> + * saving profile, SLPC will use conservative thresholds to ramp frequency,
> + * thus saving power. KMD will disable waitboosts when this happens to aid
> + * further power savings. The user has some level of control through sysfs
> + * where min/max frequencies can be altered and the use of efficient freq
> + * can be modified as well.
> + *
> + * Another form of frequency control happens through per context hints.
> + * A context can be marked as low latency during creation. That will ensure
> + * that SLPC uses an aggressive frequency ramp when that context is active.
> + *
Thanks for adding the doc!
but now I'm missing the documentation of these new profile strategies in here...
> + */
> +
> static inline struct intel_guc *slpc_to_guc(struct intel_guc_slpc *slpc)
> {
> return container_of(slpc, struct intel_guc, slpc);
> @@ -265,6 +288,8 @@ int intel_guc_slpc_init(struct intel_guc_slpc *slpc)
> slpc->num_boosts = 0;
> slpc->media_ratio_mode = SLPC_MEDIA_RATIO_MODE_DYNAMIC_CONTROL;
>
> + slpc->power_profile = SLPC_POWER_PROFILES_BASE;
> +
> mutex_init(&slpc->lock);
> INIT_WORK(&slpc->boost_work, slpc_boost_work);
>
> @@ -567,6 +592,34 @@ int intel_guc_slpc_set_media_ratio_mode(struct intel_guc_slpc *slpc, u32 val)
> return ret;
> }
>
> +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val)
> +{
> + struct drm_i915_private *i915 = slpc_to_i915(slpc);
> + intel_wakeref_t wakeref;
> + int ret = 0;
> +
> + if (val > SLPC_POWER_PROFILES_POWER_SAVING)
> + return -EINVAL;
> +
> + mutex_lock(&slpc->lock);
> + wakeref = intel_runtime_pm_get(&i915->runtime_pm);
> +
> + ret = slpc_set_param(slpc,
> + SLPC_PARAM_POWER_PROFILE,
> + val);
> + if (ret)
> + guc_err(slpc_to_guc(slpc),
> + "Failed to set power profile to %d: %pe\n",
> + val, ERR_PTR(ret));
> + else
> + slpc->power_profile = val;
> +
> + intel_runtime_pm_put(&i915->runtime_pm, wakeref);
> + mutex_unlock(&slpc->lock);
> +
> + return ret;
> +}
> +
> void intel_guc_pm_intrmsk_enable(struct intel_gt *gt)
> {
> u32 pm_intrmsk_mbz = 0;
> @@ -728,6 +781,13 @@ int intel_guc_slpc_enable(struct intel_guc_slpc *slpc)
> /* Enable SLPC Optimized Strategy for compute */
> intel_guc_slpc_set_strategy(slpc, SLPC_OPTIMIZED_STRATEGY_COMPUTE);
>
> + /* Set cached value of power_profile */
> + ret = intel_guc_slpc_set_power_profile(slpc, slpc->power_profile);
> + if (unlikely(ret)) {
> + guc_probe_error(guc, "Failed to set SLPC power profile: %pe\n", ERR_PTR(ret));
> + return ret;
> + }
> +
> return 0;
> }
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> index 1cb5fd44f05c..fc9f761b4372 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> @@ -46,5 +46,6 @@ void intel_guc_slpc_boost(struct intel_guc_slpc *slpc);
> void intel_guc_slpc_dec_waiters(struct intel_guc_slpc *slpc);
> int intel_guc_slpc_set_ignore_eff_freq(struct intel_guc_slpc *slpc, bool val);
> int intel_guc_slpc_set_strategy(struct intel_guc_slpc *slpc, u32 val);
> +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val);
>
> #endif
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> index a88651331497..83673b10ac4e 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> @@ -33,6 +33,9 @@ struct intel_guc_slpc {
> u32 max_freq_softlimit;
> bool ignore_eff_freq;
>
> + /* Base or power saving */
> + u32 power_profile;
> +
> /* cached media ratio mode */
> u32 media_ratio_mode;
>
> --
> 2.38.1
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles
2025-01-16 22:57 ` [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Rodrigo Vivi
@ 2025-01-16 23:51 ` Belgaumkar, Vinay
2025-01-17 14:29 ` Rodrigo Vivi
0 siblings, 1 reply; 13+ messages in thread
From: Belgaumkar, Vinay @ 2025-01-16 23:51 UTC (permalink / raw)
To: Rodrigo Vivi; +Cc: intel-gfx, dri-devel, Sushma Venkatesh Reddy
On 1/16/2025 2:57 PM, Rodrigo Vivi wrote:
> On Fri, Jan 10, 2025 at 03:21:51PM -0800, Vinay Belgaumkar wrote:
>> Default SLPC power profile is Base(0). Power Saving mode(1)
>> has conservative up/down thresholds and is suitable for use with
>> apps that typically need to be power efficient.
>>
>> Selected power profile will be displayed in this format-
>>
>> $ cat slpc_power_profile
>>
>> [base] power_saving
>>
>> $ echo power_saving > slpc_power_profile
>> $ cat slpc_power_profile
>>
>> base [power_saving]
>>
>> v2: Disable waitboost in power saving profile and updated sysfs
>> format and add some kernel doc for SLPC (Rodrigo)
>>
>> Cc: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com>
>> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
>> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
>> ---
>> drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 47 +++++++++++++++
>> drivers/gpu/drm/i915/gt/intel_rps.c | 4 ++
>> .../drm/i915/gt/uc/abi/guc_actions_slpc_abi.h | 5 ++
>> drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 60 +++++++++++++++++++
>> drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h | 1 +
>> .../gpu/drm/i915/gt/uc/intel_guc_slpc_types.h | 3 +
>> 6 files changed, 120 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
>> index d7784650e4d9..83a7cc7dfbc8 100644
>> --- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
>> +++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
>> @@ -464,6 +464,45 @@ static ssize_t slpc_ignore_eff_freq_store(struct kobject *kobj,
>> return err ?: count;
>> }
>>
>> +static ssize_t slpc_power_profile_show(struct kobject *kobj,
>> + struct kobj_attribute *attr,
>> + char *buff)
>> +{
>> + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
>> + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
>> +
>> + switch (slpc->power_profile) {
>> + case SLPC_POWER_PROFILES_BASE:
>> + return sysfs_emit(buff, "[%s] %s\n", "base", "power_saving");
>> + case SLPC_POWER_PROFILES_POWER_SAVING:
>> + return sysfs_emit(buff, "%s [%s]\n", "base", "power_saving");
> I had thought about something generic like kernel/power/main.c, but that is
> indeed not needed since we do only have 2 options. This came out cleaner
> than I though, although not generic...
>
>> + }
>> +
>> + return sysfs_emit(buff, "%u\n", slpc->power_profile);
>> +}
>> +
>> +static ssize_t slpc_power_profile_store(struct kobject *kobj,
>> + struct kobj_attribute *attr,
>> + const char *buff, size_t count)
>> +{
>> + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
>> + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
>> + char power_saving[] = "power_saving";
>> + char base[] = "base";
>> + int err;
>> + u32 val;
>> +
>> + if (!strncmp(buff, power_saving, sizeof(power_saving) - 1))
>> + val = SLPC_POWER_PROFILES_POWER_SAVING;
>> + else if (!strncmp(buff, base, sizeof(base) - 1))
>> + val = SLPC_POWER_PROFILES_BASE;
>> + else
>> + return -EINVAL;
>> +
>> + err = intel_guc_slpc_set_power_profile(slpc, val);
>> + return err ?: count;
>> +}
>> +
>> struct intel_gt_bool_throttle_attr {
>> struct attribute attr;
>> ssize_t (*show)(struct kobject *kobj, struct kobj_attribute *attr,
>> @@ -668,6 +707,7 @@ INTEL_GT_ATTR_RO(media_RP0_freq_mhz);
>> INTEL_GT_ATTR_RO(media_RPn_freq_mhz);
>>
>> INTEL_GT_ATTR_RW(slpc_ignore_eff_freq);
>> +INTEL_GT_ATTR_RW(slpc_power_profile);
>>
>> static const struct attribute *media_perf_power_attrs[] = {
>> &attr_media_freq_factor.attr,
>> @@ -864,6 +904,13 @@ void intel_gt_sysfs_pm_init(struct intel_gt *gt, struct kobject *kobj)
>> gt_warn(gt, "failed to create ignore_eff_freq sysfs (%pe)", ERR_PTR(ret));
>> }
>>
>> + if (intel_uc_uses_guc_slpc(>->uc)) {
>> + ret = sysfs_create_file(kobj, &attr_slpc_power_profile.attr);
>> + if (ret)
>> + gt_warn(gt, "failed to create slpc_power_profile sysfs (%pe)",
>> + ERR_PTR(ret));
>> + }
>> +
>> if (i915_mmio_reg_valid(intel_gt_perf_limit_reasons_reg(gt))) {
>> ret = sysfs_create_files(kobj, throttle_reason_attrs);
>> if (ret)
>> diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
>> index fa304ea088e4..2cfaedb04876 100644
>> --- a/drivers/gpu/drm/i915/gt/intel_rps.c
>> +++ b/drivers/gpu/drm/i915/gt/intel_rps.c
>> @@ -1025,6 +1025,10 @@ void intel_rps_boost(struct i915_request *rq)
>> if (rps_uses_slpc(rps)) {
>> slpc = rps_to_slpc(rps);
>>
>> + /* Waitboost should not be done with power saving profile */
>> + if (slpc->power_profile == SLPC_POWER_PROFILES_POWER_SAVING)
>> + return;
> hmmm... I'm afraid this is not enough... Although I just noticed that we
> still have a problem for the low context strategy.
>
> Please notice the intel_display_rps_boost_after_vblank...
boost_after_vblank() also ends up calling intel_rps_boost(), so it will
skip correctly whenever the power saving profile is being used. The only
extra thing is an additional work queue addition, I guess. We could
avoid that.
>
> So we probably need something like these:
> https://github.com/rodrigovivi/linux/commit/42e24a146239a1b950ed047f619f334f5205ae8a
>
> other than that I believe this is good, thanks for adding this
>
>> +
>> if (slpc->min_freq_softlimit >= slpc->boost_freq)
>> return;
>>
>> diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
>> index c34674e797c6..6de87ae5669e 100644
>> --- a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
>> +++ b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
>> @@ -228,6 +228,11 @@ struct slpc_optimized_strategies {
>>
>> #define SLPC_OPTIMIZED_STRATEGY_COMPUTE REG_BIT(0)
>>
>> +enum slpc_power_profiles {
>> + SLPC_POWER_PROFILES_BASE = 0x0,
>> + SLPC_POWER_PROFILES_POWER_SAVING = 0x1
>> +};
>> +
>> /**
>> * DOC: SLPC H2G MESSAGE FORMAT
>> *
>> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
>> index 706fffca698b..bee78467d4a3 100644
>> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
>> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
>> @@ -15,6 +15,29 @@
>> #include "gt/intel_gt_regs.h"
>> #include "gt/intel_rps.h"
>>
>> +/**
>> + * DOC: SLPC - Dynamic Frequency management
>> + *
>> + * Single Loop Power Control is a GuC based algorithm which manages
>> + * GT frequency based on how KMD initializes its parameters. SLPC is
>> + * almost completely in control after initialization except for the
>> + * waitboost scenario.
>> + *
>> + * KMD uses concept of waitboost to ramp frequency up to RP0 when
>> + * there are pending submissions. The addition of power profiles adds
>> + * another level of control to these mechanisms. When we choose the power
>> + * saving profile, SLPC will use conservative thresholds to ramp frequency,
>> + * thus saving power. KMD will disable waitboosts when this happens to aid
>> + * further power savings. The user has some level of control through sysfs
>> + * where min/max frequencies can be altered and the use of efficient freq
>> + * can be modified as well.
>> + *
>> + * Another form of frequency control happens through per context hints.
>> + * A context can be marked as low latency during creation. That will ensure
>> + * that SLPC uses an aggressive frequency ramp when that context is active.
>> + *
> Thanks for adding the doc!
> but now I'm missing the documentation of these new profile strategies in here...
ok, will call it out specifically.
Thanks,
Vinay.
>
>> + */
>> +
>> static inline struct intel_guc *slpc_to_guc(struct intel_guc_slpc *slpc)
>> {
>> return container_of(slpc, struct intel_guc, slpc);
>> @@ -265,6 +288,8 @@ int intel_guc_slpc_init(struct intel_guc_slpc *slpc)
>> slpc->num_boosts = 0;
>> slpc->media_ratio_mode = SLPC_MEDIA_RATIO_MODE_DYNAMIC_CONTROL;
>>
>> + slpc->power_profile = SLPC_POWER_PROFILES_BASE;
>> +
>> mutex_init(&slpc->lock);
>> INIT_WORK(&slpc->boost_work, slpc_boost_work);
>>
>> @@ -567,6 +592,34 @@ int intel_guc_slpc_set_media_ratio_mode(struct intel_guc_slpc *slpc, u32 val)
>> return ret;
>> }
>>
>> +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val)
>> +{
>> + struct drm_i915_private *i915 = slpc_to_i915(slpc);
>> + intel_wakeref_t wakeref;
>> + int ret = 0;
>> +
>> + if (val > SLPC_POWER_PROFILES_POWER_SAVING)
>> + return -EINVAL;
>> +
>> + mutex_lock(&slpc->lock);
>> + wakeref = intel_runtime_pm_get(&i915->runtime_pm);
>> +
>> + ret = slpc_set_param(slpc,
>> + SLPC_PARAM_POWER_PROFILE,
>> + val);
>> + if (ret)
>> + guc_err(slpc_to_guc(slpc),
>> + "Failed to set power profile to %d: %pe\n",
>> + val, ERR_PTR(ret));
>> + else
>> + slpc->power_profile = val;
>> +
>> + intel_runtime_pm_put(&i915->runtime_pm, wakeref);
>> + mutex_unlock(&slpc->lock);
>> +
>> + return ret;
>> +}
>> +
>> void intel_guc_pm_intrmsk_enable(struct intel_gt *gt)
>> {
>> u32 pm_intrmsk_mbz = 0;
>> @@ -728,6 +781,13 @@ int intel_guc_slpc_enable(struct intel_guc_slpc *slpc)
>> /* Enable SLPC Optimized Strategy for compute */
>> intel_guc_slpc_set_strategy(slpc, SLPC_OPTIMIZED_STRATEGY_COMPUTE);
>>
>> + /* Set cached value of power_profile */
>> + ret = intel_guc_slpc_set_power_profile(slpc, slpc->power_profile);
>> + if (unlikely(ret)) {
>> + guc_probe_error(guc, "Failed to set SLPC power profile: %pe\n", ERR_PTR(ret));
>> + return ret;
>> + }
>> +
>> return 0;
>> }
>>
>> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
>> index 1cb5fd44f05c..fc9f761b4372 100644
>> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
>> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
>> @@ -46,5 +46,6 @@ void intel_guc_slpc_boost(struct intel_guc_slpc *slpc);
>> void intel_guc_slpc_dec_waiters(struct intel_guc_slpc *slpc);
>> int intel_guc_slpc_set_ignore_eff_freq(struct intel_guc_slpc *slpc, bool val);
>> int intel_guc_slpc_set_strategy(struct intel_guc_slpc *slpc, u32 val);
>> +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val);
>>
>> #endif
>> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
>> index a88651331497..83673b10ac4e 100644
>> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
>> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
>> @@ -33,6 +33,9 @@ struct intel_guc_slpc {
>> u32 max_freq_softlimit;
>> bool ignore_eff_freq;
>>
>> + /* Base or power saving */
>> + u32 power_profile;
>> +
>> /* cached media ratio mode */
>> u32 media_ratio_mode;
>>
>> --
>> 2.38.1
>>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles
2025-01-16 23:51 ` Belgaumkar, Vinay
@ 2025-01-17 14:29 ` Rodrigo Vivi
2025-01-17 18:21 ` Belgaumkar, Vinay
0 siblings, 1 reply; 13+ messages in thread
From: Rodrigo Vivi @ 2025-01-17 14:29 UTC (permalink / raw)
To: Belgaumkar, Vinay; +Cc: intel-gfx, dri-devel, Sushma Venkatesh Reddy
On Thu, Jan 16, 2025 at 03:51:03PM -0800, Belgaumkar, Vinay wrote:
>
> On 1/16/2025 2:57 PM, Rodrigo Vivi wrote:
> > On Fri, Jan 10, 2025 at 03:21:51PM -0800, Vinay Belgaumkar wrote:
> > > Default SLPC power profile is Base(0). Power Saving mode(1)
> > > has conservative up/down thresholds and is suitable for use with
> > > apps that typically need to be power efficient.
> > >
> > > Selected power profile will be displayed in this format-
> > >
> > > $ cat slpc_power_profile
> > >
> > > [base] power_saving
> > >
> > > $ echo power_saving > slpc_power_profile
> > > $ cat slpc_power_profile
> > >
> > > base [power_saving]
> > >
> > > v2: Disable waitboost in power saving profile and updated sysfs
> > > format and add some kernel doc for SLPC (Rodrigo)
> > >
> > > Cc: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com>
> > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > > Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
> > > ---
> > > drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 47 +++++++++++++++
> > > drivers/gpu/drm/i915/gt/intel_rps.c | 4 ++
> > > .../drm/i915/gt/uc/abi/guc_actions_slpc_abi.h | 5 ++
> > > drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 60 +++++++++++++++++++
> > > drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h | 1 +
> > > .../gpu/drm/i915/gt/uc/intel_guc_slpc_types.h | 3 +
> > > 6 files changed, 120 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> > > index d7784650e4d9..83a7cc7dfbc8 100644
> > > --- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> > > +++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> > > @@ -464,6 +464,45 @@ static ssize_t slpc_ignore_eff_freq_store(struct kobject *kobj,
> > > return err ?: count;
> > > }
> > > +static ssize_t slpc_power_profile_show(struct kobject *kobj,
> > > + struct kobj_attribute *attr,
> > > + char *buff)
> > > +{
> > > + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
> > > + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
> > > +
> > > + switch (slpc->power_profile) {
> > > + case SLPC_POWER_PROFILES_BASE:
> > > + return sysfs_emit(buff, "[%s] %s\n", "base", "power_saving");
> > > + case SLPC_POWER_PROFILES_POWER_SAVING:
> > > + return sysfs_emit(buff, "%s [%s]\n", "base", "power_saving");
> > I had thought about something generic like kernel/power/main.c, but that is
> > indeed not needed since we do only have 2 options. This came out cleaner
> > than I though, although not generic...
> >
> > > + }
> > > +
> > > + return sysfs_emit(buff, "%u\n", slpc->power_profile);
> > > +}
> > > +
> > > +static ssize_t slpc_power_profile_store(struct kobject *kobj,
> > > + struct kobj_attribute *attr,
> > > + const char *buff, size_t count)
> > > +{
> > > + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
> > > + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
> > > + char power_saving[] = "power_saving";
> > > + char base[] = "base";
> > > + int err;
> > > + u32 val;
> > > +
> > > + if (!strncmp(buff, power_saving, sizeof(power_saving) - 1))
> > > + val = SLPC_POWER_PROFILES_POWER_SAVING;
> > > + else if (!strncmp(buff, base, sizeof(base) - 1))
> > > + val = SLPC_POWER_PROFILES_BASE;
> > > + else
> > > + return -EINVAL;
> > > +
> > > + err = intel_guc_slpc_set_power_profile(slpc, val);
> > > + return err ?: count;
> > > +}
> > > +
> > > struct intel_gt_bool_throttle_attr {
> > > struct attribute attr;
> > > ssize_t (*show)(struct kobject *kobj, struct kobj_attribute *attr,
> > > @@ -668,6 +707,7 @@ INTEL_GT_ATTR_RO(media_RP0_freq_mhz);
> > > INTEL_GT_ATTR_RO(media_RPn_freq_mhz);
> > > INTEL_GT_ATTR_RW(slpc_ignore_eff_freq);
> > > +INTEL_GT_ATTR_RW(slpc_power_profile);
> > > static const struct attribute *media_perf_power_attrs[] = {
> > > &attr_media_freq_factor.attr,
> > > @@ -864,6 +904,13 @@ void intel_gt_sysfs_pm_init(struct intel_gt *gt, struct kobject *kobj)
> > > gt_warn(gt, "failed to create ignore_eff_freq sysfs (%pe)", ERR_PTR(ret));
> > > }
> > > + if (intel_uc_uses_guc_slpc(>->uc)) {
> > > + ret = sysfs_create_file(kobj, &attr_slpc_power_profile.attr);
> > > + if (ret)
> > > + gt_warn(gt, "failed to create slpc_power_profile sysfs (%pe)",
> > > + ERR_PTR(ret));
> > > + }
> > > +
> > > if (i915_mmio_reg_valid(intel_gt_perf_limit_reasons_reg(gt))) {
> > > ret = sysfs_create_files(kobj, throttle_reason_attrs);
> > > if (ret)
> > > diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
> > > index fa304ea088e4..2cfaedb04876 100644
> > > --- a/drivers/gpu/drm/i915/gt/intel_rps.c
> > > +++ b/drivers/gpu/drm/i915/gt/intel_rps.c
> > > @@ -1025,6 +1025,10 @@ void intel_rps_boost(struct i915_request *rq)
> > > if (rps_uses_slpc(rps)) {
> > > slpc = rps_to_slpc(rps);
> > > + /* Waitboost should not be done with power saving profile */
> > > + if (slpc->power_profile == SLPC_POWER_PROFILES_POWER_SAVING)
> > > + return;
> > hmmm... I'm afraid this is not enough... Although I just noticed that we
> > still have a problem for the low context strategy.
> >
> > Please notice the intel_display_rps_boost_after_vblank...
> boost_after_vblank() also ends up calling intel_rps_boost(), so it will skip
> correctly whenever the power saving profile is being used. The only extra
> thing is an additional work queue addition, I guess. We could avoid that.
hmm, that is better than I thought then... although it is probably good to
ensure we don't add an extra queue...
But also, shouldn't we ensure that the boost counter goes immediatelly to zero
and that we really immediatelly stop request the boost freq when we set this
mode? or that is too fast that we shouldn't bother?
> >
> > So we probably need something like these:
> > https://github.com/rodrigovivi/linux/commit/42e24a146239a1b950ed047f619f334f5205ae8a
> >
> > other than that I believe this is good, thanks for adding this
> >
> > > +
> > > if (slpc->min_freq_softlimit >= slpc->boost_freq)
> > > return;
> > > diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> > > index c34674e797c6..6de87ae5669e 100644
> > > --- a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> > > +++ b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> > > @@ -228,6 +228,11 @@ struct slpc_optimized_strategies {
> > > #define SLPC_OPTIMIZED_STRATEGY_COMPUTE REG_BIT(0)
> > > +enum slpc_power_profiles {
> > > + SLPC_POWER_PROFILES_BASE = 0x0,
> > > + SLPC_POWER_PROFILES_POWER_SAVING = 0x1
> > > +};
> > > +
> > > /**
> > > * DOC: SLPC H2G MESSAGE FORMAT
> > > *
> > > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> > > index 706fffca698b..bee78467d4a3 100644
> > > --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> > > +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> > > @@ -15,6 +15,29 @@
> > > #include "gt/intel_gt_regs.h"
> > > #include "gt/intel_rps.h"
> > > +/**
> > > + * DOC: SLPC - Dynamic Frequency management
> > > + *
> > > + * Single Loop Power Control is a GuC based algorithm which manages
> > > + * GT frequency based on how KMD initializes its parameters. SLPC is
> > > + * almost completely in control after initialization except for the
> > > + * waitboost scenario.
> > > + *
> > > + * KMD uses concept of waitboost to ramp frequency up to RP0 when
> > > + * there are pending submissions. The addition of power profiles adds
> > > + * another level of control to these mechanisms. When we choose the power
> > > + * saving profile, SLPC will use conservative thresholds to ramp frequency,
> > > + * thus saving power. KMD will disable waitboosts when this happens to aid
> > > + * further power savings. The user has some level of control through sysfs
> > > + * where min/max frequencies can be altered and the use of efficient freq
> > > + * can be modified as well.
> > > + *
> > > + * Another form of frequency control happens through per context hints.
> > > + * A context can be marked as low latency during creation. That will ensure
> > > + * that SLPC uses an aggressive frequency ramp when that context is active.
> > > + *
> > Thanks for adding the doc!
> > but now I'm missing the documentation of these new profile strategies in here...
>
> ok, will call it out specifically.
>
> Thanks,
>
> Vinay.
>
> >
> > > + */
> > > +
> > > static inline struct intel_guc *slpc_to_guc(struct intel_guc_slpc *slpc)
> > > {
> > > return container_of(slpc, struct intel_guc, slpc);
> > > @@ -265,6 +288,8 @@ int intel_guc_slpc_init(struct intel_guc_slpc *slpc)
> > > slpc->num_boosts = 0;
> > > slpc->media_ratio_mode = SLPC_MEDIA_RATIO_MODE_DYNAMIC_CONTROL;
> > > + slpc->power_profile = SLPC_POWER_PROFILES_BASE;
> > > +
> > > mutex_init(&slpc->lock);
> > > INIT_WORK(&slpc->boost_work, slpc_boost_work);
> > > @@ -567,6 +592,34 @@ int intel_guc_slpc_set_media_ratio_mode(struct intel_guc_slpc *slpc, u32 val)
> > > return ret;
> > > }
> > > +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val)
> > > +{
> > > + struct drm_i915_private *i915 = slpc_to_i915(slpc);
> > > + intel_wakeref_t wakeref;
> > > + int ret = 0;
> > > +
> > > + if (val > SLPC_POWER_PROFILES_POWER_SAVING)
> > > + return -EINVAL;
> > > +
> > > + mutex_lock(&slpc->lock);
> > > + wakeref = intel_runtime_pm_get(&i915->runtime_pm);
> > > +
> > > + ret = slpc_set_param(slpc,
> > > + SLPC_PARAM_POWER_PROFILE,
> > > + val);
> > > + if (ret)
> > > + guc_err(slpc_to_guc(slpc),
> > > + "Failed to set power profile to %d: %pe\n",
> > > + val, ERR_PTR(ret));
> > > + else
> > > + slpc->power_profile = val;
> > > +
> > > + intel_runtime_pm_put(&i915->runtime_pm, wakeref);
> > > + mutex_unlock(&slpc->lock);
> > > +
> > > + return ret;
> > > +}
> > > +
> > > void intel_guc_pm_intrmsk_enable(struct intel_gt *gt)
> > > {
> > > u32 pm_intrmsk_mbz = 0;
> > > @@ -728,6 +781,13 @@ int intel_guc_slpc_enable(struct intel_guc_slpc *slpc)
> > > /* Enable SLPC Optimized Strategy for compute */
> > > intel_guc_slpc_set_strategy(slpc, SLPC_OPTIMIZED_STRATEGY_COMPUTE);
> > > + /* Set cached value of power_profile */
> > > + ret = intel_guc_slpc_set_power_profile(slpc, slpc->power_profile);
> > > + if (unlikely(ret)) {
> > > + guc_probe_error(guc, "Failed to set SLPC power profile: %pe\n", ERR_PTR(ret));
> > > + return ret;
> > > + }
> > > +
> > > return 0;
> > > }
> > > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> > > index 1cb5fd44f05c..fc9f761b4372 100644
> > > --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> > > +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> > > @@ -46,5 +46,6 @@ void intel_guc_slpc_boost(struct intel_guc_slpc *slpc);
> > > void intel_guc_slpc_dec_waiters(struct intel_guc_slpc *slpc);
> > > int intel_guc_slpc_set_ignore_eff_freq(struct intel_guc_slpc *slpc, bool val);
> > > int intel_guc_slpc_set_strategy(struct intel_guc_slpc *slpc, u32 val);
> > > +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val);
> > > #endif
> > > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> > > index a88651331497..83673b10ac4e 100644
> > > --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> > > +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> > > @@ -33,6 +33,9 @@ struct intel_guc_slpc {
> > > u32 max_freq_softlimit;
> > > bool ignore_eff_freq;
> > > + /* Base or power saving */
> > > + u32 power_profile;
> > > +
> > > /* cached media ratio mode */
> > > u32 media_ratio_mode;
> > > --
> > > 2.38.1
> > >
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles
2025-01-17 14:29 ` Rodrigo Vivi
@ 2025-01-17 18:21 ` Belgaumkar, Vinay
2025-01-17 18:46 ` Rodrigo Vivi
0 siblings, 1 reply; 13+ messages in thread
From: Belgaumkar, Vinay @ 2025-01-17 18:21 UTC (permalink / raw)
To: Rodrigo Vivi; +Cc: intel-gfx, dri-devel, Sushma Venkatesh Reddy
On 1/17/2025 6:29 AM, Rodrigo Vivi wrote:
> On Thu, Jan 16, 2025 at 03:51:03PM -0800, Belgaumkar, Vinay wrote:
>> On 1/16/2025 2:57 PM, Rodrigo Vivi wrote:
>>> On Fri, Jan 10, 2025 at 03:21:51PM -0800, Vinay Belgaumkar wrote:
>>>> Default SLPC power profile is Base(0). Power Saving mode(1)
>>>> has conservative up/down thresholds and is suitable for use with
>>>> apps that typically need to be power efficient.
>>>>
>>>> Selected power profile will be displayed in this format-
>>>>
>>>> $ cat slpc_power_profile
>>>>
>>>> [base] power_saving
>>>>
>>>> $ echo power_saving > slpc_power_profile
>>>> $ cat slpc_power_profile
>>>>
>>>> base [power_saving]
>>>>
>>>> v2: Disable waitboost in power saving profile and updated sysfs
>>>> format and add some kernel doc for SLPC (Rodrigo)
>>>>
>>>> Cc: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com>
>>>> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
>>>> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
>>>> ---
>>>> drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 47 +++++++++++++++
>>>> drivers/gpu/drm/i915/gt/intel_rps.c | 4 ++
>>>> .../drm/i915/gt/uc/abi/guc_actions_slpc_abi.h | 5 ++
>>>> drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 60 +++++++++++++++++++
>>>> drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h | 1 +
>>>> .../gpu/drm/i915/gt/uc/intel_guc_slpc_types.h | 3 +
>>>> 6 files changed, 120 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
>>>> index d7784650e4d9..83a7cc7dfbc8 100644
>>>> --- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
>>>> +++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
>>>> @@ -464,6 +464,45 @@ static ssize_t slpc_ignore_eff_freq_store(struct kobject *kobj,
>>>> return err ?: count;
>>>> }
>>>> +static ssize_t slpc_power_profile_show(struct kobject *kobj,
>>>> + struct kobj_attribute *attr,
>>>> + char *buff)
>>>> +{
>>>> + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
>>>> + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
>>>> +
>>>> + switch (slpc->power_profile) {
>>>> + case SLPC_POWER_PROFILES_BASE:
>>>> + return sysfs_emit(buff, "[%s] %s\n", "base", "power_saving");
>>>> + case SLPC_POWER_PROFILES_POWER_SAVING:
>>>> + return sysfs_emit(buff, "%s [%s]\n", "base", "power_saving");
>>> I had thought about something generic like kernel/power/main.c, but that is
>>> indeed not needed since we do only have 2 options. This came out cleaner
>>> than I though, although not generic...
>>>
>>>> + }
>>>> +
>>>> + return sysfs_emit(buff, "%u\n", slpc->power_profile);
>>>> +}
>>>> +
>>>> +static ssize_t slpc_power_profile_store(struct kobject *kobj,
>>>> + struct kobj_attribute *attr,
>>>> + const char *buff, size_t count)
>>>> +{
>>>> + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
>>>> + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
>>>> + char power_saving[] = "power_saving";
>>>> + char base[] = "base";
>>>> + int err;
>>>> + u32 val;
>>>> +
>>>> + if (!strncmp(buff, power_saving, sizeof(power_saving) - 1))
>>>> + val = SLPC_POWER_PROFILES_POWER_SAVING;
>>>> + else if (!strncmp(buff, base, sizeof(base) - 1))
>>>> + val = SLPC_POWER_PROFILES_BASE;
>>>> + else
>>>> + return -EINVAL;
>>>> +
>>>> + err = intel_guc_slpc_set_power_profile(slpc, val);
>>>> + return err ?: count;
>>>> +}
>>>> +
>>>> struct intel_gt_bool_throttle_attr {
>>>> struct attribute attr;
>>>> ssize_t (*show)(struct kobject *kobj, struct kobj_attribute *attr,
>>>> @@ -668,6 +707,7 @@ INTEL_GT_ATTR_RO(media_RP0_freq_mhz);
>>>> INTEL_GT_ATTR_RO(media_RPn_freq_mhz);
>>>> INTEL_GT_ATTR_RW(slpc_ignore_eff_freq);
>>>> +INTEL_GT_ATTR_RW(slpc_power_profile);
>>>> static const struct attribute *media_perf_power_attrs[] = {
>>>> &attr_media_freq_factor.attr,
>>>> @@ -864,6 +904,13 @@ void intel_gt_sysfs_pm_init(struct intel_gt *gt, struct kobject *kobj)
>>>> gt_warn(gt, "failed to create ignore_eff_freq sysfs (%pe)", ERR_PTR(ret));
>>>> }
>>>> + if (intel_uc_uses_guc_slpc(>->uc)) {
>>>> + ret = sysfs_create_file(kobj, &attr_slpc_power_profile.attr);
>>>> + if (ret)
>>>> + gt_warn(gt, "failed to create slpc_power_profile sysfs (%pe)",
>>>> + ERR_PTR(ret));
>>>> + }
>>>> +
>>>> if (i915_mmio_reg_valid(intel_gt_perf_limit_reasons_reg(gt))) {
>>>> ret = sysfs_create_files(kobj, throttle_reason_attrs);
>>>> if (ret)
>>>> diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
>>>> index fa304ea088e4..2cfaedb04876 100644
>>>> --- a/drivers/gpu/drm/i915/gt/intel_rps.c
>>>> +++ b/drivers/gpu/drm/i915/gt/intel_rps.c
>>>> @@ -1025,6 +1025,10 @@ void intel_rps_boost(struct i915_request *rq)
>>>> if (rps_uses_slpc(rps)) {
>>>> slpc = rps_to_slpc(rps);
>>>> + /* Waitboost should not be done with power saving profile */
>>>> + if (slpc->power_profile == SLPC_POWER_PROFILES_POWER_SAVING)
>>>> + return;
>>> hmmm... I'm afraid this is not enough... Although I just noticed that we
>>> still have a problem for the low context strategy.
>>>
>>> Please notice the intel_display_rps_boost_after_vblank...
>> boost_after_vblank() also ends up calling intel_rps_boost(), so it will skip
>> correctly whenever the power saving profile is being used. The only extra
>> thing is an additional work queue addition, I guess. We could avoid that.
> hmm, that is better than I thought then... although it is probably good to
> ensure we don't add an extra queue...
> But also, shouldn't we ensure that the boost counter goes immediatelly to zero
> and that we really immediatelly stop request the boost freq when we set this
> mode? or that is too fast that we shouldn't bother?
There are 2 workqueues at play here - one from intel_display_rps_boost()
and one where we place boost requests in a queue on the rps side. We
check for slpc level criteria(power profile, current min etc.) as well
as context level ones (low-latency), we could split the slpc level ones
out into another function. It is better to keep all the context related
ones in the same intel_rps_boost() function, I think.
I don't think we should set the boost counter to 0. That is per context,
so could be needed for something that is in-flight.
Thanks,
Vinay.
>
>>> So we probably need something like these:
>>> https://github.com/rodrigovivi/linux/commit/42e24a146239a1b950ed047f619f334f5205ae8a
>>>
>>> other than that I believe this is good, thanks for adding this
>>>
>>>> +
>>>> if (slpc->min_freq_softlimit >= slpc->boost_freq)
>>>> return;
>>>> diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
>>>> index c34674e797c6..6de87ae5669e 100644
>>>> --- a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
>>>> +++ b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
>>>> @@ -228,6 +228,11 @@ struct slpc_optimized_strategies {
>>>> #define SLPC_OPTIMIZED_STRATEGY_COMPUTE REG_BIT(0)
>>>> +enum slpc_power_profiles {
>>>> + SLPC_POWER_PROFILES_BASE = 0x0,
>>>> + SLPC_POWER_PROFILES_POWER_SAVING = 0x1
>>>> +};
>>>> +
>>>> /**
>>>> * DOC: SLPC H2G MESSAGE FORMAT
>>>> *
>>>> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
>>>> index 706fffca698b..bee78467d4a3 100644
>>>> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
>>>> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
>>>> @@ -15,6 +15,29 @@
>>>> #include "gt/intel_gt_regs.h"
>>>> #include "gt/intel_rps.h"
>>>> +/**
>>>> + * DOC: SLPC - Dynamic Frequency management
>>>> + *
>>>> + * Single Loop Power Control is a GuC based algorithm which manages
>>>> + * GT frequency based on how KMD initializes its parameters. SLPC is
>>>> + * almost completely in control after initialization except for the
>>>> + * waitboost scenario.
>>>> + *
>>>> + * KMD uses concept of waitboost to ramp frequency up to RP0 when
>>>> + * there are pending submissions. The addition of power profiles adds
>>>> + * another level of control to these mechanisms. When we choose the power
>>>> + * saving profile, SLPC will use conservative thresholds to ramp frequency,
>>>> + * thus saving power. KMD will disable waitboosts when this happens to aid
>>>> + * further power savings. The user has some level of control through sysfs
>>>> + * where min/max frequencies can be altered and the use of efficient freq
>>>> + * can be modified as well.
>>>> + *
>>>> + * Another form of frequency control happens through per context hints.
>>>> + * A context can be marked as low latency during creation. That will ensure
>>>> + * that SLPC uses an aggressive frequency ramp when that context is active.
>>>> + *
>>> Thanks for adding the doc!
>>> but now I'm missing the documentation of these new profile strategies in here...
>> ok, will call it out specifically.
>>
>> Thanks,
>>
>> Vinay.
>>
>>>> + */
>>>> +
>>>> static inline struct intel_guc *slpc_to_guc(struct intel_guc_slpc *slpc)
>>>> {
>>>> return container_of(slpc, struct intel_guc, slpc);
>>>> @@ -265,6 +288,8 @@ int intel_guc_slpc_init(struct intel_guc_slpc *slpc)
>>>> slpc->num_boosts = 0;
>>>> slpc->media_ratio_mode = SLPC_MEDIA_RATIO_MODE_DYNAMIC_CONTROL;
>>>> + slpc->power_profile = SLPC_POWER_PROFILES_BASE;
>>>> +
>>>> mutex_init(&slpc->lock);
>>>> INIT_WORK(&slpc->boost_work, slpc_boost_work);
>>>> @@ -567,6 +592,34 @@ int intel_guc_slpc_set_media_ratio_mode(struct intel_guc_slpc *slpc, u32 val)
>>>> return ret;
>>>> }
>>>> +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val)
>>>> +{
>>>> + struct drm_i915_private *i915 = slpc_to_i915(slpc);
>>>> + intel_wakeref_t wakeref;
>>>> + int ret = 0;
>>>> +
>>>> + if (val > SLPC_POWER_PROFILES_POWER_SAVING)
>>>> + return -EINVAL;
>>>> +
>>>> + mutex_lock(&slpc->lock);
>>>> + wakeref = intel_runtime_pm_get(&i915->runtime_pm);
>>>> +
>>>> + ret = slpc_set_param(slpc,
>>>> + SLPC_PARAM_POWER_PROFILE,
>>>> + val);
>>>> + if (ret)
>>>> + guc_err(slpc_to_guc(slpc),
>>>> + "Failed to set power profile to %d: %pe\n",
>>>> + val, ERR_PTR(ret));
>>>> + else
>>>> + slpc->power_profile = val;
>>>> +
>>>> + intel_runtime_pm_put(&i915->runtime_pm, wakeref);
>>>> + mutex_unlock(&slpc->lock);
>>>> +
>>>> + return ret;
>>>> +}
>>>> +
>>>> void intel_guc_pm_intrmsk_enable(struct intel_gt *gt)
>>>> {
>>>> u32 pm_intrmsk_mbz = 0;
>>>> @@ -728,6 +781,13 @@ int intel_guc_slpc_enable(struct intel_guc_slpc *slpc)
>>>> /* Enable SLPC Optimized Strategy for compute */
>>>> intel_guc_slpc_set_strategy(slpc, SLPC_OPTIMIZED_STRATEGY_COMPUTE);
>>>> + /* Set cached value of power_profile */
>>>> + ret = intel_guc_slpc_set_power_profile(slpc, slpc->power_profile);
>>>> + if (unlikely(ret)) {
>>>> + guc_probe_error(guc, "Failed to set SLPC power profile: %pe\n", ERR_PTR(ret));
>>>> + return ret;
>>>> + }
>>>> +
>>>> return 0;
>>>> }
>>>> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
>>>> index 1cb5fd44f05c..fc9f761b4372 100644
>>>> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
>>>> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
>>>> @@ -46,5 +46,6 @@ void intel_guc_slpc_boost(struct intel_guc_slpc *slpc);
>>>> void intel_guc_slpc_dec_waiters(struct intel_guc_slpc *slpc);
>>>> int intel_guc_slpc_set_ignore_eff_freq(struct intel_guc_slpc *slpc, bool val);
>>>> int intel_guc_slpc_set_strategy(struct intel_guc_slpc *slpc, u32 val);
>>>> +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val);
>>>> #endif
>>>> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
>>>> index a88651331497..83673b10ac4e 100644
>>>> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
>>>> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
>>>> @@ -33,6 +33,9 @@ struct intel_guc_slpc {
>>>> u32 max_freq_softlimit;
>>>> bool ignore_eff_freq;
>>>> + /* Base or power saving */
>>>> + u32 power_profile;
>>>> +
>>>> /* cached media ratio mode */
>>>> u32 media_ratio_mode;
>>>> --
>>>> 2.38.1
>>>>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles
2025-01-17 18:21 ` Belgaumkar, Vinay
@ 2025-01-17 18:46 ` Rodrigo Vivi
0 siblings, 0 replies; 13+ messages in thread
From: Rodrigo Vivi @ 2025-01-17 18:46 UTC (permalink / raw)
To: Belgaumkar, Vinay; +Cc: intel-gfx, dri-devel, Sushma Venkatesh Reddy
On Fri, Jan 17, 2025 at 10:21:53AM -0800, Belgaumkar, Vinay wrote:
>
> On 1/17/2025 6:29 AM, Rodrigo Vivi wrote:
> > On Thu, Jan 16, 2025 at 03:51:03PM -0800, Belgaumkar, Vinay wrote:
> > > On 1/16/2025 2:57 PM, Rodrigo Vivi wrote:
> > > > On Fri, Jan 10, 2025 at 03:21:51PM -0800, Vinay Belgaumkar wrote:
> > > > > Default SLPC power profile is Base(0). Power Saving mode(1)
> > > > > has conservative up/down thresholds and is suitable for use with
> > > > > apps that typically need to be power efficient.
> > > > >
> > > > > Selected power profile will be displayed in this format-
> > > > >
> > > > > $ cat slpc_power_profile
> > > > >
> > > > > [base] power_saving
> > > > >
> > > > > $ echo power_saving > slpc_power_profile
> > > > > $ cat slpc_power_profile
> > > > >
> > > > > base [power_saving]
> > > > >
> > > > > v2: Disable waitboost in power saving profile and updated sysfs
> > > > > format and add some kernel doc for SLPC (Rodrigo)
> > > > >
> > > > > Cc: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com>
> > > > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > > > > Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
> > > > > ---
> > > > > drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 47 +++++++++++++++
> > > > > drivers/gpu/drm/i915/gt/intel_rps.c | 4 ++
> > > > > .../drm/i915/gt/uc/abi/guc_actions_slpc_abi.h | 5 ++
> > > > > drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 60 +++++++++++++++++++
> > > > > drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h | 1 +
> > > > > .../gpu/drm/i915/gt/uc/intel_guc_slpc_types.h | 3 +
> > > > > 6 files changed, 120 insertions(+)
> > > > >
> > > > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> > > > > index d7784650e4d9..83a7cc7dfbc8 100644
> > > > > --- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> > > > > +++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> > > > > @@ -464,6 +464,45 @@ static ssize_t slpc_ignore_eff_freq_store(struct kobject *kobj,
> > > > > return err ?: count;
> > > > > }
> > > > > +static ssize_t slpc_power_profile_show(struct kobject *kobj,
> > > > > + struct kobj_attribute *attr,
> > > > > + char *buff)
> > > > > +{
> > > > > + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
> > > > > + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
> > > > > +
> > > > > + switch (slpc->power_profile) {
> > > > > + case SLPC_POWER_PROFILES_BASE:
> > > > > + return sysfs_emit(buff, "[%s] %s\n", "base", "power_saving");
> > > > > + case SLPC_POWER_PROFILES_POWER_SAVING:
> > > > > + return sysfs_emit(buff, "%s [%s]\n", "base", "power_saving");
> > > > I had thought about something generic like kernel/power/main.c, but that is
> > > > indeed not needed since we do only have 2 options. This came out cleaner
> > > > than I though, although not generic...
> > > >
> > > > > + }
> > > > > +
> > > > > + return sysfs_emit(buff, "%u\n", slpc->power_profile);
> > > > > +}
> > > > > +
> > > > > +static ssize_t slpc_power_profile_store(struct kobject *kobj,
> > > > > + struct kobj_attribute *attr,
> > > > > + const char *buff, size_t count)
> > > > > +{
> > > > > + struct intel_gt *gt = intel_gt_sysfs_get_drvdata(kobj, attr->attr.name);
> > > > > + struct intel_guc_slpc *slpc = >->uc.guc.slpc;
> > > > > + char power_saving[] = "power_saving";
> > > > > + char base[] = "base";
> > > > > + int err;
> > > > > + u32 val;
> > > > > +
> > > > > + if (!strncmp(buff, power_saving, sizeof(power_saving) - 1))
> > > > > + val = SLPC_POWER_PROFILES_POWER_SAVING;
> > > > > + else if (!strncmp(buff, base, sizeof(base) - 1))
> > > > > + val = SLPC_POWER_PROFILES_BASE;
> > > > > + else
> > > > > + return -EINVAL;
> > > > > +
> > > > > + err = intel_guc_slpc_set_power_profile(slpc, val);
> > > > > + return err ?: count;
> > > > > +}
> > > > > +
> > > > > struct intel_gt_bool_throttle_attr {
> > > > > struct attribute attr;
> > > > > ssize_t (*show)(struct kobject *kobj, struct kobj_attribute *attr,
> > > > > @@ -668,6 +707,7 @@ INTEL_GT_ATTR_RO(media_RP0_freq_mhz);
> > > > > INTEL_GT_ATTR_RO(media_RPn_freq_mhz);
> > > > > INTEL_GT_ATTR_RW(slpc_ignore_eff_freq);
> > > > > +INTEL_GT_ATTR_RW(slpc_power_profile);
> > > > > static const struct attribute *media_perf_power_attrs[] = {
> > > > > &attr_media_freq_factor.attr,
> > > > > @@ -864,6 +904,13 @@ void intel_gt_sysfs_pm_init(struct intel_gt *gt, struct kobject *kobj)
> > > > > gt_warn(gt, "failed to create ignore_eff_freq sysfs (%pe)", ERR_PTR(ret));
> > > > > }
> > > > > + if (intel_uc_uses_guc_slpc(>->uc)) {
> > > > > + ret = sysfs_create_file(kobj, &attr_slpc_power_profile.attr);
> > > > > + if (ret)
> > > > > + gt_warn(gt, "failed to create slpc_power_profile sysfs (%pe)",
> > > > > + ERR_PTR(ret));
> > > > > + }
> > > > > +
> > > > > if (i915_mmio_reg_valid(intel_gt_perf_limit_reasons_reg(gt))) {
> > > > > ret = sysfs_create_files(kobj, throttle_reason_attrs);
> > > > > if (ret)
> > > > > diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
> > > > > index fa304ea088e4..2cfaedb04876 100644
> > > > > --- a/drivers/gpu/drm/i915/gt/intel_rps.c
> > > > > +++ b/drivers/gpu/drm/i915/gt/intel_rps.c
> > > > > @@ -1025,6 +1025,10 @@ void intel_rps_boost(struct i915_request *rq)
> > > > > if (rps_uses_slpc(rps)) {
> > > > > slpc = rps_to_slpc(rps);
> > > > > + /* Waitboost should not be done with power saving profile */
> > > > > + if (slpc->power_profile == SLPC_POWER_PROFILES_POWER_SAVING)
> > > > > + return;
> > > > hmmm... I'm afraid this is not enough... Although I just noticed that we
> > > > still have a problem for the low context strategy.
> > > >
> > > > Please notice the intel_display_rps_boost_after_vblank...
> > > boost_after_vblank() also ends up calling intel_rps_boost(), so it will skip
> > > correctly whenever the power saving profile is being used. The only extra
> > > thing is an additional work queue addition, I guess. We could avoid that.
> > hmm, that is better than I thought then... although it is probably good to
> > ensure we don't add an extra queue...
> > But also, shouldn't we ensure that the boost counter goes immediatelly to zero
> > and that we really immediatelly stop request the boost freq when we set this
> > mode? or that is too fast that we shouldn't bother?
>
> There are 2 workqueues at play here - one from intel_display_rps_boost() and
> one where we place boost requests in a queue on the rps side. We check for
> slpc level criteria(power profile, current min etc.) as well as context
> level ones (low-latency), we could split the slpc level ones out into
> another function. It is better to keep all the context related ones in the
> same intel_rps_boost() function, I think.
>
> I don't think we should set the boost counter to 0. That is per context, so
> could be needed for something that is in-flight.
Fair enough! Let's just add the doc then...
>
> Thanks,
>
> Vinay.
>
> >
> > > > So we probably need something like these:
> > > > https://github.com/rodrigovivi/linux/commit/42e24a146239a1b950ed047f619f334f5205ae8a
> > > >
> > > > other than that I believe this is good, thanks for adding this
> > > >
> > > > > +
> > > > > if (slpc->min_freq_softlimit >= slpc->boost_freq)
> > > > > return;
> > > > > diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> > > > > index c34674e797c6..6de87ae5669e 100644
> > > > > --- a/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> > > > > +++ b/drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
> > > > > @@ -228,6 +228,11 @@ struct slpc_optimized_strategies {
> > > > > #define SLPC_OPTIMIZED_STRATEGY_COMPUTE REG_BIT(0)
> > > > > +enum slpc_power_profiles {
> > > > > + SLPC_POWER_PROFILES_BASE = 0x0,
> > > > > + SLPC_POWER_PROFILES_POWER_SAVING = 0x1
> > > > > +};
> > > > > +
> > > > > /**
> > > > > * DOC: SLPC H2G MESSAGE FORMAT
> > > > > *
> > > > > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> > > > > index 706fffca698b..bee78467d4a3 100644
> > > > > --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> > > > > +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> > > > > @@ -15,6 +15,29 @@
> > > > > #include "gt/intel_gt_regs.h"
> > > > > #include "gt/intel_rps.h"
> > > > > +/**
> > > > > + * DOC: SLPC - Dynamic Frequency management
> > > > > + *
> > > > > + * Single Loop Power Control is a GuC based algorithm which manages
> > > > > + * GT frequency based on how KMD initializes its parameters. SLPC is
> > > > > + * almost completely in control after initialization except for the
> > > > > + * waitboost scenario.
> > > > > + *
> > > > > + * KMD uses concept of waitboost to ramp frequency up to RP0 when
> > > > > + * there are pending submissions. The addition of power profiles adds
> > > > > + * another level of control to these mechanisms. When we choose the power
> > > > > + * saving profile, SLPC will use conservative thresholds to ramp frequency,
> > > > > + * thus saving power. KMD will disable waitboosts when this happens to aid
> > > > > + * further power savings. The user has some level of control through sysfs
> > > > > + * where min/max frequencies can be altered and the use of efficient freq
> > > > > + * can be modified as well.
> > > > > + *
> > > > > + * Another form of frequency control happens through per context hints.
> > > > > + * A context can be marked as low latency during creation. That will ensure
> > > > > + * that SLPC uses an aggressive frequency ramp when that context is active.
> > > > > + *
> > > > Thanks for adding the doc!
> > > > but now I'm missing the documentation of these new profile strategies in here...
> > > ok, will call it out specifically.
> > >
> > > Thanks,
> > >
> > > Vinay.
> > >
> > > > > + */
> > > > > +
> > > > > static inline struct intel_guc *slpc_to_guc(struct intel_guc_slpc *slpc)
> > > > > {
> > > > > return container_of(slpc, struct intel_guc, slpc);
> > > > > @@ -265,6 +288,8 @@ int intel_guc_slpc_init(struct intel_guc_slpc *slpc)
> > > > > slpc->num_boosts = 0;
> > > > > slpc->media_ratio_mode = SLPC_MEDIA_RATIO_MODE_DYNAMIC_CONTROL;
> > > > > + slpc->power_profile = SLPC_POWER_PROFILES_BASE;
> > > > > +
> > > > > mutex_init(&slpc->lock);
> > > > > INIT_WORK(&slpc->boost_work, slpc_boost_work);
> > > > > @@ -567,6 +592,34 @@ int intel_guc_slpc_set_media_ratio_mode(struct intel_guc_slpc *slpc, u32 val)
> > > > > return ret;
> > > > > }
> > > > > +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val)
> > > > > +{
> > > > > + struct drm_i915_private *i915 = slpc_to_i915(slpc);
> > > > > + intel_wakeref_t wakeref;
> > > > > + int ret = 0;
> > > > > +
> > > > > + if (val > SLPC_POWER_PROFILES_POWER_SAVING)
> > > > > + return -EINVAL;
> > > > > +
> > > > > + mutex_lock(&slpc->lock);
> > > > > + wakeref = intel_runtime_pm_get(&i915->runtime_pm);
> > > > > +
> > > > > + ret = slpc_set_param(slpc,
> > > > > + SLPC_PARAM_POWER_PROFILE,
> > > > > + val);
> > > > > + if (ret)
> > > > > + guc_err(slpc_to_guc(slpc),
> > > > > + "Failed to set power profile to %d: %pe\n",
> > > > > + val, ERR_PTR(ret));
> > > > > + else
> > > > > + slpc->power_profile = val;
> > > > > +
> > > > > + intel_runtime_pm_put(&i915->runtime_pm, wakeref);
> > > > > + mutex_unlock(&slpc->lock);
> > > > > +
> > > > > + return ret;
> > > > > +}
> > > > > +
> > > > > void intel_guc_pm_intrmsk_enable(struct intel_gt *gt)
> > > > > {
> > > > > u32 pm_intrmsk_mbz = 0;
> > > > > @@ -728,6 +781,13 @@ int intel_guc_slpc_enable(struct intel_guc_slpc *slpc)
> > > > > /* Enable SLPC Optimized Strategy for compute */
> > > > > intel_guc_slpc_set_strategy(slpc, SLPC_OPTIMIZED_STRATEGY_COMPUTE);
> > > > > + /* Set cached value of power_profile */
> > > > > + ret = intel_guc_slpc_set_power_profile(slpc, slpc->power_profile);
> > > > > + if (unlikely(ret)) {
> > > > > + guc_probe_error(guc, "Failed to set SLPC power profile: %pe\n", ERR_PTR(ret));
> > > > > + return ret;
> > > > > + }
> > > > > +
> > > > > return 0;
> > > > > }
> > > > > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> > > > > index 1cb5fd44f05c..fc9f761b4372 100644
> > > > > --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> > > > > +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
> > > > > @@ -46,5 +46,6 @@ void intel_guc_slpc_boost(struct intel_guc_slpc *slpc);
> > > > > void intel_guc_slpc_dec_waiters(struct intel_guc_slpc *slpc);
> > > > > int intel_guc_slpc_set_ignore_eff_freq(struct intel_guc_slpc *slpc, bool val);
> > > > > int intel_guc_slpc_set_strategy(struct intel_guc_slpc *slpc, u32 val);
> > > > > +int intel_guc_slpc_set_power_profile(struct intel_guc_slpc *slpc, u32 val);
> > > > > #endif
> > > > > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> > > > > index a88651331497..83673b10ac4e 100644
> > > > > --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> > > > > +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
> > > > > @@ -33,6 +33,9 @@ struct intel_guc_slpc {
> > > > > u32 max_freq_softlimit;
> > > > > bool ignore_eff_freq;
> > > > > + /* Base or power saving */
> > > > > + u32 power_profile;
> > > > > +
> > > > > /* cached media ratio mode */
> > > > > u32 media_ratio_mode;
> > > > > --
> > > > > 2.38.1
> > > > >
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2025-01-17 18:46 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-10 23:21 [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Vinay Belgaumkar
2025-01-11 0:04 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev2) Patchwork
2025-01-11 0:04 ` ✗ Fi.CI.SPARSE: " Patchwork
2025-01-11 0:29 ` ✗ i915.CI.BAT: failure " Patchwork
2025-01-16 2:24 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/slpc: Add sysfs for SLPC power profiles (rev3) Patchwork
2025-01-16 2:24 ` ✗ Fi.CI.SPARSE: " Patchwork
2025-01-16 2:49 ` ✓ i915.CI.BAT: success " Patchwork
2025-01-16 6:44 ` ✓ i915.CI.Full: " Patchwork
2025-01-16 22:57 ` [PATCH v2] drm/i915/slpc: Add sysfs for SLPC power profiles Rodrigo Vivi
2025-01-16 23:51 ` Belgaumkar, Vinay
2025-01-17 14:29 ` Rodrigo Vivi
2025-01-17 18:21 ` Belgaumkar, Vinay
2025-01-17 18:46 ` Rodrigo Vivi
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.