* [PATCH 00/10] Introduce drm sharpness property
@ 2025-03-04 10:28 Nemesa Garg
2025-03-04 10:28 ` [PATCH 01/10] drm/i915/display: Introduce sharpness strength property Nemesa Garg
` (13 more replies)
0 siblings, 14 replies; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Many a times images are blurred or upscaled content is also not as
crisp as original rendered image. Traditional sharpening techniques often
apply a uniform level of enhancement across entire image, which sometimes
result in over-sharpening of some areas and potential loss of natural details.
Intel has come up with Display Engine based adaptive sharpening filter
with minimal power and performance impact. From LNL onwards, the Display
hardware can use one of the pipe scaler for adaptive sharpness filter.
This can be used for both gaming and non-gaming use cases like photos,
image viewing. It works on a region of pixels depending on the tap size.
This is an attempt to introduce an adaptive sharpness solution which
helps in improving the image quality. For this new CRTC property is added.
The user can set this property with desired sharpness strength value with
0-255. A value of 1 representing minimum sharpening strength and 255
representing maximum sharpness strength. A strength value of 0 means no
sharpening or sharpening feature disabled.
It works on a region of pixels depending on the tap size. The coefficients
are used to generate an alpha value which is used to blend the sharpened
image to original image.
Middleware MR link: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3665
IGT patchwork link: https://patchwork.freedesktop.org/series/130218/
Continuing discussions from: https://patchwork.freedesktop.org/series/129888/
Nemesa Garg (10):
drm/i915/display: Introduce sharpness strength property
drm/i915/display: Introduce HAS_CASF macro
drm/i915/display: Add sharpness strength and winsize
drm/i915/display: Add filter lut values
drm/i915/display: Compute the scaler filter coefficients
drm/i915/display: Add and compute scaler parameter
drm/i915/display: Configure the second scaler for sharpness
drm/i915/display: Call the compute function
drm/i915/display: Enable/disable casf
drm/i915/display: Expose casf property
drivers/gpu/drm/drm_atomic_uapi.c | 4 +
drivers/gpu/drm/drm_crtc.c | 35 +++
drivers/gpu/drm/i915/Makefile | 1 +
drivers/gpu/drm/i915/display/intel_casf.c | 254 ++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 23 ++
.../gpu/drm/i915/display/intel_casf_regs.h | 41 +++
drivers/gpu/drm/i915/display/intel_crtc.c | 3 +
.../drm/i915/display/intel_crtc_state_dump.c | 7 +
drivers/gpu/drm/i915/display/intel_display.c | 42 ++-
.../drm/i915/display/intel_display_device.h | 1 +
.../drm/i915/display/intel_display_types.h | 15 ++
drivers/gpu/drm/i915/display/skl_scaler.c | 107 +++++++-
drivers/gpu/drm/i915/display/skl_scaler.h | 1 +
drivers/gpu/drm/xe/Makefile | 1 +
include/drm/drm_crtc.h | 17 ++
15 files changed, 537 insertions(+), 15 deletions(-)
create mode 100644 drivers/gpu/drm/i915/display/intel_casf.c
create mode 100644 drivers/gpu/drm/i915/display/intel_casf.h
create mode 100644 drivers/gpu/drm/i915/display/intel_casf_regs.h
--
2.25.1
^ permalink raw reply [flat|nested] 36+ messages in thread
* [PATCH 01/10] drm/i915/display: Introduce sharpness strength property
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-04 10:28 ` [PATCH 02/10] drm/i915/display: Introduce HAS_CASF macro Nemesa Garg
` (12 subsequent siblings)
13 siblings, 0 replies; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Introduces the new crtc property "SHARPNESS_STRENGTH" that allows
the user to set the intensity so as to get the sharpness effect.
The value of this property can be set from 0-255.
It is useful in scenario when the output is blurry and user
want to sharpen the pixels. User can increase/decrease the
sharpness level depending on the content displayed.
v2: Rename crtc property variable [Arun]
Add modeset detail in uapi doc[Uma]
v3: Fix build issue
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/drm_atomic_uapi.c | 4 ++++
drivers/gpu/drm/drm_crtc.c | 35 +++++++++++++++++++++++++++++++
include/drm/drm_crtc.h | 17 +++++++++++++++
3 files changed, 56 insertions(+)
diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
index 2765ba90ad8f..65eea6362fc0 100644
--- a/drivers/gpu/drm/drm_atomic_uapi.c
+++ b/drivers/gpu/drm/drm_atomic_uapi.c
@@ -418,6 +418,8 @@ static int drm_atomic_crtc_set_property(struct drm_crtc *crtc,
set_out_fence_for_crtc(state->state, crtc, fence_ptr);
} else if (property == crtc->scaling_filter_property) {
state->scaling_filter = val;
+ } else if (property == crtc->sharpness_strength_property) {
+ state->sharpness_strength = val;
} else if (crtc->funcs->atomic_set_property) {
return crtc->funcs->atomic_set_property(crtc, state, property, val);
} else {
@@ -455,6 +457,8 @@ drm_atomic_crtc_get_property(struct drm_crtc *crtc,
*val = 0;
else if (property == crtc->scaling_filter_property)
*val = state->scaling_filter;
+ else if (property == crtc->sharpness_strength_property)
+ *val = state->sharpness_strength;
else if (crtc->funcs->atomic_get_property)
return crtc->funcs->atomic_get_property(crtc, state, property, val);
else {
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
index 46655339003d..1b7ce99cea5e 100644
--- a/drivers/gpu/drm/drm_crtc.c
+++ b/drivers/gpu/drm/drm_crtc.c
@@ -229,6 +229,25 @@ struct dma_fence *drm_crtc_create_fence(struct drm_crtc *crtc)
* Driver's default scaling filter
* Nearest Neighbor:
* Nearest Neighbor scaling filter
+ * SHARPNESS_STRENGTH:
+ * Atomic property for setting the sharpness strength/intensity by userspace.
+ *
+ * The value of this property is set as an integer value ranging
+ * from 0 - 255 where:
+ *
+ * 0 means feature is disabled.
+ *
+ * 1 means minimum sharpness.
+ *
+ * 255 means maximum sharpness.
+ *
+ * User can gradually increase or decrease the sharpness level and can
+ * set the optimum value depending on content and this value will be
+ * passed to kernel through the Uapi.
+ * The setting of this property does not require modeset.
+ * The sharpness effect takes place post blending on the final composed output.
+ * If the feature is disabled, the content remains same without any sharpening effect
+ * and when this feature is applied, it enhances the clarity of the content.
*/
__printf(6, 0)
@@ -940,6 +959,22 @@ int drm_crtc_create_scaling_filter_property(struct drm_crtc *crtc,
}
EXPORT_SYMBOL(drm_crtc_create_scaling_filter_property);
+int drm_crtc_create_sharpness_strength_property(struct drm_crtc *crtc)
+{
+ struct drm_device *dev = crtc->dev;
+ struct drm_property *prop =
+ drm_property_create_range(dev, 0, "SHARPNESS_STRENGTH", 0, 255);
+
+ if (!prop)
+ return -ENOMEM;
+
+ crtc->sharpness_strength_property = prop;
+ drm_object_attach_property(&crtc->base, prop, 0);
+
+ return 0;
+}
+EXPORT_SYMBOL(drm_crtc_create_sharpness_strength_property);
+
/**
* drm_crtc_in_clone_mode - check if the given CRTC state is in clone mode
*
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
index caa56e039da2..2b26b90e82e6 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
@@ -317,6 +317,16 @@ struct drm_crtc_state {
*/
enum drm_scaling_filter scaling_filter;
+ /**
+ * @sharpness_strength:
+ *
+ * Used by the user to set the sharpness intensity.
+ * The value ranges from 0-255.
+ * Any value greater than 0 means enabling the featuring
+ * along with setting the value for sharpness.
+ */
+ u8 sharpness_strength;
+
/**
* @event:
*
@@ -1088,6 +1098,12 @@ struct drm_crtc {
*/
struct drm_property *scaling_filter_property;
+ /**
+ * @sharpness_strength_property: property to apply
+ * the intensity of the sharpness requested.
+ */
+ struct drm_property *sharpness_strength_property;
+
/**
* @state:
*
@@ -1324,4 +1340,5 @@ static inline struct drm_crtc *drm_crtc_find(struct drm_device *dev,
int drm_crtc_create_scaling_filter_property(struct drm_crtc *crtc,
unsigned int supported_filters);
bool drm_crtc_in_clone_mode(struct drm_crtc_state *crtc_state);
+int drm_crtc_create_sharpness_strength_property(struct drm_crtc *crtc);
#endif /* __DRM_CRTC_H__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 02/10] drm/i915/display: Introduce HAS_CASF macro
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-03-04 10:28 ` [PATCH 01/10] drm/i915/display: Introduce sharpness strength property Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 11:55 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 03/10] drm/i915/display: Add sharpness strength and winsize Nemesa Garg
` (11 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Add the macro for casf HAS_CASF.
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_display_device.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/i915/display/intel_display_device.h b/drivers/gpu/drm/i915/display/intel_display_device.h
index 717286981687..238488c4c3aa 100644
--- a/drivers/gpu/drm/i915/display/intel_display_device.h
+++ b/drivers/gpu/drm/i915/display/intel_display_device.h
@@ -191,6 +191,7 @@ struct intel_display_platforms {
#define HAS_VRR(__display) (DISPLAY_VER(__display) >= 11)
#define HAS_AS_SDP(__display) (DISPLAY_VER(__display) >= 13)
#define HAS_CMRR(__display) (DISPLAY_VER(__display) >= 20)
+#define HAS_CASF(__display) (DISPLAY_VER(__display) >= 20)
#define INTEL_NUM_PIPES(__display) (hweight8(DISPLAY_RUNTIME_INFO(__display)->pipe_mask))
#define I915_HAS_HOTPLUG(__display) (DISPLAY_INFO(__display)->has_hotplug)
#define OVERLAY_NEEDS_PHYSICAL(__display) (DISPLAY_INFO(__display)->overlay_needs_physical)
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 03/10] drm/i915/display: Add sharpness strength and winsize
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-03-04 10:28 ` [PATCH 01/10] drm/i915/display: Introduce sharpness strength property Nemesa Garg
2025-03-04 10:28 ` [PATCH 02/10] drm/i915/display: Introduce HAS_CASF macro Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 11:58 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
` (10 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 7938 bytes --]
Add new registers and related bits. Compute the strength
value and tap value based on display mode.
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/Makefile | 1 +
drivers/gpu/drm/i915/display/intel_casf.c | 68 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 16 +++++
.../gpu/drm/i915/display/intel_casf_regs.h | 23 +++++++
.../drm/i915/display/intel_crtc_state_dump.c | 7 ++
.../drm/i915/display/intel_display_types.h | 7 ++
drivers/gpu/drm/i915/display/skl_scaler.c | 1 +
drivers/gpu/drm/xe/Makefile | 1 +
8 files changed, 124 insertions(+)
create mode 100644 drivers/gpu/drm/i915/display/intel_casf.c
create mode 100644 drivers/gpu/drm/i915/display/intel_casf.h
create mode 100644 drivers/gpu/drm/i915/display/intel_casf_regs.h
diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
index ed05b131ed3a..d7550b26cdfb 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -230,6 +230,7 @@ i915-y += \
display/intel_bios.o \
display/intel_bo.o \
display/intel_bw.o \
+ display/intel_casf.o \
display/intel_cdclk.o \
display/intel_cmtg.o \
display/intel_color.o \
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
new file mode 100644
index 000000000000..2c406e7c5fb6
--- /dev/null
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -0,0 +1,68 @@
+// SPDX-License-Identifier: MIT
+/*
+ * Copyright © 2025 Intel Corporation
+ *
+ */
+#include "i915_reg.h"
+#include "intel_casf.h"
+#include "intel_casf_regs.h"
+#include "intel_de.h"
+#include "intel_display_types.h"
+
+#define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
+#define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
+
+/**
+ * DOC: Content Adaptive Sharpness Filter (CASF)
+ *
+ * From LNL onwards the display engine based adaptive
+ * sharpening filter is supported. This helps in
+ * improving the image quality. The display hardware
+ * uses one of the pipe scaler for implementing casf.
+ * It works on a region of pixels depending on the
+ * tap size. The coefficients are used to generate an
+ * alpha value which is used to blend the sharpened image
+ * to original image.
+ */
+
+void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
+
+ intel_de_rmw(display, SHARPNESS_CTL(crtc->pipe), 0,
+ FILTER_STRENGTH(crtc_state->hw.casf_params.strength));
+}
+
+static void intel_casf_compute_win_size(struct intel_crtc_state *crtc_state)
+{
+ const struct drm_display_mode *mode = &crtc_state->hw.adjusted_mode;
+ u16 total_pixels = mode->hdisplay * mode->vdisplay;
+
+ if (total_pixels <= MAX_PIXELS_FOR_3_TAP_FILTER)
+ crtc_state->hw.casf_params.win_size = SHARPNESS_FILTER_SIZE_3X3;
+ else if (total_pixels <= MAX_PIXELS_FOR_5_TAP_FILTER)
+ crtc_state->hw.casf_params.win_size = SHARPNESS_FILTER_SIZE_5X5;
+ else
+ crtc_state->hw.casf_params.win_size = SHARPNESS_FILTER_SIZE_7X7;
+}
+
+int intel_casf_compute_config(struct intel_crtc_state *crtc_state)
+{
+ crtc_state->hw.casf_params.casf_enable = true;
+
+ /*
+ * HW takes a value in form (1.0 + strength) in 4.4 fixed format.
+ * Strength is from 0.0-14.9375 ie from 0-239.
+ * User can give value from 0-255 but is clamped to 239.
+ * Ex. User gives 85 which is 5.3125 and adding 1.0 gives 6.3125.
+ * 6.3125 in 4.4 format is b01100101 which is equal to 101.
+ * Also 85 + 16 = 101.
+ */
+ crtc_state->hw.casf_params.strength =
+ min(crtc_state->uapi.sharpness_strength, 0xEF) + 0x10;
+
+ intel_casf_compute_win_size(crtc_state);
+
+ return 0;
+}
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
new file mode 100644
index 000000000000..6e308c367c17
--- /dev/null
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2025 Intel Corporation
+ */
+
+#ifndef __INTEL_CASF_H__
+#define __INTEL_CASF_H__
+
+#include <linux/types.h>
+
+struct intel_crtc_state;
+
+int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
+void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
+
+#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
new file mode 100644
index 000000000000..e5fa4d9bb309
--- /dev/null
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2025 Intel Corporation
+ */
+
+#ifndef __INTEL_CASF_REGS_H__
+#define __INTEL_CASF_REGS_H__
+
+#include "intel_display_reg_defs.h"
+
+#define _SHARPNESS_CTL_A 0x682B0
+#define _SHARPNESS_CTL_B 0x68AB0
+#define SHARPNESS_CTL(pipe) _MMIO_PIPE(pipe, _SHARPNESS_CTL_A, _SHARPNESS_CTL_B)
+#define FILTER_EN REG_BIT(31)
+#define FILTER_STRENGTH_MASK REG_GENMASK(15, 8)
+#define FILTER_STRENGTH(x) REG_FIELD_PREP(FILTER_STRENGTH_MASK, (x))
+#define FILTER_SIZE_MASK REG_GENMASK(1, 0)
+#define SHARPNESS_FILTER_SIZE_3X3 REG_FIELD_PREP(FILTER_SIZE_MASK, 0)
+#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
+#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+
+#endif /* __INTEL_CASF_REGS__ */
+
diff --git a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
index 599ddce96371..66b6fbae8294 100644
--- a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
+++ b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
@@ -372,6 +372,13 @@ void intel_crtc_state_dump(const struct intel_crtc_state *pipe_config,
intel_vdsc_state_dump(&p, 0, pipe_config);
+ if (HAS_CASF(i915)) {
+ drm_printf(&p, "sharpness strength: %d, sharpness tap size :%d\n sharpness enable :%d\n",
+ pipe_config->hw.casf_params.strength,
+ pipe_config->hw.casf_params.win_size,
+ pipe_config->hw.casf_params.casf_enable);
+ }
+
dump_planes:
if (!state)
return;
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index 99a6fd2900b9..ccaf9dd4f6a8 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -931,6 +931,12 @@ struct intel_csc_matrix {
u16 postoff[3];
};
+struct intel_casf {
+ u8 strength;
+ u8 win_size;
+ bool casf_enable;
+};
+
void intel_io_mmio_fw_write(void *ctx, i915_reg_t reg, u32 val);
typedef void (*intel_io_reg_write)(void *ctx, i915_reg_t reg, u32 val);
@@ -971,6 +977,7 @@ struct intel_crtc_state {
struct drm_property_blob *degamma_lut, *gamma_lut, *ctm;
struct drm_display_mode mode, pipe_mode, adjusted_mode;
enum drm_scaling_filter scaling_filter;
+ struct intel_casf casf_params;
} hw;
/* actual state of LUTs */
diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
index ee81220a7c88..f0cf966211c9 100644
--- a/drivers/gpu/drm/i915/display/skl_scaler.c
+++ b/drivers/gpu/drm/i915/display/skl_scaler.c
@@ -5,6 +5,7 @@
#include "i915_drv.h"
#include "i915_reg.h"
+#include "intel_casf_regs.h"
#include "intel_de.h"
#include "intel_display_trace.h"
#include "intel_display_types.h"
diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
index 856b14fe1c4d..a6156f59c039 100644
--- a/drivers/gpu/drm/xe/Makefile
+++ b/drivers/gpu/drm/xe/Makefile
@@ -207,6 +207,7 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \
i915-display/intel_backlight.o \
i915-display/intel_bios.o \
i915-display/intel_bw.o \
+ i915-display/intel_casf.o \
i915-display/intel_cdclk.o \
i915-display/intel_cmtg.o \
i915-display/intel_color.o \
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (2 preceding siblings ...)
2025-03-04 10:28 ` [PATCH 03/10] drm/i915/display: Add sharpness strength and winsize Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 12:00 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 05/10] drm/i915/display: Compute the scaler filter coefficients Nemesa Garg
` (9 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Add the register bits related to filter lut values
and populate the table.
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 22 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 3 +++
.../gpu/drm/i915/display/intel_casf_regs.h | 11 ++++++++++
3 files changed, 36 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 2c406e7c5fb6..ed72bccbb93f 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -25,6 +25,28 @@
* to original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+void intel_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 6e308c367c17..faeed50de2ba 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,8 +9,11 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
+void intel_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index e5fa4d9bb309..c61755a401ff 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,5 +19,16 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 05/10] drm/i915/display: Compute the scaler filter coefficients
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (3 preceding siblings ...)
2025-03-04 10:28 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 12:02 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 06/10] drm/i915/display: Add and compute scaler parameter Nemesa Garg
` (8 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
The sharpness property requires the use of one of the scaler
so need to set the sharpness scaler coefficient values.
These values are based on experiments and vary for different
tap value/win size. These values are normalized by taking the
sum of all values and then dividing each value with a sum.
v2: Fix ifndef header naming issue reported by kernel test robot
v3: Rename file name[Arun]
Replace array size number with macro[Arun]
v4: Correct the register format[Jani]
Add brief comment and expalin about file[Jani]
Remove coefficient value from crtc_state[Jani]
v5: Fix build issue
v6: Add new function for writing coefficients[Ankit]
v7: Add cooments and add a scaler id check [Ankit]
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 124 ++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 2 +
.../gpu/drm/i915/display/intel_casf_regs.h | 7 +
.../drm/i915/display/intel_display_types.h | 8 ++
4 files changed, 141 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index ed72bccbb93f..ff34e390c8fe 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -12,6 +12,13 @@
#define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
#define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
+#define FILTER_COEFF_0_125 125
+#define FILTER_COEFF_0_25 250
+#define FILTER_COEFF_0_5 500
+#define FILTER_COEFF_1_0 1000
+#define FILTER_COEFF_0_0 0
+#define SET_POSITIVE_SIGN(x) ((x) & (~SIGN))
+
/**
* DOC: Content Adaptive Sharpness Filter (CASF)
*
@@ -33,6 +40,24 @@ static const u16 sharpness_lut[] = {
73, 60, 48, 36, 24, 12, 0
};
+const u16 filtercoeff_1[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_2[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_3[] = {
+ FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_125,
+};
+
void intel_filter_lut_load(struct intel_crtc *crtc,
const struct intel_crtc_state *crtc_state)
{
@@ -88,3 +113,102 @@ int intel_casf_compute_config(struct intel_crtc_state *crtc_state)
return 0;
}
+
+static int casf_coeff_tap(int i)
+{
+ return i % SCALER_FILTER_NUM_TAPS;
+}
+
+static u16 casf_coeff(struct intel_crtc_state *crtc_state, int t)
+{
+ struct scaler_filter_coeff value;
+ u16 coeff;
+
+ value = crtc_state->hw.casf_params.coeff[t];
+ coeff = SET_POSITIVE_SIGN(0) | EXPONENT(value.exp) | MANTISSA(value.mantissa);
+ return coeff;
+}
+
+/*
+ * 17 phase of 7 taps requires 119 coefficients in 60 dwords per set.
+ * To enable casf: program scaler coefficients with the coeffients
+ * that are calculated and stored in hw.casf_params.coeff as per
+ * SCALER_COEFFICIENT_FORMAT
+ */
+
+static void intel_casf_write_coeff(struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
+ int id = crtc_state->scaler_state.scaler_id;
+ int i;
+
+ if (id != 1) {
+ drm_WARN(display->drm, 0, "Second scaler not enabled\n");
+ return;
+ }
+
+ intel_de_write_fw(display, GLK_PS_COEF_INDEX_SET(crtc->pipe, id, 0),
+ PS_COEF_INDEX_AUTO_INC);
+
+ for (i = 0; i < 17 * SCALER_FILTER_NUM_TAPS; i += 2) {
+ u32 tmp;
+ int t;
+
+ t = casf_coeff_tap(i);
+ tmp = casf_coeff(crtc_state, t);
+
+ t = casf_coeff_tap(i + 1);
+ tmp |= casf_coeff(crtc_state, t) << 16;
+
+ intel_de_write_fw(display, GLK_PS_COEF_DATA_SET(crtc->pipe, id, 0),
+ tmp);
+ }
+}
+
+static void convert_sharpness_coef_binary(struct scaler_filter_coeff *coeff,
+ u16 coefficient)
+{
+ if (coefficient < 25) {
+ coeff->mantissa = (coefficient * 2048) / 100;
+ coeff->exp = 3;
+ } else if (coefficient < 50) {
+ coeff->mantissa = (coefficient * 1024) / 100;
+ coeff->exp = 2;
+ } else if (coefficient < 100) {
+ coeff->mantissa = (coefficient * 512) / 100;
+ coeff->exp = 1;
+ } else {
+ coeff->mantissa = (coefficient * 256) / 100;
+ coeff->exp = 0;
+ }
+}
+
+void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state)
+{
+ const u16 *filtercoeff;
+ u16 filter_coeff[SCALER_FILTER_NUM_TAPS];
+ u16 sumcoeff = 0;
+ u8 i;
+
+ if (crtc_state->hw.casf_params.win_size == 0)
+ filtercoeff = filtercoeff_1;
+ else if (crtc_state->hw.casf_params.win_size == 1)
+ filtercoeff = filtercoeff_2;
+ else
+ filtercoeff = filtercoeff_3;
+
+ for (i = 0; i < SCALER_FILTER_NUM_TAPS; i++)
+ sumcoeff += *(filtercoeff + i);
+
+ for (i = 0; i < SCALER_FILTER_NUM_TAPS; i++) {
+ filter_coeff[i] = (*(filtercoeff + i) * 100 / sumcoeff);
+ convert_sharpness_coef_binary(&crtc_state->hw.casf_params.coeff[i],
+ filter_coeff[i]);
+ }
+}
+
+void intel_casf_enable(struct intel_crtc_state *crtc_state)
+{
+ intel_casf_write_coeff(crtc_state);
+}
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index faeed50de2ba..507a3fe49753 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -15,5 +15,7 @@ int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
void intel_filter_lut_load(struct intel_crtc *crtc,
const struct intel_crtc_state *crtc_state);
+void intel_casf_enable(struct intel_crtc_state *crtc_state);
+void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index c61755a401ff..0305604b4c87 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -30,5 +30,12 @@
#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+/* Scaler Coefficient structure */
+#define SIGN REG_BIT(15)
+#define EXPONENT_MASK REG_GENMASK(13, 12)
+#define EXPONENT(x) REG_FIELD_PREP(EXPONENT_MASK, (x))
+#define MANTISSA_MASK REG_GENMASK(11, 3)
+#define MANTISSA(x) REG_FIELD_PREP(MANTISSA_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index ccaf9dd4f6a8..b96dec938185 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -931,7 +931,15 @@ struct intel_csc_matrix {
u16 postoff[3];
};
+struct scaler_filter_coeff {
+ u16 sign;
+ u16 exp;
+ u16 mantissa;
+};
+
struct intel_casf {
+#define SCALER_FILTER_NUM_TAPS 7
+ struct scaler_filter_coeff coeff[SCALER_FILTER_NUM_TAPS];
u8 strength;
u8 win_size;
bool casf_enable;
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 06/10] drm/i915/display: Add and compute scaler parameter
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (4 preceding siblings ...)
2025-03-04 10:28 ` [PATCH 05/10] drm/i915/display: Compute the scaler filter coefficients Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 12:03 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 07/10] drm/i915/display: Configure the second scaler for sharpness Nemesa Garg
` (7 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Compute the values for second scaler for sharpness.
Fill the register bits corresponding to the scaler.
v1: Rename the title of patch [Ankit]
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 3 ++
drivers/gpu/drm/i915/display/skl_scaler.c | 46 +++++++++++++++++++++++
drivers/gpu/drm/i915/display/skl_scaler.h | 1 +
3 files changed, 50 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index ff34e390c8fe..15ae555e571e 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -8,6 +8,7 @@
#include "intel_casf_regs.h"
#include "intel_de.h"
#include "intel_display_types.h"
+#include "skl_scaler.h"
#define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
#define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
@@ -211,4 +212,6 @@ void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state)
void intel_casf_enable(struct intel_crtc_state *crtc_state)
{
intel_casf_write_coeff(crtc_state);
+
+ skl_scaler_setup_casf(crtc_state);
}
diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
index f0cf966211c9..39fc537e54f0 100644
--- a/drivers/gpu/drm/i915/display/skl_scaler.c
+++ b/drivers/gpu/drm/i915/display/skl_scaler.c
@@ -133,6 +133,13 @@ static void skl_scaler_max_dst_size(struct intel_crtc *crtc,
}
}
+#define CASF_SCALER_FILTER_SELECT \
+ (PS_FILTER_PROGRAMMED | \
+ PS_Y_VERT_FILTER_SELECT(0) | \
+ PS_Y_HORZ_FILTER_SELECT(0) | \
+ PS_UV_VERT_FILTER_SELECT(0) | \
+ PS_UV_HORZ_FILTER_SELECT(0))
+
static int
skl_update_scaler(struct intel_crtc_state *crtc_state, bool force_detach,
unsigned int scaler_user, int *scaler_id,
@@ -722,6 +729,45 @@ static void skl_scaler_setup_filter(struct intel_display *display,
}
}
+void skl_scaler_setup_casf(struct intel_crtc_state *crtc_state)
+{
+ struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
+ struct intel_display *display = to_intel_display(crtc);
+ struct drm_display_mode *adjusted_mode =
+ &crtc_state->hw.adjusted_mode;
+ struct intel_crtc_scaler_state *scaler_state =
+ &crtc_state->scaler_state;
+ struct drm_rect src, dest;
+ int id, width, height;
+ int x = 0, y = 0;
+ enum pipe pipe = crtc->pipe;
+ u32 ps_ctrl;
+
+ width = adjusted_mode->crtc_hdisplay;
+ height = adjusted_mode->crtc_vdisplay;
+
+ drm_rect_init(&dest, x, y, width, height);
+
+ width = drm_rect_width(&dest);
+ height = drm_rect_height(&dest);
+ id = scaler_state->scaler_id;
+
+ drm_rect_init(&src, 0, 0,
+ drm_rect_width(&crtc_state->pipe_src) << 16,
+ drm_rect_height(&crtc_state->pipe_src) << 16);
+
+ trace_intel_pipe_scaler_update_arm(crtc, id, x, y, width, height);
+
+ ps_ctrl = PS_SCALER_EN | PS_BINDING_PIPE | scaler_state->scalers[id].mode |
+ CASF_SCALER_FILTER_SELECT;
+
+ intel_de_write_fw(display, SKL_PS_CTRL(pipe, id), ps_ctrl);
+ intel_de_write_fw(display, SKL_PS_WIN_POS(pipe, id),
+ PS_WIN_XPOS(x) | PS_WIN_YPOS(y));
+ intel_de_write_fw(display, SKL_PS_WIN_SZ(pipe, id),
+ PS_WIN_XSIZE(width) | PS_WIN_YSIZE(height));
+}
+
void skl_pfit_enable(const struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
diff --git a/drivers/gpu/drm/i915/display/skl_scaler.h b/drivers/gpu/drm/i915/display/skl_scaler.h
index 355ea15260ca..22fcfe78b506 100644
--- a/drivers/gpu/drm/i915/display/skl_scaler.h
+++ b/drivers/gpu/drm/i915/display/skl_scaler.h
@@ -31,5 +31,6 @@ void skl_detach_scalers(struct intel_dsb *dsb,
void skl_scaler_disable(const struct intel_crtc_state *old_crtc_state);
void skl_scaler_get_config(struct intel_crtc_state *crtc_state);
+void skl_scaler_setup_casf(struct intel_crtc_state *crtc_state);
#endif
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 07/10] drm/i915/display: Configure the second scaler for sharpness
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (5 preceding siblings ...)
2025-03-04 10:28 ` [PATCH 06/10] drm/i915/display: Add and compute scaler parameter Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 12:07 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 08/10] drm/i915/display: Call the compute function Nemesa Garg
` (6 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
As only second scaler can be used for sharpness check if it
is available and also check if panel fitting is also not enabled,
then set the sharpness. Panel fitting will have the preference
over sharpness property.
v2: Add the panel fitting check before enabling sharpness
v3: Reframe commit message[Arun]
v4: Replace string based comparison with plane_state[Jani]
v5: Rebase
v6: Fix build issue
v7: Remove scaler id from verify_crtc_state[Ankit]
v8: Change the patch title. Add code comment.
Move the config part in patch#6. [Ankit]
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 8 ++++++
drivers/gpu/drm/i915/display/intel_casf.h | 1 +
drivers/gpu/drm/i915/display/intel_display.c | 6 +++--
drivers/gpu/drm/i915/display/skl_scaler.c | 28 +++++++++++++++-----
4 files changed, 35 insertions(+), 8 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 15ae555e571e..1d9196c4d22f 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -115,6 +115,14 @@ int intel_casf_compute_config(struct intel_crtc_state *crtc_state)
return 0;
}
+bool intel_casf_needs_scaler(const struct intel_crtc_state *crtc_state)
+{
+ if (crtc_state->hw.casf_params.casf_enable)
+ return true;
+
+ return false;
+}
+
static int casf_coeff_tap(int i)
{
return i % SCALER_FILTER_NUM_TAPS;
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 507a3fe49753..c75a4b2f3133 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -17,5 +17,6 @@ void intel_filter_lut_load(struct intel_crtc *crtc,
const struct intel_crtc_state *crtc_state);
void intel_casf_enable(struct intel_crtc_state *crtc_state);
void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state);
+bool intel_casf_needs_scaler(const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index c4b0ec60fded..03acf01cac75 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -60,6 +60,7 @@
#include "intel_audio.h"
#include "intel_bo.h"
#include "intel_bw.h"
+#include "intel_casf.h"
#include "intel_cdclk.h"
#include "intel_clock_gating.h"
#include "intel_color.h"
@@ -1956,7 +1957,7 @@ static void get_crtc_power_domains(struct intel_crtc_state *crtc_state,
set_bit(POWER_DOMAIN_PIPE(pipe), mask->bits);
set_bit(POWER_DOMAIN_TRANSCODER(cpu_transcoder), mask->bits);
if (crtc_state->pch_pfit.enabled ||
- crtc_state->pch_pfit.force_thru)
+ crtc_state->pch_pfit.force_thru || intel_casf_needs_scaler(crtc_state))
set_bit(POWER_DOMAIN_PIPE_PANEL_FITTER(pipe), mask->bits);
drm_for_each_encoder_mask(encoder, &dev_priv->drm,
@@ -2194,7 +2195,7 @@ static u32 ilk_pipe_pixel_rate(const struct intel_crtc_state *crtc_state)
* PF-ID we'll need to adjust the pixel_rate here.
*/
- if (!crtc_state->pch_pfit.enabled)
+ if (!crtc_state->pch_pfit.enabled || intel_casf_needs_scaler(crtc_state))
return pixel_rate;
drm_rect_init(&src, 0, 0,
@@ -5299,6 +5300,7 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
PIPE_CONF_CHECK_I(scaler_state.scaler_id);
PIPE_CONF_CHECK_I(pixel_rate);
+ PIPE_CONF_CHECK_BOOL(hw.casf_params.casf_enable);
PIPE_CONF_CHECK_X(gamma_mode);
if (IS_CHERRYVIEW(dev_priv))
diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
index 39fc537e54f0..93a847c05535 100644
--- a/drivers/gpu/drm/i915/display/skl_scaler.c
+++ b/drivers/gpu/drm/i915/display/skl_scaler.c
@@ -5,6 +5,7 @@
#include "i915_drv.h"
#include "i915_reg.h"
+#include "intel_casf.h"
#include "intel_casf_regs.h"
#include "intel_de.h"
#include "intel_display_trace.h"
@@ -272,7 +273,8 @@ int skl_update_scaler_crtc(struct intel_crtc_state *crtc_state)
drm_rect_width(&crtc_state->pipe_src),
drm_rect_height(&crtc_state->pipe_src),
width, height, NULL, 0,
- crtc_state->pch_pfit.enabled);
+ crtc_state->pch_pfit.enabled ||
+ intel_casf_needs_scaler(crtc_state));
}
/**
@@ -311,7 +313,9 @@ int skl_update_scaler_plane(struct intel_crtc_state *crtc_state,
}
static int intel_allocate_scaler(struct intel_crtc_scaler_state *scaler_state,
- struct intel_crtc *crtc)
+ struct intel_crtc *crtc,
+ struct intel_plane_state *plane_state,
+ bool casf_scaler)
{
int i;
@@ -319,6 +323,10 @@ static int intel_allocate_scaler(struct intel_crtc_scaler_state *scaler_state,
if (scaler_state->scalers[i].in_use)
continue;
+ /* CASF needs second scaler */
+ if (!plane_state && casf_scaler && i != 1)
+ continue;
+
scaler_state->scalers[i].in_use = true;
return i;
@@ -369,7 +377,7 @@ static int intel_atomic_setup_scaler(struct intel_crtc_state *crtc_state,
int num_scalers_need, struct intel_crtc *crtc,
const char *name, int idx,
struct intel_plane_state *plane_state,
- int *scaler_id)
+ int *scaler_id, bool casf_scaler)
{
struct intel_display *display = to_intel_display(crtc);
struct intel_crtc_scaler_state *scaler_state = &crtc_state->scaler_state;
@@ -378,12 +386,15 @@ static int intel_atomic_setup_scaler(struct intel_crtc_state *crtc_state,
int vscale = 0;
if (*scaler_id < 0)
- *scaler_id = intel_allocate_scaler(scaler_state, crtc);
+ *scaler_id = intel_allocate_scaler(scaler_state, crtc, plane_state, casf_scaler);
if (drm_WARN(display->drm, *scaler_id < 0,
"Cannot find scaler for %s:%d\n", name, idx))
return -EINVAL;
+ if (casf_scaler)
+ mode = SKL_PS_SCALER_MODE_HQ;
+
/* set scaler mode */
if (plane_state && plane_state->hw.fb &&
plane_state->hw.fb->format->is_yuv &&
@@ -510,10 +521,14 @@ static int setup_crtc_scaler(struct intel_atomic_state *state,
struct intel_crtc_scaler_state *scaler_state =
&crtc_state->scaler_state;
+ if (intel_casf_needs_scaler(crtc_state) && crtc_state->pch_pfit.enabled)
+ return -EINVAL;
+
return intel_atomic_setup_scaler(crtc_state,
hweight32(scaler_state->scaler_users),
crtc, "CRTC", crtc->base.base.id,
- NULL, &scaler_state->scaler_id);
+ NULL, &scaler_state->scaler_id,
+ intel_casf_needs_scaler(crtc_state));
}
static int setup_plane_scaler(struct intel_atomic_state *state,
@@ -548,7 +563,8 @@ static int setup_plane_scaler(struct intel_atomic_state *state,
return intel_atomic_setup_scaler(crtc_state,
hweight32(scaler_state->scaler_users),
crtc, "PLANE", plane->base.base.id,
- plane_state, &plane_state->scaler_id);
+ plane_state, &plane_state->scaler_id,
+ false);
}
/**
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 08/10] drm/i915/display: Call the compute function
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (6 preceding siblings ...)
2025-03-04 10:28 ` [PATCH 07/10] drm/i915/display: Configure the second scaler for sharpness Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 12:11 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 09/10] drm/i915/display: Enable/disable casf Nemesa Garg
` (5 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Once the casf_compute config is called then the
strength and win_size bit of sharpness ctl register
will be set. Read back the bits in get_config.
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 11 +++++++
drivers/gpu/drm/i915/display/intel_display.c | 4 +++
drivers/gpu/drm/i915/display/skl_scaler.c | 32 +++++++++++++++-----
3 files changed, 40 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 1d9196c4d22f..9f14418dc3c9 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -97,6 +97,17 @@ static void intel_casf_compute_win_size(struct intel_crtc_state *crtc_state)
int intel_casf_compute_config(struct intel_crtc_state *crtc_state)
{
+ struct intel_display *display = to_intel_display(crtc_state);
+
+ if (!HAS_CASF(display))
+ return 0;
+
+ if (crtc_state->uapi.sharpness_strength == 0) {
+ crtc_state->hw.casf_params.casf_enable = false;
+ crtc_state->hw.casf_params.strength = 0;
+ return 0;
+ }
+
crtc_state->hw.casf_params.casf_enable = true;
/*
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 03acf01cac75..a2fb68c7cf7a 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -4267,6 +4267,10 @@ static int intel_crtc_atomic_check(struct intel_atomic_state *state,
return ret;
}
+ ret = intel_casf_compute_config(crtc_state);
+ if (ret)
+ return ret;
+
if (DISPLAY_VER(dev_priv) >= 9 ||
IS_BROADWELL(dev_priv) || IS_HASWELL(dev_priv)) {
ret = hsw_compute_linetime_wm(state, crtc);
diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
index 93a847c05535..79b6749c157e 100644
--- a/drivers/gpu/drm/i915/display/skl_scaler.c
+++ b/drivers/gpu/drm/i915/display/skl_scaler.c
@@ -957,23 +957,41 @@ void skl_scaler_get_config(struct intel_crtc_state *crtc_state)
/* find scaler attached to this pipe */
for (i = 0; i < crtc->num_scalers; i++) {
- u32 ctl, pos, size;
+ u32 ctl, pos, size, sharp;
ctl = intel_de_read(display, SKL_PS_CTRL(crtc->pipe, i));
if ((ctl & (PS_SCALER_EN | PS_BINDING_MASK)) != (PS_SCALER_EN | PS_BINDING_PIPE))
continue;
id = i;
- crtc_state->pch_pfit.enabled = true;
+
+ if (HAS_CASF(display) && id == 1) {
+ sharp = intel_de_read(display, SHARPNESS_CTL(crtc->pipe));
+ if (sharp & FILTER_EN) {
+ if (drm_WARN_ON(display->drm,
+ REG_FIELD_GET(FILTER_STRENGTH_MASK, sharp) < 16))
+ crtc_state->hw.casf_params.strength = 0;
+ else
+ crtc_state->hw.casf_params.strength =
+ REG_FIELD_GET(FILTER_STRENGTH_MASK, sharp) - 16;
+ crtc_state->hw.casf_params.casf_enable = true;
+ crtc_state->hw.casf_params.win_size =
+ REG_FIELD_GET(FILTER_SIZE_MASK, sharp);
+ }
+ }
+
+ if (!crtc_state->hw.casf_params.casf_enable)
+ crtc_state->pch_pfit.enabled = true;
pos = intel_de_read(display, SKL_PS_WIN_POS(crtc->pipe, i));
size = intel_de_read(display, SKL_PS_WIN_SZ(crtc->pipe, i));
- drm_rect_init(&crtc_state->pch_pfit.dst,
- REG_FIELD_GET(PS_WIN_XPOS_MASK, pos),
- REG_FIELD_GET(PS_WIN_YPOS_MASK, pos),
- REG_FIELD_GET(PS_WIN_XSIZE_MASK, size),
- REG_FIELD_GET(PS_WIN_YSIZE_MASK, size));
+ if (!crtc_state->hw.casf_params.casf_enable)
+ drm_rect_init(&crtc_state->pch_pfit.dst,
+ REG_FIELD_GET(PS_WIN_XPOS_MASK, pos),
+ REG_FIELD_GET(PS_WIN_YPOS_MASK, pos),
+ REG_FIELD_GET(PS_WIN_XSIZE_MASK, size),
+ REG_FIELD_GET(PS_WIN_YSIZE_MASK, size));
scaler_state->scalers[i].in_use = true;
break;
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 09/10] drm/i915/display: Enable/disable casf
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (7 preceding siblings ...)
2025-03-04 10:28 ` [PATCH 08/10] drm/i915/display: Call the compute function Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 12:14 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 10/10] drm/i915/display: Expose casf property Nemesa Garg
` (4 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Add a check for enabling/disabling the casf
and enable the sharpness bit. Also load the
filter lut value which is needed one time.
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 18 +++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 1 +
drivers/gpu/drm/i915/display/intel_display.c | 32 ++++++++++++++++++++
3 files changed, 51 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 9f14418dc3c9..1a4362788d30 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -230,7 +230,25 @@ void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state)
void intel_casf_enable(struct intel_crtc_state *crtc_state)
{
+ struct intel_display *display = to_intel_display(crtc_state);
+ struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
+ u32 sharpness_ctl;
+
intel_casf_write_coeff(crtc_state);
skl_scaler_setup_casf(crtc_state);
+
+ sharpness_ctl = FILTER_EN | FILTER_STRENGTH(crtc_state->hw.casf_params.strength);
+
+ sharpness_ctl |= crtc_state->hw.casf_params.win_size;
+
+ intel_de_write(display, SHARPNESS_CTL(crtc->pipe), sharpness_ctl);
+}
+
+void intel_casf_disable(const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
+
+ intel_de_write(display, SHARPNESS_CTL(crtc->pipe), 0);
}
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index c75a4b2f3133..64821aafdc2f 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -18,5 +18,6 @@ void intel_filter_lut_load(struct intel_crtc *crtc,
void intel_casf_enable(struct intel_crtc_state *crtc_state);
void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state);
bool intel_casf_needs_scaler(const struct intel_crtc_state *crtc_state);
+void intel_casf_disable(const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index a2fb68c7cf7a..7d500bdc58fb 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -1036,6 +1036,25 @@ static bool audio_disabling(const struct intel_crtc_state *old_crtc_state,
memcmp(old_crtc_state->eld, new_crtc_state->eld, MAX_ELD_BYTES) != 0);
}
+static bool intel_casf_enabling(const struct intel_crtc_state *new_crtc_state,
+ const struct intel_crtc_state *old_crtc_state)
+{
+ if (!new_crtc_state->hw.active)
+ return false;
+
+ return is_enabling(hw.casf_params.casf_enable, old_crtc_state, new_crtc_state);
+}
+
+static bool intel_casf_disabling(const struct intel_crtc_state *new_crtc_state,
+ const struct intel_crtc_state *old_crtc_state)
+{
+ if (!new_crtc_state->hw.active)
+ return false;
+
+ return (new_crtc_state->hw.casf_params.casf_enable !=
+ old_crtc_state->hw.casf_params.casf_enable);
+}
+
#undef is_disabling
#undef is_enabling
@@ -1182,6 +1201,9 @@ static void intel_pre_plane_update(struct intel_atomic_state *state,
if (audio_disabling(old_crtc_state, new_crtc_state))
intel_encoders_audio_disable(state, crtc);
+ if (intel_casf_disabling(old_crtc_state, new_crtc_state))
+ intel_casf_disable(new_crtc_state);
+
intel_drrs_deactivate(old_crtc_state);
intel_psr_pre_plane_update(state, crtc);
@@ -1650,6 +1672,8 @@ static void hsw_crtc_enable(struct intel_atomic_state *state,
struct intel_display *display = to_intel_display(state);
const struct intel_crtc_state *new_crtc_state =
intel_atomic_get_new_crtc_state(state, crtc);
+ const struct intel_crtc_state *old_crtc_state =
+ intel_atomic_get_old_crtc_state(state, crtc);
struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
enum transcoder cpu_transcoder = new_crtc_state->cpu_transcoder;
struct intel_crtc *pipe_crtc;
@@ -1742,6 +1766,9 @@ static void hsw_crtc_enable(struct intel_atomic_state *state,
intel_crtc_wait_for_next_vblank(wa_crtc);
intel_crtc_wait_for_next_vblank(wa_crtc);
}
+
+ if (intel_casf_enabling(new_crtc_state, old_crtc_state))
+ intel_filter_lut_load(crtc, new_crtc_state);
}
}
@@ -6722,6 +6749,11 @@ static void intel_pre_update_crtc(struct intel_atomic_state *state,
intel_vrr_set_transcoder_timings(new_crtc_state);
}
+ if (intel_casf_enabling(new_crtc_state, old_crtc_state))
+ intel_casf_enable(new_crtc_state);
+ else if (new_crtc_state->hw.casf_params.strength != old_crtc_state->hw.casf_params.strength)
+ intel_casf_update_strength(new_crtc_state);
+
intel_fbc_update(state, crtc);
drm_WARN_ON(display->drm, !intel_display_power_is_enabled(display, POWER_DOMAIN_DC_OFF));
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 10/10] drm/i915/display: Expose casf property
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (8 preceding siblings ...)
2025-03-04 10:28 ` [PATCH 09/10] drm/i915/display: Enable/disable casf Nemesa Garg
@ 2025-03-04 10:28 ` Nemesa Garg
2025-03-11 12:15 ` Nautiyal, Ankit K
2025-03-04 12:11 ` ✗ Fi.CI.CHECKPATCH: warning for Introduce drm sharpness property (rev10) Patchwork
` (3 subsequent siblings)
13 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-03-04 10:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Expose the drm crtc sharpness property
which will ultimately enable the sharpness.
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_crtc.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_crtc.c b/drivers/gpu/drm/i915/display/intel_crtc.c
index 5b2603ef2ff7..b8bd255e9555 100644
--- a/drivers/gpu/drm/i915/display/intel_crtc.c
+++ b/drivers/gpu/drm/i915/display/intel_crtc.c
@@ -391,6 +391,9 @@ int intel_crtc_init(struct intel_display *display, enum pipe pipe)
drm_WARN_ON(display->drm, drm_crtc_index(&crtc->base) != crtc->pipe);
+ if (HAS_CASF(dev_priv))
+ drm_crtc_create_sharpness_strength_property(&crtc->base);
+
return 0;
fail:
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for Introduce drm sharpness property (rev10)
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (9 preceding siblings ...)
2025-03-04 10:28 ` [PATCH 10/10] drm/i915/display: Expose casf property Nemesa Garg
@ 2025-03-04 12:11 ` Patchwork
2025-03-04 12:12 ` ✗ Fi.CI.SPARSE: " Patchwork
` (2 subsequent siblings)
13 siblings, 0 replies; 36+ messages in thread
From: Patchwork @ 2025-03-04 12:11 UTC (permalink / raw)
To: Nemesa Garg; +Cc: intel-gfx
== Series Details ==
Series: Introduce drm sharpness property (rev10)
URL : https://patchwork.freedesktop.org/series/138754/
State : warning
== Summary ==
Error: dim checkpatch failed
5d27b0b90fa7 drm/i915/display: Introduce sharpness strength property
69409bcaa52d drm/i915/display: Introduce HAS_CASF macro
24814da0f3cc drm/i915/display: Add sharpness strength and winsize
-:24: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#24:
new file mode 100644
total: 0 errors, 1 warnings, 0 checks, 160 lines checked
a3d58f618727 drm/i915/display: Add filter lut values
436cd7d544c4 drm/i915/display: Compute the scaler filter coefficients
f2d9e222579e drm/i915/display: Add and compute scaler parameter
d7a1825f4cd9 drm/i915/display: Configure the second scaler for sharpness
b7d735aecb35 drm/i915/display: Call the compute function
fdd09660e49c drm/i915/display: Enable/disable casf
66412a8d25e5 drm/i915/display: Expose casf property
^ permalink raw reply [flat|nested] 36+ messages in thread
* ✗ Fi.CI.SPARSE: warning for Introduce drm sharpness property (rev10)
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (10 preceding siblings ...)
2025-03-04 12:11 ` ✗ Fi.CI.CHECKPATCH: warning for Introduce drm sharpness property (rev10) Patchwork
@ 2025-03-04 12:12 ` Patchwork
2025-03-04 12:30 ` ✓ i915.CI.BAT: success " Patchwork
2025-03-05 4:30 ` ✗ i915.CI.Full: failure " Patchwork
13 siblings, 0 replies; 36+ messages in thread
From: Patchwork @ 2025-03-04 12:12 UTC (permalink / raw)
To: Nemesa Garg; +Cc: intel-gfx
== Series Details ==
Series: Introduce drm sharpness property (rev10)
URL : https://patchwork.freedesktop.org/series/138754/
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] 36+ messages in thread
* ✓ i915.CI.BAT: success for Introduce drm sharpness property (rev10)
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (11 preceding siblings ...)
2025-03-04 12:12 ` ✗ Fi.CI.SPARSE: " Patchwork
@ 2025-03-04 12:30 ` Patchwork
2025-03-05 4:30 ` ✗ i915.CI.Full: failure " Patchwork
13 siblings, 0 replies; 36+ messages in thread
From: Patchwork @ 2025-03-04 12:30 UTC (permalink / raw)
To: Nemesa Garg; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 12763 bytes --]
== Series Details ==
Series: Introduce drm sharpness property (rev10)
URL : https://patchwork.freedesktop.org/series/138754/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_16220 -> Patchwork_138754v10
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/index.html
Participating hosts (41 -> 43)
------------------------------
Additional (4): bat-apl-1 bat-arlh-2 fi-glk-j4005 fi-skl-6600u
Missing (2): fi-snb-2520m fi-pnv-d510
Known issues
------------
Here are the changes found in Patchwork_138754v10 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@debugfs_test@basic-hwmon:
- bat-arlh-2: NOTRUN -> [SKIP][1] ([i915#11346] / [i915#9318])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@debugfs_test@basic-hwmon.html
* igt@dmabuf@all-tests@dma_fence_chain:
- fi-bsw-n3050: [PASS][2] -> [INCOMPLETE][3] ([i915#12904]) +1 other test incomplete
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/fi-bsw-n3050/igt@dmabuf@all-tests@dma_fence_chain.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-bsw-n3050/igt@dmabuf@all-tests@dma_fence_chain.html
* igt@fbdev@eof:
- bat-arlh-2: NOTRUN -> [SKIP][4] ([i915#11345] / [i915#11346]) +3 other tests skip
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@fbdev@eof.html
* igt@fbdev@info:
- bat-arlh-2: NOTRUN -> [SKIP][5] ([i915#11346] / [i915#1849])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@fbdev@info.html
- fi-kbl-8809g: NOTRUN -> [SKIP][6] ([i915#1849])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-kbl-8809g/igt@fbdev@info.html
* igt@gem_huc_copy@huc-copy:
- fi-kbl-8809g: NOTRUN -> [SKIP][7] ([i915#2190])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-kbl-8809g/igt@gem_huc_copy@huc-copy.html
- bat-apl-1: NOTRUN -> [SKIP][8] +23 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-apl-1/igt@gem_huc_copy@huc-copy.html
- fi-skl-6600u: NOTRUN -> [SKIP][9] ([i915#2190])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-skl-6600u/igt@gem_huc_copy@huc-copy.html
- fi-glk-j4005: NOTRUN -> [SKIP][10] ([i915#2190])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-glk-j4005/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@basic:
- bat-arlh-2: NOTRUN -> [SKIP][11] ([i915#10213] / [i915#11346] / [i915#11671]) +3 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@gem_lmem_swapping@basic.html
* igt@gem_lmem_swapping@parallel-random-engines:
- fi-glk-j4005: NOTRUN -> [SKIP][12] ([i915#4613]) +3 other tests skip
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-glk-j4005/igt@gem_lmem_swapping@parallel-random-engines.html
- fi-kbl-8809g: NOTRUN -> [SKIP][13] ([i915#4613]) +3 other tests skip
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-kbl-8809g/igt@gem_lmem_swapping@parallel-random-engines.html
* igt@gem_lmem_swapping@random-engines:
- fi-skl-6600u: NOTRUN -> [SKIP][14] ([i915#4613]) +3 other tests skip
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-skl-6600u/igt@gem_lmem_swapping@random-engines.html
* igt@gem_mmap@basic:
- bat-arlh-2: NOTRUN -> [SKIP][15] ([i915#11343] / [i915#11346])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@gem_mmap@basic.html
* igt@gem_render_tiled_blits@basic:
- bat-arlh-2: NOTRUN -> [SKIP][16] ([i915#10197] / [i915#10211] / [i915#11346] / [i915#11725])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@gem_render_tiled_blits@basic.html
* igt@gem_tiled_blits@basic:
- bat-arlh-2: NOTRUN -> [SKIP][17] ([i915#11346] / [i915#12637]) +4 other tests skip
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@gem_tiled_blits@basic.html
* igt@gem_tiled_pread_basic:
- bat-arlh-2: NOTRUN -> [SKIP][18] ([i915#10206] / [i915#11346] / [i915#11724])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@gem_tiled_pread_basic.html
* igt@i915_pm_rpm@module-reload:
- bat-adls-6: [PASS][19] -> [FAIL][20] ([i915#13633])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/bat-adls-6/igt@i915_pm_rpm@module-reload.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-adls-6/igt@i915_pm_rpm@module-reload.html
- bat-rpls-4: [PASS][21] -> [FAIL][22] ([i915#13633])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/bat-rpls-4/igt@i915_pm_rpm@module-reload.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-rpls-4/igt@i915_pm_rpm@module-reload.html
* igt@i915_pm_rps@basic-api:
- bat-arlh-2: NOTRUN -> [SKIP][23] ([i915#10209] / [i915#11346] / [i915#11681])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@i915_pm_rps@basic-api.html
* igt@i915_selftest@live@memory_region:
- bat-twl-2: NOTRUN -> [ABORT][24] ([i915#12919])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-twl-2/igt@i915_selftest@live@memory_region.html
* igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-arlh-2: NOTRUN -> [SKIP][25] ([i915#10200] / [i915#11346] / [i915#11666] / [i915#12203])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html
* igt@kms_addfb_basic@basic-x-tiled-legacy:
- bat-arlh-2: NOTRUN -> [SKIP][26] ([i915#10200] / [i915#11346] / [i915#11666]) +8 other tests skip
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@kms_addfb_basic@basic-x-tiled-legacy.html
* igt@kms_dsc@dsc-basic:
- fi-kbl-8809g: NOTRUN -> [SKIP][27] +34 other tests skip
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-kbl-8809g/igt@kms_dsc@dsc-basic.html
- fi-skl-6600u: NOTRUN -> [SKIP][28] +9 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-skl-6600u/igt@kms_dsc@dsc-basic.html
* igt@kms_psr@psr-primary-page-flip:
- fi-glk-j4005: NOTRUN -> [SKIP][29] +10 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/fi-glk-j4005/igt@kms_psr@psr-primary-page-flip.html
- bat-arlh-2: NOTRUN -> [SKIP][30] ([i915#11346]) +32 other tests skip
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@kms_psr@psr-primary-page-flip.html
* igt@kms_setmode@basic-clone-single-crtc:
- bat-arlh-2: NOTRUN -> [SKIP][31] ([i915#10208] / [i915#11346] / [i915#8809])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@kms_setmode@basic-clone-single-crtc.html
* igt@prime_vgem@basic-fence-read:
- bat-arlh-2: NOTRUN -> [SKIP][32] ([i915#10212] / [i915#11346] / [i915#11726])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@prime_vgem@basic-fence-read.html
* igt@prime_vgem@basic-read:
- bat-arlh-2: NOTRUN -> [SKIP][33] ([i915#10214] / [i915#11346] / [i915#11726])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@prime_vgem@basic-read.html
* igt@prime_vgem@basic-write:
- bat-arlh-2: NOTRUN -> [SKIP][34] ([i915#10216] / [i915#11346] / [i915#11723])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-2/igt@prime_vgem@basic-write.html
#### Possible fixes ####
* igt@i915_selftest@live:
- bat-arlh-3: [INCOMPLETE][35] ([i915#12445]) -> [PASS][36] +1 other test pass
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/bat-arlh-3/igt@i915_selftest@live.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-arlh-3/igt@i915_selftest@live.html
* igt@i915_selftest@live@reset:
- bat-twl-2: [INCOMPLETE][37] ([i915#12445]) -> [PASS][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/bat-twl-2/igt@i915_selftest@live@reset.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-twl-2/igt@i915_selftest@live@reset.html
* igt@i915_selftest@live@workarounds:
- bat-mtlp-6: [DMESG-FAIL][39] ([i915#12061]) -> [PASS][40] +1 other test pass
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/bat-mtlp-6/igt@i915_selftest@live@workarounds.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-mtlp-6/igt@i915_selftest@live@workarounds.html
#### Warnings ####
* igt@i915_selftest@live:
- bat-twl-2: [INCOMPLETE][41] ([i915#12445] / [i915#13761] / [i915#13776]) -> [ABORT][42] ([i915#12435] / [i915#12919] / [i915#13503])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/bat-twl-2/igt@i915_selftest@live.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/bat-twl-2/igt@i915_selftest@live.html
[i915#10197]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10197
[i915#10200]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10200
[i915#10206]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10206
[i915#10208]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10208
[i915#10209]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10209
[i915#10211]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10211
[i915#10212]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10212
[i915#10213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10213
[i915#10214]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10214
[i915#10216]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10216
[i915#11343]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11343
[i915#11345]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11345
[i915#11346]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11346
[i915#11666]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11666
[i915#11671]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11671
[i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
[i915#11723]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11723
[i915#11724]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11724
[i915#11725]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11725
[i915#11726]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11726
[i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061
[i915#12203]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12203
[i915#12435]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12435
[i915#12445]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12445
[i915#12637]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12637
[i915#12904]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12904
[i915#12919]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12919
[i915#13503]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13503
[i915#13633]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13633
[i915#13761]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13761
[i915#13776]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13776
[i915#1849]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1849
[i915#2190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2190
[i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613
[i915#8809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8809
[i915#9318]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9318
Build changes
-------------
* Linux: CI_DRM_16220 -> Patchwork_138754v10
CI-20190529: 20190529
CI_DRM_16220: 1cf56e26a93292ca26fbf891368b75a67e8700dc @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_8257: 8257
Patchwork_138754v10: 1cf56e26a93292ca26fbf891368b75a67e8700dc @ git://anongit.freedesktop.org/gfx-ci/linux
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/index.html
[-- Attachment #2: Type: text/html, Size: 16027 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* ✗ i915.CI.Full: failure for Introduce drm sharpness property (rev10)
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
` (12 preceding siblings ...)
2025-03-04 12:30 ` ✓ i915.CI.BAT: success " Patchwork
@ 2025-03-05 4:30 ` Patchwork
13 siblings, 0 replies; 36+ messages in thread
From: Patchwork @ 2025-03-05 4:30 UTC (permalink / raw)
To: Nemesa Garg; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 125015 bytes --]
== Series Details ==
Series: Introduce drm sharpness property (rev10)
URL : https://patchwork.freedesktop.org/series/138754/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_16220_full -> Patchwork_138754v10_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_138754v10_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_138754v10_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (11 -> 10)
------------------------------
Missing (1): shard-snb-0
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_138754v10_full:
### IGT changes ###
#### Possible regressions ####
* igt@i915_pm_rc6_residency@rc6-accuracy:
- shard-rkl: NOTRUN -> [SKIP][1] +1 other test skip
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@i915_pm_rc6_residency@rc6-accuracy.html
* igt@kms_flip@2x-plain-flip-ts-check-interruptible@ab-vga1-hdmi-a1:
- shard-snb: NOTRUN -> [FAIL][2] +1 other test fail
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-snb4/igt@kms_flip@2x-plain-flip-ts-check-interruptible@ab-vga1-hdmi-a1.html
* igt@kms_flip@plain-flip-ts-check-interruptible:
- shard-tglu: [PASS][3] -> [FAIL][4] +1 other test fail
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-tglu-6/igt@kms_flip@plain-flip-ts-check-interruptible.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-5/igt@kms_flip@plain-flip-ts-check-interruptible.html
- shard-mtlp: [PASS][5] -> [FAIL][6] +1 other test fail
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-mtlp-1/igt@kms_flip@plain-flip-ts-check-interruptible.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-7/igt@kms_flip@plain-flip-ts-check-interruptible.html
* igt@kms_vblank@ts-continuation-suspend@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [INCOMPLETE][7]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-5/igt@kms_vblank@ts-continuation-suspend@pipe-a-hdmi-a-2.html
#### Warnings ####
* igt@kms_vblank@ts-continuation-suspend:
- shard-rkl: [DMESG-FAIL][8] ([i915#12964]) -> [INCOMPLETE][9]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-4/igt@kms_vblank@ts-continuation-suspend.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-5/igt@kms_vblank@ts-continuation-suspend.html
New tests
---------
New tests have been introduced between CI_DRM_16220_full and Patchwork_138754v10_full:
### New IGT tests (41) ###
* igt@i915_pm_rps@bad-pitch-63:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@basic-contexts-priority-all:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@cliprects-invalid:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@cpuset-big-copy:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@create-protected-buffer:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@ctm-0-50:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@cursor-random-512x512:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@cursor-vs-flip-atomic-transitions:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@empty-nonblock:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@etime-multi-wait-all-available-unsubmitted-submitted-signaled:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@fbc-2p-primscrn-pri-indfb-draw-mmap-gtt:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@fbc-2p-scndscrn-indfb-msflip-blt:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@fbc-2p-scndscrn-indfb-plflip-blt:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@fbc-2p-scndscrn-pri-indfb-draw-mmap-wc:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@fbc-2p-scndscrn-spr-indfb-draw-render:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@fbcpsr-1p-primscrn-cur-indfb-draw-render:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-gtt:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@flip-vs-cursor-legacy:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@invalid-ctx-get:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@invalid-single-wait-all-unsubmitted:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@linear-64bpp-rotate-180:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@media-rc6-accuracy:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@mei-interface:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@mmap-boundaries:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@multi-wait-all-for-submit-available-submitted-signaled:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@object-noreloc-purge-cache-simple:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@plane-invalid-params:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@plane-scaler-with-clipping-clamping-modifiers:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@psr-1p-offscren-pri-shrfb-draw-pwrite:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@psr-2p-pri-indfb-multidraw:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@psr-rgb565-draw-mmap-wc:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@query-topology-garbage-items:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@read:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@secure-non-root:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@single:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@ts-continuation-suspend:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@usage-restrictions:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@wait-idle:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@writes:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@x-tiled-addfb-size-overflow:
- Statuses :
- Exec time: [None] s
* igt@i915_pm_rps@yf-tiled-8bpp-rotate-180:
- Statuses :
- Exec time: [None] s
Known issues
------------
Here are the changes found in Patchwork_138754v10_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@blit-reloc-purge-cache:
- shard-dg2-9: NOTRUN -> [SKIP][10] ([i915#8411])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@api_intel_bb@blit-reloc-purge-cache.html
* igt@api_intel_bb@crc32:
- shard-rkl: NOTRUN -> [SKIP][11] ([i915#6230])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@api_intel_bb@crc32.html
- shard-tglu: NOTRUN -> [SKIP][12] ([i915#6230])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@api_intel_bb@crc32.html
* igt@api_intel_bb@object-reloc-keep-cache:
- shard-dg2: NOTRUN -> [SKIP][13] ([i915#8411]) +1 other test skip
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@api_intel_bb@object-reloc-keep-cache.html
* igt@device_reset@cold-reset-bound:
- shard-dg2-9: NOTRUN -> [SKIP][14] ([i915#11078])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@device_reset@cold-reset-bound.html
* igt@device_reset@unbind-reset-rebind:
- shard-tglu: [PASS][15] -> [ABORT][16] ([i915#12817] / [i915#5507])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-tglu-9/igt@device_reset@unbind-reset-rebind.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-4/igt@device_reset@unbind-reset-rebind.html
* igt@drm_fdinfo@busy-hang@bcs0:
- shard-dg2: NOTRUN -> [SKIP][17] ([i915#8414]) +7 other tests skip
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@drm_fdinfo@busy-hang@bcs0.html
* igt@drm_fdinfo@busy-idle@vcs0:
- shard-dg2-9: NOTRUN -> [SKIP][18] ([i915#8414]) +7 other tests skip
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@drm_fdinfo@busy-idle@vcs0.html
* igt@drm_fdinfo@most-busy-check-all@vcs0:
- shard-mtlp: NOTRUN -> [SKIP][19] ([i915#8414]) +7 other tests skip
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@drm_fdinfo@most-busy-check-all@vcs0.html
* igt@gem_caching@reads:
- shard-mtlp: NOTRUN -> [SKIP][20] ([i915#4873])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@gem_caching@reads.html
* igt@gem_ccs@ctrl-surf-copy:
- shard-rkl: NOTRUN -> [SKIP][21] ([i915#3555] / [i915#9323]) +2 other tests skip
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@gem_ccs@ctrl-surf-copy.html
- shard-mtlp: NOTRUN -> [SKIP][22] ([i915#3555] / [i915#9323])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@gem_ccs@ctrl-surf-copy.html
* igt@gem_compute@compute-square:
- shard-dg2: NOTRUN -> [FAIL][23] ([i915#13665])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@gem_compute@compute-square.html
* igt@gem_ctx_persistence@heartbeat-hostile:
- shard-dg2: NOTRUN -> [SKIP][24] ([i915#8555])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@gem_ctx_persistence@heartbeat-hostile.html
* igt@gem_ctx_persistence@hostile:
- shard-rkl: [PASS][25] -> [DMESG-WARN][26] ([i915#12964]) +2 other tests dmesg-warn
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-7/igt@gem_ctx_persistence@hostile.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-6/igt@gem_ctx_persistence@hostile.html
* igt@gem_ctx_persistence@saturated-hostile-nopreempt@rcs0:
- shard-dg2-9: NOTRUN -> [SKIP][27] ([i915#5882]) +7 other tests skip
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_ctx_persistence@saturated-hostile-nopreempt@rcs0.html
* igt@gem_ctx_persistence@saturated-hostile-nopreempt@vcs1:
- shard-mtlp: NOTRUN -> [SKIP][28] ([i915#5882]) +6 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@gem_ctx_persistence@saturated-hostile-nopreempt@vcs1.html
* igt@gem_ctx_sseu@engines:
- shard-dg2-9: NOTRUN -> [SKIP][29] ([i915#280])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_ctx_sseu@engines.html
* igt@gem_ctx_sseu@invalid-args:
- shard-rkl: NOTRUN -> [SKIP][30] ([i915#280])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@gem_ctx_sseu@invalid-args.html
- shard-tglu: NOTRUN -> [SKIP][31] ([i915#280])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@gem_ctx_sseu@invalid-args.html
* igt@gem_ctx_sseu@mmap-args:
- shard-dg2: NOTRUN -> [SKIP][32] ([i915#280])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@gem_ctx_sseu@mmap-args.html
* igt@gem_eio@hibernate:
- shard-tglu: NOTRUN -> [ABORT][33] ([i915#7975])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@gem_eio@hibernate.html
* igt@gem_eio@wait-10ms:
- shard-mtlp: [PASS][34] -> [ABORT][35] ([i915#13193])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-mtlp-1/igt@gem_eio@wait-10ms.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-7/igt@gem_eio@wait-10ms.html
* igt@gem_exec_balancer@bonded-dual:
- shard-mtlp: NOTRUN -> [SKIP][36] ([i915#4771])
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@gem_exec_balancer@bonded-dual.html
* igt@gem_exec_balancer@bonded-false-hang:
- shard-dg2: NOTRUN -> [SKIP][37] ([i915#4812]) +1 other test skip
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@gem_exec_balancer@bonded-false-hang.html
* igt@gem_exec_balancer@hog:
- shard-dg2-9: NOTRUN -> [SKIP][38] ([i915#4812])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_exec_balancer@hog.html
* igt@gem_exec_big@single:
- shard-tglu: [PASS][39] -> [ABORT][40] ([i915#11713])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-tglu-2/igt@gem_exec_big@single.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-6/igt@gem_exec_big@single.html
* igt@gem_exec_capture@capture-invisible@lmem0:
- shard-dg2: NOTRUN -> [SKIP][41] ([i915#6334]) +2 other tests skip
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@gem_exec_capture@capture-invisible@lmem0.html
* igt@gem_exec_fence@submit3:
- shard-mtlp: NOTRUN -> [SKIP][42] ([i915#4812]) +2 other tests skip
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-5/igt@gem_exec_fence@submit3.html
* igt@gem_exec_flush@basic-batch-kernel-default-cmd:
- shard-dg2: NOTRUN -> [SKIP][43] ([i915#3539] / [i915#4852]) +2 other tests skip
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
* igt@gem_exec_flush@basic-uc-set-default:
- shard-dg2: NOTRUN -> [SKIP][44] ([i915#3539]) +1 other test skip
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@gem_exec_flush@basic-uc-set-default.html
* igt@gem_exec_flush@basic-wb-rw-default:
- shard-dg2-9: NOTRUN -> [SKIP][45] ([i915#3539] / [i915#4852])
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_exec_flush@basic-wb-rw-default.html
* igt@gem_exec_reloc@basic-cpu-wc-active:
- shard-mtlp: NOTRUN -> [SKIP][46] ([i915#3281]) +8 other tests skip
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-3/igt@gem_exec_reloc@basic-cpu-wc-active.html
* igt@gem_exec_reloc@basic-cpu-wc-noreloc:
- shard-dg2-9: NOTRUN -> [SKIP][47] ([i915#3281]) +7 other tests skip
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_exec_reloc@basic-cpu-wc-noreloc.html
* igt@gem_exec_reloc@basic-write-read-noreloc:
- shard-rkl: NOTRUN -> [SKIP][48] ([i915#3281]) +9 other tests skip
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@gem_exec_reloc@basic-write-read-noreloc.html
* igt@gem_exec_reloc@basic-write-wc-active:
- shard-dg2: NOTRUN -> [SKIP][49] ([i915#3281]) +7 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-7/igt@gem_exec_reloc@basic-write-wc-active.html
* igt@gem_exec_schedule@preempt-queue-chain:
- shard-mtlp: NOTRUN -> [SKIP][50] ([i915#4537] / [i915#4812])
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@gem_exec_schedule@preempt-queue-chain.html
* igt@gem_fenced_exec_thrash@2-spare-fences:
- shard-dg2: NOTRUN -> [SKIP][51] ([i915#4860])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@gem_fenced_exec_thrash@2-spare-fences.html
* igt@gem_fenced_exec_thrash@no-spare-fences-busy:
- shard-mtlp: NOTRUN -> [SKIP][52] ([i915#4860])
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-3/igt@gem_fenced_exec_thrash@no-spare-fences-busy.html
* igt@gem_fenced_exec_thrash@no-spare-fences-busy-interruptible:
- shard-dg2-9: NOTRUN -> [SKIP][53] ([i915#4860])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_fenced_exec_thrash@no-spare-fences-busy-interruptible.html
* igt@gem_lmem_evict@dontneed-evict-race:
- shard-tglu-1: NOTRUN -> [SKIP][54] ([i915#4613] / [i915#7582])
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@gem_lmem_evict@dontneed-evict-race.html
* igt@gem_lmem_swapping@heavy-verify-random:
- shard-mtlp: NOTRUN -> [SKIP][55] ([i915#4613]) +2 other tests skip
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-3/igt@gem_lmem_swapping@heavy-verify-random.html
* igt@gem_lmem_swapping@parallel-multi:
- shard-tglu-1: NOTRUN -> [SKIP][56] ([i915#4613])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@gem_lmem_swapping@parallel-multi.html
* igt@gem_lmem_swapping@parallel-random-verify-ccs:
- shard-rkl: NOTRUN -> [SKIP][57] ([i915#4613]) +4 other tests skip
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@gem_lmem_swapping@parallel-random-verify-ccs.html
* igt@gem_lmem_swapping@smem-oom@lmem0:
- shard-dg2: NOTRUN -> [TIMEOUT][58] ([i915#5493]) +1 other test timeout
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@gem_lmem_swapping@smem-oom@lmem0.html
* igt@gem_lmem_swapping@verify-random:
- shard-tglu: NOTRUN -> [SKIP][59] ([i915#4613]) +1 other test skip
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@gem_lmem_swapping@verify-random.html
* igt@gem_madvise@dontneed-before-pwrite:
- shard-rkl: NOTRUN -> [SKIP][60] ([i915#3282]) +5 other tests skip
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@gem_madvise@dontneed-before-pwrite.html
* igt@gem_media_vme:
- shard-dg2: NOTRUN -> [SKIP][61] ([i915#284])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@gem_media_vme.html
- shard-mtlp: NOTRUN -> [SKIP][62] ([i915#284])
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-5/igt@gem_media_vme.html
* igt@gem_mmap@short-mmap:
- shard-dg2: NOTRUN -> [SKIP][63] ([i915#4083]) +9 other tests skip
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-7/igt@gem_mmap@short-mmap.html
* igt@gem_mmap_gtt@bad-object:
- shard-dg2: NOTRUN -> [SKIP][64] ([i915#4077]) +12 other tests skip
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@gem_mmap_gtt@bad-object.html
* igt@gem_mmap_gtt@basic-short:
- shard-mtlp: NOTRUN -> [SKIP][65] ([i915#4077]) +11 other tests skip
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@gem_mmap_gtt@basic-short.html
* igt@gem_mmap_gtt@big-copy-odd:
- shard-dg1: NOTRUN -> [SKIP][66] ([i915#4077])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@gem_mmap_gtt@big-copy-odd.html
* igt@gem_mmap_wc@copy:
- shard-mtlp: NOTRUN -> [SKIP][67] ([i915#4083]) +3 other tests skip
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@gem_mmap_wc@copy.html
* igt@gem_pread@exhaustion:
- shard-tglu-1: NOTRUN -> [WARN][68] ([i915#2658])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@gem_pread@exhaustion.html
* igt@gem_pwrite@basic-random:
- shard-mtlp: NOTRUN -> [SKIP][69] ([i915#3282]) +4 other tests skip
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@gem_pwrite@basic-random.html
* igt@gem_pxp@display-protected-crc:
- shard-rkl: NOTRUN -> [TIMEOUT][70] ([i915#12917] / [i915#12964]) +1 other test timeout
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@gem_pxp@display-protected-crc.html
* igt@gem_pxp@hw-rejects-pxp-context:
- shard-tglu: NOTRUN -> [SKIP][71] ([i915#13398])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@gem_pxp@hw-rejects-pxp-context.html
* igt@gem_pxp@protected-raw-src-copy-not-readible:
- shard-dg2: NOTRUN -> [SKIP][72] ([i915#4270]) +7 other tests skip
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@gem_pxp@protected-raw-src-copy-not-readible.html
* igt@gem_pxp@regular-baseline-src-copy-readible:
- shard-rkl: NOTRUN -> [TIMEOUT][73] ([i915#12964])
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@gem_pxp@regular-baseline-src-copy-readible.html
* igt@gem_readwrite@read-bad-handle:
- shard-dg2-9: NOTRUN -> [SKIP][74] ([i915#3282]) +2 other tests skip
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_readwrite@read-bad-handle.html
* igt@gem_readwrite@read-write:
- shard-dg2: NOTRUN -> [SKIP][75] ([i915#3282]) +1 other test skip
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@gem_readwrite@read-write.html
* igt@gem_render_copy@linear-to-vebox-yf-tiled:
- shard-dg2-9: NOTRUN -> [SKIP][76] ([i915#5190] / [i915#8428]) +2 other tests skip
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_render_copy@linear-to-vebox-yf-tiled.html
* igt@gem_render_copy@y-tiled-to-vebox-x-tiled:
- shard-mtlp: NOTRUN -> [SKIP][77] ([i915#8428]) +2 other tests skip
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@gem_render_copy@y-tiled-to-vebox-x-tiled.html
* igt@gem_render_copy@y-tiled-to-vebox-y-tiled:
- shard-dg2: NOTRUN -> [SKIP][78] ([i915#5190] / [i915#8428]) +4 other tests skip
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@gem_render_copy@y-tiled-to-vebox-y-tiled.html
* igt@gem_render_tiled_blits@basic:
- shard-mtlp: NOTRUN -> [SKIP][79] ([i915#4079])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@gem_render_tiled_blits@basic.html
* igt@gem_set_tiling_vs_blt@tiled-to-tiled:
- shard-dg2: NOTRUN -> [SKIP][80] ([i915#4079]) +1 other test skip
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@gem_set_tiling_vs_blt@tiled-to-tiled.html
* igt@gem_set_tiling_vs_blt@untiled-to-tiled:
- shard-rkl: NOTRUN -> [SKIP][81] ([i915#8411])
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@gem_set_tiling_vs_blt@untiled-to-tiled.html
* igt@gem_softpin@evict-snoop:
- shard-dg2-9: NOTRUN -> [SKIP][82] ([i915#4885])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_softpin@evict-snoop.html
* igt@gem_tiled_swapping@non-threaded:
- shard-snb: NOTRUN -> [FAIL][83] ([i915#13805])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-snb4/igt@gem_tiled_swapping@non-threaded.html
* igt@gem_userptr_blits@coherency-sync:
- shard-rkl: NOTRUN -> [SKIP][84] ([i915#3297]) +2 other tests skip
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@gem_userptr_blits@coherency-sync.html
* igt@gem_userptr_blits@create-destroy-unsync:
- shard-mtlp: NOTRUN -> [SKIP][85] ([i915#3297]) +2 other tests skip
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-3/igt@gem_userptr_blits@create-destroy-unsync.html
* igt@gem_userptr_blits@dmabuf-sync:
- shard-rkl: NOTRUN -> [SKIP][86] ([i915#3297] / [i915#3323])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@gem_userptr_blits@dmabuf-sync.html
* igt@gem_userptr_blits@invalid-mmap-offset-unsync:
- shard-tglu: NOTRUN -> [SKIP][87] ([i915#3297]) +1 other test skip
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@gem_userptr_blits@invalid-mmap-offset-unsync.html
* igt@gem_userptr_blits@map-fixed-invalidate-busy:
- shard-dg2-9: NOTRUN -> [SKIP][88] ([i915#3297] / [i915#4880])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_userptr_blits@map-fixed-invalidate-busy.html
* igt@gem_userptr_blits@readonly-pwrite-unsync:
- shard-dg2-9: NOTRUN -> [SKIP][89] ([i915#3297])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gem_userptr_blits@readonly-pwrite-unsync.html
* igt@gem_userptr_blits@unsync-unmap-after-close:
- shard-dg2: NOTRUN -> [SKIP][90] ([i915#3297])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@gem_userptr_blits@unsync-unmap-after-close.html
* igt@gem_workarounds@suspend-resume:
- shard-glk: [PASS][91] -> [INCOMPLETE][92] ([i915#13356])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-glk3/igt@gem_workarounds@suspend-resume.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-glk9/igt@gem_workarounds@suspend-resume.html
* igt@gen9_exec_parse@allowed-all:
- shard-rkl: NOTRUN -> [SKIP][93] ([i915#2527]) +3 other tests skip
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@gen9_exec_parse@allowed-all.html
* igt@gen9_exec_parse@basic-rejected-ctx-param:
- shard-dg2-9: NOTRUN -> [SKIP][94] ([i915#2856]) +1 other test skip
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@gen9_exec_parse@basic-rejected-ctx-param.html
* igt@gen9_exec_parse@batch-without-end:
- shard-tglu: NOTRUN -> [SKIP][95] ([i915#2527] / [i915#2856])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@gen9_exec_parse@batch-without-end.html
* igt@gen9_exec_parse@bb-start-param:
- shard-dg2: NOTRUN -> [SKIP][96] ([i915#2856]) +2 other tests skip
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@gen9_exec_parse@bb-start-param.html
* igt@gen9_exec_parse@shadow-peek:
- shard-mtlp: NOTRUN -> [SKIP][97] ([i915#2856])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@gen9_exec_parse@shadow-peek.html
* igt@gen9_exec_parse@unaligned-access:
- shard-tglu-1: NOTRUN -> [SKIP][98] ([i915#2527] / [i915#2856])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@gen9_exec_parse@unaligned-access.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-rkl: [PASS][99] -> [ABORT][100] ([i915#9820])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-5/igt@i915_module_load@reload-with-fault-injection.html
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-2/igt@i915_module_load@reload-with-fault-injection.html
- shard-tglu-1: NOTRUN -> [ABORT][101] ([i915#10887] / [i915#12817] / [i915#9820])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_pm_freq_api@freq-basic-api:
- shard-rkl: NOTRUN -> [SKIP][102] ([i915#8399])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@i915_pm_freq_api@freq-basic-api.html
* igt@i915_pm_freq_api@freq-reset-multiple:
- shard-tglu-1: NOTRUN -> [SKIP][103] ([i915#8399])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@i915_pm_freq_api@freq-reset-multiple.html
* igt@i915_pm_rpm@gem-evict-pwrite:
- shard-rkl: NOTRUN -> [SKIP][104] ([i915#13328])
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@i915_pm_rpm@gem-evict-pwrite.html
* igt@i915_pm_rpm@system-suspend-devices:
- shard-snb: NOTRUN -> [SKIP][105] +70 other tests skip
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-snb4/igt@i915_pm_rpm@system-suspend-devices.html
* igt@i915_pm_rps@reset:
- shard-snb: [PASS][106] -> [INCOMPLETE][107] ([i915#13821])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-snb2/igt@i915_pm_rps@reset.html
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-snb5/igt@i915_pm_rps@reset.html
* igt@i915_pm_rps@thresholds:
- shard-dg2: NOTRUN -> [SKIP][108] ([i915#11681])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@i915_pm_rps@thresholds.html
* igt@i915_pm_rps@thresholds-idle:
- shard-dg2-9: NOTRUN -> [SKIP][109] ([i915#11681])
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@i915_pm_rps@thresholds-idle.html
* igt@i915_pm_sseu@full-enable:
- shard-rkl: NOTRUN -> [SKIP][110] ([i915#4387])
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@i915_pm_sseu@full-enable.html
* igt@i915_query@hwconfig_table:
- shard-rkl: NOTRUN -> [SKIP][111] ([i915#6245])
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@i915_query@hwconfig_table.html
* igt@i915_query@query-topology-coherent-slice-mask:
- shard-dg2: NOTRUN -> [SKIP][112] ([i915#6188])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-3/igt@i915_query@query-topology-coherent-slice-mask.html
* igt@i915_query@test-query-geometry-subslices:
- shard-rkl: NOTRUN -> [SKIP][113] ([i915#5723])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@i915_query@test-query-geometry-subslices.html
* igt@i915_selftest@live@workarounds:
- shard-mtlp: [PASS][114] -> [DMESG-FAIL][115] ([i915#12061]) +1 other test dmesg-fail
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-mtlp-3/igt@i915_selftest@live@workarounds.html
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-2/igt@i915_selftest@live@workarounds.html
* igt@i915_selftest@mock:
- shard-mtlp: NOTRUN -> [DMESG-WARN][116] ([i915#9311]) +1 other test dmesg-warn
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@i915_selftest@mock.html
* igt@intel_hwmon@hwmon-read:
- shard-mtlp: NOTRUN -> [SKIP][117] ([i915#7707])
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-3/igt@intel_hwmon@hwmon-read.html
* igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy:
- shard-dg2: NOTRUN -> [SKIP][118] ([i915#4212])
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy.html
* igt@kms_addfb_basic@invalid-smem-bo-on-discrete:
- shard-mtlp: NOTRUN -> [SKIP][119] ([i915#12454] / [i915#12712])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-5/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html
* igt@kms_addfb_basic@small-bo:
- shard-dg1: [PASS][120] -> [DMESG-WARN][121] ([i915#4423])
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-19/igt@kms_addfb_basic@small-bo.html
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-13/igt@kms_addfb_basic@small-bo.html
* igt@kms_addfb_basic@tile-pitch-mismatch:
- shard-mtlp: NOTRUN -> [SKIP][122] ([i915#4212])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@kms_addfb_basic@tile-pitch-mismatch.html
- shard-dg2-9: NOTRUN -> [SKIP][123] ([i915#4212])
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_addfb_basic@tile-pitch-mismatch.html
* igt@kms_async_flips@async-flip-with-page-flip-events-atomic@pipe-a-hdmi-a-3-y-rc-ccs-cc:
- shard-dg1: NOTRUN -> [SKIP][124] ([i915#8709]) +3 other tests skip
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-13/igt@kms_async_flips@async-flip-with-page-flip-events-atomic@pipe-a-hdmi-a-3-y-rc-ccs-cc.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-1-y-rc-ccs-cc:
- shard-rkl: NOTRUN -> [SKIP][125] ([i915#8709]) +1 other test skip
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-1-y-rc-ccs-cc.html
- shard-tglu: NOTRUN -> [SKIP][126] ([i915#8709]) +3 other tests skip
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-1-y-rc-ccs-cc.html
* igt@kms_atomic@plane-primary-overlay-mutable-zpos:
- shard-dg2: NOTRUN -> [SKIP][127] ([i915#9531])
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
- shard-tglu: [PASS][128] -> [FAIL][129] ([i915#11808]) +1 other test fail
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-tglu-6/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-5/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
- shard-tglu-1: NOTRUN -> [SKIP][130] ([i915#1769] / [i915#3555])
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
* igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
- shard-dg2: NOTRUN -> [SKIP][131] ([i915#1769] / [i915#3555])
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html
* igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-4:
- shard-dg1: [PASS][132] -> [FAIL][133] ([i915#5956]) +1 other test fail
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-19/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-4.html
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-17/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-4.html
* igt@kms_big_fb@4-tiled-addfb:
- shard-rkl: NOTRUN -> [SKIP][134] ([i915#5286]) +6 other tests skip
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_big_fb@4-tiled-addfb.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-tglu: NOTRUN -> [SKIP][135] ([i915#5286]) +2 other tests skip
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/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:
- shard-tglu-1: NOTRUN -> [SKIP][136] ([i915#5286]) +2 other tests skip
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0.html
* igt@kms_big_fb@linear-8bpp-rotate-270:
- shard-rkl: NOTRUN -> [SKIP][137] ([i915#3638]) +2 other tests skip
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_big_fb@linear-8bpp-rotate-270.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-async-flip:
- shard-dg2: NOTRUN -> [SKIP][138] ([i915#4538] / [i915#5190]) +10 other tests skip
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-async-flip:
- shard-dg2-9: NOTRUN -> [SKIP][139] ([i915#4538] / [i915#5190]) +3 other tests skip
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html
* igt@kms_big_fb@yf-tiled-16bpp-rotate-180:
- shard-rkl: NOTRUN -> [SKIP][140] +20 other tests skip
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_big_fb@yf-tiled-16bpp-rotate-180.html
* igt@kms_big_fb@yf-tiled-addfb:
- shard-mtlp: NOTRUN -> [SKIP][141] ([i915#6187])
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-5/igt@kms_big_fb@yf-tiled-addfb.html
* igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow:
- shard-dg2-9: NOTRUN -> [SKIP][142] ([i915#5190])
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html
* igt@kms_big_fb@yf-tiled-addfb-size-overflow:
- shard-dg2: NOTRUN -> [SKIP][143] ([i915#5190]) +3 other tests skip
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html
* igt@kms_ccs@bad-aux-stride-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][144] ([i915#10307] / [i915#10434] / [i915#6095]) +3 other tests skip
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_ccs@bad-aux-stride-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1.html
* igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs:
- shard-rkl: NOTRUN -> [SKIP][145] ([i915#12313]) +2 other tests skip
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs.html
* igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs-cc@pipe-b-hdmi-a-4:
- shard-dg1: NOTRUN -> [SKIP][146] ([i915#6095]) +148 other tests skip
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-18/igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs-cc@pipe-b-hdmi-a-4.html
* igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][147] ([i915#6095]) +104 other tests skip
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-5/igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2.html
* igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-1:
- shard-tglu: NOTRUN -> [SKIP][148] ([i915#6095]) +29 other tests skip
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-1.html
* igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-2:
- shard-dg2-9: NOTRUN -> [SKIP][149] ([i915#10307] / [i915#6095]) +19 other tests skip
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-2.html
* igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs:
- shard-dg2: NOTRUN -> [SKIP][150] ([i915#12313]) +1 other test skip
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs:
- shard-mtlp: NOTRUN -> [SKIP][151] ([i915#12313])
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs@pipe-d-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][152] ([i915#6095]) +39 other tests skip
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-5/igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs@pipe-d-edp-1.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-1:
- shard-glk: NOTRUN -> [SKIP][153] +20 other tests skip
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-glk5/igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs:
- shard-rkl: NOTRUN -> [SKIP][154] ([i915#12805])
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs.html
- shard-tglu: NOTRUN -> [SKIP][155] ([i915#12805])
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs:
- shard-dg2-9: NOTRUN -> [SKIP][156] ([i915#6095]) +4 other tests skip
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][157] ([i915#6095]) +26 other tests skip
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc@pipe-d-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1:
- shard-tglu-1: NOTRUN -> [SKIP][158] ([i915#6095]) +24 other tests skip
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-3:
- shard-dg2: NOTRUN -> [SKIP][159] ([i915#10307] / [i915#6095]) +159 other tests skip
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-6/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-3.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-mtlp: NOTRUN -> [SKIP][160] ([i915#13784])
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_cdclk@mode-transition@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][161] ([i915#13781]) +4 other tests skip
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_cdclk@mode-transition@pipe-d-hdmi-a-1.html
* igt@kms_cdclk@plane-scaling@pipe-d-hdmi-a-2:
- shard-dg2-9: NOTRUN -> [SKIP][162] ([i915#13783]) +4 other tests skip
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_cdclk@plane-scaling@pipe-d-hdmi-a-2.html
* igt@kms_chamelium_audio@hdmi-audio:
- shard-dg2-9: NOTRUN -> [SKIP][163] ([i915#11151] / [i915#7828]) +5 other tests skip
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_chamelium_audio@hdmi-audio.html
* igt@kms_chamelium_edid@dp-edid-stress-resolution-4k:
- shard-tglu: NOTRUN -> [SKIP][164] ([i915#11151] / [i915#7828]) +1 other test skip
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_chamelium_edid@dp-edid-stress-resolution-4k.html
* igt@kms_chamelium_edid@hdmi-edid-read:
- shard-tglu-1: NOTRUN -> [SKIP][165] ([i915#11151] / [i915#7828]) +4 other tests skip
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_chamelium_edid@hdmi-edid-read.html
* igt@kms_chamelium_edid@hdmi-edid-stress-resolution-non-4k:
- shard-dg2: NOTRUN -> [SKIP][166] ([i915#11151] / [i915#7828]) +8 other tests skip
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_chamelium_edid@hdmi-edid-stress-resolution-non-4k.html
* igt@kms_chamelium_hpd@dp-hpd-storm:
- shard-mtlp: NOTRUN -> [SKIP][167] ([i915#11151] / [i915#7828]) +5 other tests skip
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_chamelium_hpd@dp-hpd-storm.html
* igt@kms_chamelium_hpd@vga-hpd-fast:
- shard-rkl: NOTRUN -> [SKIP][168] ([i915#11151] / [i915#7828]) +10 other tests skip
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@kms_chamelium_hpd@vga-hpd-fast.html
* igt@kms_content_protection@atomic-dpms:
- shard-dg2: NOTRUN -> [SKIP][169] ([i915#7118] / [i915#9424])
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_content_protection@atomic-dpms.html
- shard-mtlp: NOTRUN -> [SKIP][170] ([i915#6944] / [i915#9424]) +1 other test skip
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-5/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@content-type-change:
- shard-dg2: NOTRUN -> [SKIP][171] ([i915#9424])
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_content_protection@content-type-change.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-dg2-9: NOTRUN -> [SKIP][172] ([i915#3299])
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-tglu-1: NOTRUN -> [SKIP][173] ([i915#3116] / [i915#3299]) +1 other test skip
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_content_protection@legacy:
- shard-tglu: NOTRUN -> [SKIP][174] ([i915#6944] / [i915#7116] / [i915#7118] / [i915#9424])
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@kms_content_protection@legacy.html
* igt@kms_content_protection@srm@pipe-a-dp-3:
- shard-dg2: NOTRUN -> [FAIL][175] ([i915#7173])
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-11/igt@kms_content_protection@srm@pipe-a-dp-3.html
* igt@kms_content_protection@type1:
- shard-rkl: NOTRUN -> [SKIP][176] ([i915#7118] / [i915#9424]) +2 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-offscreen-512x170:
- shard-tglu: NOTRUN -> [SKIP][177] ([i915#13049]) +1 other test skip
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_cursor_crc@cursor-offscreen-512x170.html
* igt@kms_cursor_crc@cursor-onscreen-max-size:
- shard-mtlp: NOTRUN -> [SKIP][178] ([i915#3555] / [i915#8814]) +2 other tests skip
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_cursor_crc@cursor-onscreen-max-size.html
* igt@kms_cursor_crc@cursor-random-512x170:
- shard-dg2-9: NOTRUN -> [SKIP][179] ([i915#13049])
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_cursor_crc@cursor-random-512x170.html
* igt@kms_cursor_crc@cursor-rapid-movement-512x170:
- shard-rkl: NOTRUN -> [SKIP][180] ([i915#13049]) +1 other test skip
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_cursor_crc@cursor-rapid-movement-512x170.html
* igt@kms_cursor_crc@cursor-sliding-256x85:
- shard-mtlp: NOTRUN -> [SKIP][181] ([i915#8814]) +1 other test skip
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@kms_cursor_crc@cursor-sliding-256x85.html
* igt@kms_cursor_crc@cursor-sliding-32x10:
- shard-dg2: NOTRUN -> [SKIP][182] ([i915#3555]) +9 other tests skip
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_cursor_crc@cursor-sliding-32x10.html
* igt@kms_cursor_crc@cursor-sliding-512x512:
- shard-mtlp: NOTRUN -> [SKIP][183] ([i915#13049])
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-3/igt@kms_cursor_crc@cursor-sliding-512x512.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- shard-dg2-9: NOTRUN -> [SKIP][184] ([i915#4103] / [i915#4213])
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- shard-rkl: NOTRUN -> [SKIP][185] ([i915#4103]) +1 other test skip
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
* igt@kms_cursor_legacy@cursora-vs-flipb-atomic:
- shard-dg2-9: NOTRUN -> [SKIP][186] ([i915#13046] / [i915#5354])
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_cursor_legacy@cursora-vs-flipb-atomic.html
* igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size:
- shard-dg2: NOTRUN -> [SKIP][187] ([i915#13046] / [i915#5354]) +2 other tests skip
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-7/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions:
- shard-mtlp: NOTRUN -> [SKIP][188] ([i915#9809]) +1 other test skip
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions.html
* igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
- shard-rkl: NOTRUN -> [SKIP][189] ([i915#9067])
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-tglu: NOTRUN -> [SKIP][190] ([i915#4103])
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
* igt@kms_display_modes@extended-mode-basic:
- shard-tglu-1: NOTRUN -> [SKIP][191] ([i915#13691])
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_display_modes@extended-mode-basic.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][192] ([i915#3804])
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-6/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2.html
* igt@kms_dp_aux_dev:
- shard-dg2: NOTRUN -> [SKIP][193] ([i915#1257])
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_dp_aux_dev.html
* igt@kms_dp_link_training@non-uhbr-sst:
- shard-rkl: NOTRUN -> [SKIP][194] ([i915#13749])
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_dp_link_training@non-uhbr-sst.html
- shard-tglu: NOTRUN -> [SKIP][195] ([i915#13749])
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_dp_link_training@non-uhbr-sst.html
* igt@kms_dp_link_training@uhbr-mst:
- shard-tglu: NOTRUN -> [SKIP][196] ([i915#13748])
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@kms_dp_link_training@uhbr-mst.html
* igt@kms_dp_link_training@uhbr-sst:
- shard-rkl: NOTRUN -> [SKIP][197] ([i915#13748])
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_dp_link_training@uhbr-sst.html
* igt@kms_draw_crc@draw-method-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][198] ([i915#3555] / [i915#8812])
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@kms_draw_crc@draw-method-mmap-gtt.html
- shard-dg2-9: NOTRUN -> [SKIP][199] ([i915#8812])
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_draw_crc@draw-method-mmap-gtt.html
* igt@kms_dsc@dsc-basic:
- shard-mtlp: NOTRUN -> [SKIP][200] ([i915#3555] / [i915#3840] / [i915#9159])
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_dsc@dsc-basic.html
* igt@kms_dsc@dsc-fractional-bpp-with-bpc:
- shard-rkl: NOTRUN -> [SKIP][201] ([i915#3840])
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html
* igt@kms_dsc@dsc-with-formats:
- shard-tglu-1: NOTRUN -> [SKIP][202] ([i915#3555] / [i915#3840])
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_dsc@dsc-with-formats.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc:
- shard-dg2-9: NOTRUN -> [SKIP][203] ([i915#3840] / [i915#9053])
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_dsc@dsc-with-output-formats-with-bpc.html
* igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests:
- shard-dg2: NOTRUN -> [SKIP][204] ([i915#13798])
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests.html
* igt@kms_feature_discovery@chamelium:
- shard-rkl: NOTRUN -> [SKIP][205] ([i915#4854])
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@kms_feature_discovery@chamelium.html
* igt@kms_feature_discovery@display-2x:
- shard-mtlp: NOTRUN -> [SKIP][206] ([i915#1839])
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_feature_discovery@display-2x.html
* igt@kms_feature_discovery@dp-mst:
- shard-rkl: NOTRUN -> [SKIP][207] ([i915#9337])
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_feature_discovery@dp-mst.html
- shard-tglu: NOTRUN -> [SKIP][208] ([i915#9337])
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_feature_discovery@dp-mst.html
* igt@kms_feature_discovery@psr1:
- shard-tglu: NOTRUN -> [SKIP][209] ([i915#658])
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@kms_feature_discovery@psr1.html
* igt@kms_feature_discovery@psr2:
- shard-dg2-9: NOTRUN -> [SKIP][210] ([i915#658])
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_feature_discovery@psr2.html
* igt@kms_flip@2x-absolute-wf_vblank:
- shard-tglu-1: NOTRUN -> [SKIP][211] ([i915#3637]) +4 other tests skip
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_flip@2x-absolute-wf_vblank.html
* igt@kms_flip@2x-flip-vs-dpms:
- shard-tglu: NOTRUN -> [SKIP][212] ([i915#3637]) +2 other tests skip
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_flip@2x-flip-vs-dpms.html
* igt@kms_flip@2x-flip-vs-expired-vblank:
- shard-mtlp: NOTRUN -> [SKIP][213] ([i915#3637]) +7 other tests skip
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_flip@2x-flip-vs-expired-vblank.html
* igt@kms_flip@2x-flip-vs-fences:
- shard-dg2: NOTRUN -> [SKIP][214] ([i915#8381])
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_flip@2x-flip-vs-fences.html
* igt@kms_flip@2x-flip-vs-suspend-interruptible:
- shard-dg2-9: NOTRUN -> [SKIP][215] ([i915#9934]) +5 other tests skip
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_flip@2x-flip-vs-suspend-interruptible.html
* igt@kms_flip@2x-plain-flip:
- shard-rkl: NOTRUN -> [SKIP][216] ([i915#9934]) +5 other tests skip
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_flip@2x-plain-flip.html
* igt@kms_flip@2x-plain-flip-ts-check:
- shard-dg2: NOTRUN -> [SKIP][217] ([i915#9934]) +4 other tests skip
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_flip@2x-plain-flip-ts-check.html
* igt@kms_flip@dpms-off-confusion-interruptible@a-hdmi-a1:
- shard-rkl: NOTRUN -> [DMESG-WARN][218] ([i915#12964]) +13 other tests dmesg-warn
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-4/igt@kms_flip@dpms-off-confusion-interruptible@a-hdmi-a1.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling:
- shard-mtlp: NOTRUN -> [SKIP][219] ([i915#3555] / [i915#8810] / [i915#8813])
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling@pipe-a-default-mode:
- shard-mtlp: NOTRUN -> [SKIP][220] ([i915#8810])
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-default-mode:
- shard-mtlp: NOTRUN -> [SKIP][221] ([i915#2672] / [i915#8813]) +1 other test skip
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling:
- shard-tglu-1: NOTRUN -> [SKIP][222] ([i915#2672] / [i915#3555]) +1 other test skip
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling:
- shard-dg2: NOTRUN -> [SKIP][223] ([i915#2672] / [i915#3555] / [i915#5190]) +3 other tests skip
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling:
- shard-dg2-9: NOTRUN -> [SKIP][224] ([i915#2672] / [i915#3555] / [i915#5190])
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling:
- shard-tglu: NOTRUN -> [SKIP][225] ([i915#2587] / [i915#2672] / [i915#3555])
[225]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling@pipe-a-valid-mode:
- shard-tglu: NOTRUN -> [SKIP][226] ([i915#2587] / [i915#2672])
[226]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode:
- shard-tglu-1: NOTRUN -> [SKIP][227] ([i915#2587] / [i915#2672]) +1 other test skip
[227]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling:
- shard-dg2-9: NOTRUN -> [SKIP][228] ([i915#2672] / [i915#3555])
[228]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling@pipe-a-valid-mode:
- shard-dg2-9: NOTRUN -> [SKIP][229] ([i915#2672]) +1 other test skip
[229]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling:
- shard-rkl: NOTRUN -> [SKIP][230] ([i915#2672] / [i915#3555]) +7 other tests skip
[230]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling@pipe-a-valid-mode:
- shard-rkl: NOTRUN -> [SKIP][231] ([i915#2672]) +7 other tests skip
[231]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling@pipe-a-valid-mode:
- shard-dg2: NOTRUN -> [SKIP][232] ([i915#2672]) +3 other tests skip
[232]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling:
- shard-mtlp: NOTRUN -> [SKIP][233] ([i915#2672] / [i915#3555] / [i915#8813]) +5 other tests skip
[233]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
- shard-dg2: [PASS][234] -> [FAIL][235] ([i915#6880]) +1 other test fail
[234]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite.html
[235]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-blt:
- shard-mtlp: NOTRUN -> [SKIP][236] ([i915#1825]) +25 other tests skip
[236]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt:
- shard-dg2: NOTRUN -> [SKIP][237] ([i915#5354]) +27 other tests skip
[237]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen:
- shard-tglu-1: NOTRUN -> [SKIP][238] +33 other tests skip
[238]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-mmap-wc:
- shard-dg2-9: NOTRUN -> [SKIP][239] ([i915#8708]) +11 other tests skip
[239]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt:
- shard-tglu: NOTRUN -> [SKIP][240] +29 other tests skip
[240]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][241] ([i915#8708]) +17 other tests skip
[241]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][242] ([i915#8708]) +7 other tests skip
[242]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-blt:
- shard-dg1: NOTRUN -> [SKIP][243] +3 other tests skip
[243]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-farfromfence-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][244] ([i915#8708])
[244]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@kms_frontbuffer_tracking@fbcpsr-farfromfence-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-wc:
- shard-rkl: NOTRUN -> [SKIP][245] ([i915#3023]) +27 other tests skip
[245]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-rkl: NOTRUN -> [SKIP][246] ([i915#5439])
[246]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-y:
- shard-dg2-9: NOTRUN -> [SKIP][247] ([i915#10055])
[247]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html
* igt@kms_frontbuffer_tracking@pipe-fbc-rte:
- shard-dg2: NOTRUN -> [SKIP][248] ([i915#9766])
[248]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_frontbuffer_tracking@pipe-fbc-rte.html
* igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-blt:
- shard-dg2-9: NOTRUN -> [SKIP][249] ([i915#3458]) +3 other tests skip
[249]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-cpu:
- shard-dg2: NOTRUN -> [SKIP][250] ([i915#3458]) +18 other tests skip
[250]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move:
- shard-dg2: NOTRUN -> [SKIP][251] ([i915#10433] / [i915#3458])
[251]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-cpu:
- shard-dg2-9: NOTRUN -> [SKIP][252] ([i915#5354]) +14 other tests skip
[252]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt:
- shard-rkl: NOTRUN -> [SKIP][253] ([i915#1825]) +44 other tests skip
[253]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt.html
* igt@kms_frontbuffer_tracking@psr-slowdraw:
- shard-dg1: NOTRUN -> [SKIP][254] ([i915#3458]) +1 other test skip
[254]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@kms_frontbuffer_tracking@psr-slowdraw.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-dg2-9: NOTRUN -> [SKIP][255] ([i915#3555] / [i915#8228])
[255]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_hdr@invalid-metadata-sizes:
- shard-rkl: NOTRUN -> [SKIP][256] ([i915#3555] / [i915#8228])
[256]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_hdr@invalid-metadata-sizes.html
- shard-tglu: NOTRUN -> [SKIP][257] ([i915#3555] / [i915#8228]) +1 other test skip
[257]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_hdr@invalid-metadata-sizes.html
* igt@kms_hdr@static-toggle:
- shard-dg2: NOTRUN -> [SKIP][258] ([i915#3555] / [i915#8228]) +1 other test skip
[258]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_hdr@static-toggle.html
* igt@kms_hdr@static-toggle-suspend:
- shard-dg2: [PASS][259] -> [SKIP][260] ([i915#3555] / [i915#8228]) +1 other test skip
[259]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-11/igt@kms_hdr@static-toggle-suspend.html
[260]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_hdr@static-toggle-suspend.html
- shard-mtlp: NOTRUN -> [SKIP][261] ([i915#3555] / [i915#8228])
[261]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_hdr@static-toggle-suspend.html
* igt@kms_joiner@basic-big-joiner:
- shard-mtlp: NOTRUN -> [SKIP][262] ([i915#10656])
[262]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_joiner@basic-big-joiner.html
* igt@kms_joiner@basic-force-big-joiner:
- shard-dg2-9: NOTRUN -> [SKIP][263] ([i915#12388])
[263]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_joiner@basic-force-big-joiner.html
* igt@kms_joiner@basic-force-ultra-joiner:
- shard-dg2: NOTRUN -> [SKIP][264] ([i915#10656])
[264]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_joiner@basic-force-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-force-ultra-joiner:
- shard-dg2-9: NOTRUN -> [SKIP][265] ([i915#10656])
[265]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-ultra-joiner:
- shard-rkl: NOTRUN -> [SKIP][266] ([i915#12339])
[266]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_joiner@invalid-modeset-ultra-joiner.html
* igt@kms_joiner@switch-modeset-ultra-joiner-big-joiner:
- shard-rkl: NOTRUN -> [SKIP][267] ([i915#13522])
[267]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_joiner@switch-modeset-ultra-joiner-big-joiner.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-dg2: NOTRUN -> [SKIP][268] ([i915#4816])
[268]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_panel_fitting@legacy:
- shard-tglu: NOTRUN -> [SKIP][269] ([i915#6301]) +1 other test skip
[269]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_panel_fitting@legacy.html
- shard-rkl: NOTRUN -> [SKIP][270] ([i915#6301])
[270]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_panel_fitting@legacy.html
* igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes:
- shard-dg2: NOTRUN -> [SKIP][271] +8 other tests skip
[271]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes.html
* igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c:
- shard-mtlp: NOTRUN -> [SKIP][272] +17 other tests skip
[272]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c.html
* igt@kms_pipe_b_c_ivb@pipe-b-dpms-off-modeset-pipe-c:
- shard-dg2-9: NOTRUN -> [SKIP][273] +4 other tests skip
[273]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_pipe_b_c_ivb@pipe-b-dpms-off-modeset-pipe-c.html
* igt@kms_plane_lowres@tiling-4:
- shard-tglu-1: NOTRUN -> [SKIP][274] ([i915#3555]) +1 other test skip
[274]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_plane_lowres@tiling-4.html
* igt@kms_plane_lowres@tiling-y:
- shard-mtlp: NOTRUN -> [SKIP][275] ([i915#3555] / [i915#8821])
[275]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@kms_plane_lowres@tiling-y.html
- shard-dg2-9: NOTRUN -> [SKIP][276] ([i915#8821])
[276]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_plane_lowres@tiling-y.html
* igt@kms_plane_lowres@tiling-yf:
- shard-dg2: NOTRUN -> [SKIP][277] ([i915#3555] / [i915#8821])
[277]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_plane_lowres@tiling-yf.html
* igt@kms_plane_multiple@tiling-y:
- shard-dg2: NOTRUN -> [SKIP][278] ([i915#8806])
[278]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_plane_multiple@tiling-y.html
* igt@kms_plane_multiple@tiling-yf:
- shard-rkl: NOTRUN -> [SKIP][279] ([i915#3555]) +9 other tests skip
[279]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@kms_plane_multiple@tiling-yf.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers:
- shard-dg2: NOTRUN -> [SKIP][280] ([i915#12247] / [i915#9423]) +1 other test skip
[280]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers.html
* igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-a:
- shard-tglu-1: NOTRUN -> [SKIP][281] ([i915#12247]) +4 other tests skip
[281]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-a.html
* igt@kms_plane_scaling@plane-upscale-factor-0-25-with-rotation@pipe-d:
- shard-tglu: NOTRUN -> [SKIP][282] ([i915#12247]) +4 other tests skip
[282]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_plane_scaling@plane-upscale-factor-0-25-with-rotation@pipe-d.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25:
- shard-mtlp: NOTRUN -> [SKIP][283] ([i915#12247] / [i915#6953]) +2 other tests skip
[283]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_plane_scaling@planes-downscale-factor-0-25.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-d:
- shard-dg2: NOTRUN -> [SKIP][284] ([i915#12247]) +15 other tests skip
[284]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-d.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25:
- shard-rkl: NOTRUN -> [SKIP][285] ([i915#12247] / [i915#6953]) +1 other test skip
[285]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-b:
- shard-rkl: NOTRUN -> [SKIP][286] ([i915#12247]) +7 other tests skip
[286]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-b.html
* igt@kms_plane_scaling@planes-downscale-factor-0-5-upscale-20x20@pipe-d:
- shard-mtlp: NOTRUN -> [SKIP][287] ([i915#12247]) +25 other tests skip
[287]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_plane_scaling@planes-downscale-factor-0-5-upscale-20x20@pipe-d.html
* igt@kms_plane_scaling@planes-downscale-factor-0-5-upscale-factor-0-25:
- shard-mtlp: NOTRUN -> [SKIP][288] ([i915#6953]) +1 other test skip
[288]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-3/igt@kms_plane_scaling@planes-downscale-factor-0-5-upscale-factor-0-25.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25:
- shard-dg2: NOTRUN -> [SKIP][289] ([i915#12247] / [i915#3555] / [i915#9423])
[289]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-3/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25.html
- shard-dg1: NOTRUN -> [SKIP][290] ([i915#12247] / [i915#3555])
[290]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-a:
- shard-dg1: NOTRUN -> [SKIP][291] ([i915#12247]) +3 other tests skip
[291]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-a.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25:
- shard-dg2: NOTRUN -> [SKIP][292] ([i915#12247] / [i915#6953] / [i915#9423])
[292]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25.html
* igt@kms_pm_backlight@basic-brightness:
- shard-tglu: NOTRUN -> [SKIP][293] ([i915#9812])
[293]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@kms_pm_backlight@basic-brightness.html
* igt@kms_pm_backlight@brightness-with-dpms:
- shard-dg2: NOTRUN -> [SKIP][294] ([i915#12343])
[294]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_pm_backlight@brightness-with-dpms.html
* igt@kms_pm_dc@dc5-dpms-negative:
- shard-mtlp: NOTRUN -> [SKIP][295] ([i915#13441])
[295]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@kms_pm_dc@dc5-dpms-negative.html
* igt@kms_pm_dc@dc5-retention-flops:
- shard-dg2-9: NOTRUN -> [SKIP][296] ([i915#3828])
[296]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_pm_dc@dc5-retention-flops.html
* igt@kms_pm_dc@dc6-dpms:
- shard-tglu: [PASS][297] -> [FAIL][298] ([i915#9295])
[297]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-tglu-10/igt@kms_pm_dc@dc6-dpms.html
[298]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@kms_pm_dc@dc6-dpms.html
* igt@kms_pm_dc@dc6-psr:
- shard-rkl: NOTRUN -> [SKIP][299] ([i915#9685]) +2 other tests skip
[299]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_pm_dc@dc6-psr.html
* igt@kms_pm_dc@dc9-dpms:
- shard-rkl: NOTRUN -> [SKIP][300] ([i915#3361])
[300]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_pm_dc@dc9-dpms.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-rkl: NOTRUN -> [SKIP][301] ([i915#9519])
[301]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@kms_pm_rpm@dpms-lpsp.html
* igt@kms_pm_rpm@fences:
- shard-dg2-9: NOTRUN -> [SKIP][302] ([i915#4077]) +4 other tests skip
[302]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_pm_rpm@fences.html
* igt@kms_pm_rpm@modeset-lpsp:
- shard-dg2: [PASS][303] -> [SKIP][304] ([i915#9519])
[303]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-8/igt@kms_pm_rpm@modeset-lpsp.html
[304]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-3/igt@kms_pm_rpm@modeset-lpsp.html
* igt@kms_prime@basic-crc-hybrid:
- shard-rkl: NOTRUN -> [SKIP][305] ([i915#6524]) +2 other tests skip
[305]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_prime@basic-crc-hybrid.html
- shard-tglu: NOTRUN -> [SKIP][306] ([i915#6524])
[306]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_prime@basic-crc-hybrid.html
* igt@kms_psr2_sf@fbc-pr-cursor-plane-update-sf:
- shard-mtlp: NOTRUN -> [SKIP][307] ([i915#12316]) +5 other tests skip
[307]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_psr2_sf@fbc-pr-cursor-plane-update-sf.html
* igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area:
- shard-tglu-1: NOTRUN -> [SKIP][308] ([i915#11520]) +3 other tests skip
[308]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-fully-sf@pipe-a-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][309] ([i915#9808]) +1 other test skip
[309]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-fully-sf@pipe-a-edp-1.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-sf:
- shard-dg2: NOTRUN -> [SKIP][310] ([i915#11520]) +8 other tests skip
[310]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf:
- shard-rkl: NOTRUN -> [SKIP][311] ([i915#11520]) +10 other tests skip
[311]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-update-continuous-sf:
- shard-snb: NOTRUN -> [SKIP][312] ([i915#11520]) +1 other test skip
[312]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-snb4/igt@kms_psr2_sf@psr2-overlay-plane-update-continuous-sf.html
- shard-dg2-9: NOTRUN -> [SKIP][313] ([i915#11520]) +2 other tests skip
[313]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_psr2_sf@psr2-overlay-plane-update-continuous-sf.html
* igt@kms_psr2_sf@psr2-primary-plane-update-sf-dmg-area-big-fb:
- shard-tglu: NOTRUN -> [SKIP][314] ([i915#11520]) +3 other tests skip
[314]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@kms_psr2_sf@psr2-primary-plane-update-sf-dmg-area-big-fb.html
* igt@kms_psr2_su@page_flip-nv12:
- shard-dg2-9: NOTRUN -> [SKIP][315] ([i915#9683])
[315]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_psr2_su@page_flip-nv12.html
* igt@kms_psr@fbc-psr-cursor-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][316] ([i915#1072] / [i915#9732]) +1 other test skip
[316]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@kms_psr@fbc-psr-cursor-mmap-gtt.html
* igt@kms_psr@fbc-psr-no-drrs:
- shard-tglu: NOTRUN -> [SKIP][317] ([i915#9732]) +7 other tests skip
[317]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_psr@fbc-psr-no-drrs.html
* igt@kms_psr@fbc-psr2-primary-mmap-cpu:
- shard-mtlp: NOTRUN -> [SKIP][318] ([i915#9688]) +11 other tests skip
[318]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-1/igt@kms_psr@fbc-psr2-primary-mmap-cpu.html
* igt@kms_psr@fbc-psr2-primary-page-flip:
- shard-dg2-9: NOTRUN -> [SKIP][319] ([i915#1072] / [i915#9732]) +9 other tests skip
[319]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_psr@fbc-psr2-primary-page-flip.html
* igt@kms_psr@psr-cursor-mmap-cpu:
- shard-dg2: NOTRUN -> [SKIP][320] ([i915#1072] / [i915#9732]) +21 other tests skip
[320]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@kms_psr@psr-cursor-mmap-cpu.html
* igt@kms_psr@psr-sprite-plane-onoff:
- shard-tglu-1: NOTRUN -> [SKIP][321] ([i915#9732]) +7 other tests skip
[321]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_psr@psr-sprite-plane-onoff.html
* igt@kms_psr@psr2-cursor-mmap-gtt:
- shard-rkl: NOTRUN -> [SKIP][322] ([i915#1072] / [i915#9732]) +24 other tests skip
[322]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_psr@psr2-cursor-mmap-gtt.html
* igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
- shard-dg1: NOTRUN -> [SKIP][323] ([i915#9685])
[323]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
- shard-dg2: NOTRUN -> [SKIP][324] ([i915#9685])
[324]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-3/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
* igt@kms_rotation_crc@exhaust-fences:
- shard-dg2: NOTRUN -> [SKIP][325] ([i915#4235])
[325]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_rotation_crc@exhaust-fences.html
* igt@kms_rotation_crc@primary-y-tiled-reflect-x-270:
- shard-dg2: NOTRUN -> [SKIP][326] ([i915#12755] / [i915#5190])
[326]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
- shard-mtlp: NOTRUN -> [SKIP][327] ([i915#5289]) +1 other test skip
[327]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270:
- shard-rkl: NOTRUN -> [SKIP][328] ([i915#5289])
[328]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html
* igt@kms_scaling_modes@scaling-mode-center:
- shard-tglu: NOTRUN -> [SKIP][329] ([i915#3555]) +1 other test skip
[329]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_scaling_modes@scaling-mode-center.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-rkl: NOTRUN -> [SKIP][330] ([i915#8623])
[330]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_vrr@flip-basic-fastset:
- shard-rkl: NOTRUN -> [SKIP][331] ([i915#9906])
[331]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@kms_vrr@flip-basic-fastset.html
* igt@kms_vrr@lobf:
- shard-dg2-9: NOTRUN -> [SKIP][332] ([i915#11920])
[332]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@kms_vrr@lobf.html
* igt@kms_vrr@max-min:
- shard-tglu-1: NOTRUN -> [SKIP][333] ([i915#9906]) +1 other test skip
[333]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-1/igt@kms_vrr@max-min.html
* igt@kms_vrr@negative-basic:
- shard-dg2: NOTRUN -> [SKIP][334] ([i915#3555] / [i915#9906])
[334]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-7/igt@kms_vrr@negative-basic.html
* igt@kms_vrr@seamless-rr-switch-vrr:
- shard-dg2: NOTRUN -> [SKIP][335] ([i915#9906])
[335]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_vrr@seamless-rr-switch-vrr.html
* igt@kms_writeback@writeback-check-output:
- shard-dg2: NOTRUN -> [SKIP][336] ([i915#2437])
[336]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-2/igt@kms_writeback@writeback-check-output.html
* igt@kms_writeback@writeback-check-output-xrgb2101010:
- shard-tglu: NOTRUN -> [SKIP][337] ([i915#2437] / [i915#9412])
[337]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-2/igt@kms_writeback@writeback-check-output-xrgb2101010.html
* igt@kms_writeback@writeback-fb-id-xrgb2101010:
- shard-rkl: NOTRUN -> [SKIP][338] ([i915#2437] / [i915#9412])
[338]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@kms_writeback@writeback-fb-id-xrgb2101010.html
* igt@kms_writeback@writeback-invalid-parameters:
- shard-rkl: NOTRUN -> [SKIP][339] ([i915#2437])
[339]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@kms_writeback@writeback-invalid-parameters.html
* igt@perf@global-sseu-config-invalid:
- shard-dg2: NOTRUN -> [SKIP][340] ([i915#7387])
[340]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-7/igt@perf@global-sseu-config-invalid.html
* igt@perf@unprivileged-single-ctx-counters:
- shard-rkl: NOTRUN -> [SKIP][341] ([i915#2433])
[341]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@perf@unprivileged-single-ctx-counters.html
* igt@perf_pmu@frequency@gt0:
- shard-dg2-9: NOTRUN -> [FAIL][342] ([i915#12549] / [i915#6806]) +1 other test fail
[342]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@perf_pmu@frequency@gt0.html
* igt@perf_pmu@most-busy-idle-check-all:
- shard-rkl: NOTRUN -> [FAIL][343] ([i915#4349]) +1 other test fail
[343]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-7/igt@perf_pmu@most-busy-idle-check-all.html
* igt@prime_mmap@test_aperture_limit:
- shard-dg2: NOTRUN -> [WARN][344] ([i915#9351])
[344]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@prime_mmap@test_aperture_limit.html
* igt@prime_mmap@test_aperture_limit@test_aperture_limit-smem:
- shard-dg2: NOTRUN -> [CRASH][345] ([i915#9351])
[345]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@prime_mmap@test_aperture_limit@test_aperture_limit-smem.html
* igt@prime_vgem@basic-fence-flip:
- shard-dg2-9: NOTRUN -> [SKIP][346] ([i915#3708])
[346]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@prime_vgem@basic-fence-flip.html
* igt@prime_vgem@basic-fence-mmap:
- shard-dg2-9: NOTRUN -> [SKIP][347] ([i915#3708] / [i915#4077])
[347]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-9/igt@prime_vgem@basic-fence-mmap.html
* igt@prime_vgem@basic-write:
- shard-mtlp: NOTRUN -> [SKIP][348] ([i915#10216] / [i915#3708])
[348]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-3/igt@prime_vgem@basic-write.html
* igt@prime_vgem@fence-read-hang:
- shard-rkl: NOTRUN -> [SKIP][349] ([i915#3708])
[349]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@prime_vgem@fence-read-hang.html
* igt@sriov_basic@bind-unbind-vf:
- shard-dg2: NOTRUN -> [SKIP][350] ([i915#9917]) +1 other test skip
[350]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@sriov_basic@bind-unbind-vf.html
* igt@sriov_basic@bind-unbind-vf@vf-5:
- shard-mtlp: NOTRUN -> [FAIL][351] ([i915#12910]) +9 other tests fail
[351]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-5/igt@sriov_basic@bind-unbind-vf@vf-5.html
* igt@sriov_basic@enable-vfs-bind-unbind-each:
- shard-rkl: NOTRUN -> [SKIP][352] ([i915#9917]) +1 other test skip
[352]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-1/igt@sriov_basic@enable-vfs-bind-unbind-each.html
* igt@tools_test@sysfs_l3_parity:
- shard-mtlp: NOTRUN -> [SKIP][353] ([i915#4818])
[353]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-8/igt@tools_test@sysfs_l3_parity.html
#### Possible fixes ####
* igt@gem_ccs@suspend-resume:
- shard-dg2: [INCOMPLETE][354] ([i915#13356]) -> [PASS][355]
[354]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-4/igt@gem_ccs@suspend-resume.html
[355]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@gem_ccs@suspend-resume.html
* igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0:
- shard-dg2: [INCOMPLETE][356] ([i915#12392] / [i915#13356]) -> [PASS][357]
[356]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-4/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0.html
[357]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0.html
* igt@gem_create@create-ext-cpu-access-big:
- shard-dg2: [ABORT][358] ([i915#13427]) -> [PASS][359]
[358]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-6/igt@gem_create@create-ext-cpu-access-big.html
[359]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-7/igt@gem_create@create-ext-cpu-access-big.html
* igt@gem_exec_gttfill@engines:
- shard-mtlp: [INCOMPLETE][360] -> [PASS][361] +1 other test pass
[360]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-mtlp-4/igt@gem_exec_gttfill@engines.html
[361]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-5/igt@gem_exec_gttfill@engines.html
* igt@gem_exec_suspend@basic-s0:
- shard-dg2: [INCOMPLETE][362] ([i915#11441] / [i915#13304]) -> [PASS][363]
[362]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-1/igt@gem_exec_suspend@basic-s0.html
[363]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@gem_exec_suspend@basic-s0.html
* igt@gem_exec_suspend@basic-s0@lmem0:
- shard-dg2: [INCOMPLETE][364] ([i915#11441]) -> [PASS][365]
[364]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-1/igt@gem_exec_suspend@basic-s0@lmem0.html
[365]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-10/igt@gem_exec_suspend@basic-s0@lmem0.html
* igt@gem_pxp@create-regular-context-1:
- shard-rkl: [TIMEOUT][366] ([i915#12917] / [i915#12964]) -> [PASS][367]
[366]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-2/igt@gem_pxp@create-regular-context-1.html
[367]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@gem_pxp@create-regular-context-1.html
* igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted:
- shard-rkl: [TIMEOUT][368] ([i915#12964]) -> [PASS][369]
[368]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-5/igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted.html
[369]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted.html
* igt@gem_tiled_swapping@non-threaded:
- shard-tglu: [FAIL][370] ([i915#12941]) -> [PASS][371]
[370]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-tglu-5/igt@gem_tiled_swapping@non-threaded.html
[371]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-3/igt@gem_tiled_swapping@non-threaded.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-glk: [ABORT][372] ([i915#13592]) -> [PASS][373]
[372]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-glk2/igt@i915_module_load@reload-with-fault-injection.html
[373]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-glk5/igt@i915_module_load@reload-with-fault-injection.html
- shard-dg2: [ABORT][374] ([i915#10887] / [i915#9820]) -> [PASS][375]
[374]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-8/igt@i915_module_load@reload-with-fault-injection.html
[375]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-3/igt@i915_module_load@reload-with-fault-injection.html
- shard-dg1: [ABORT][376] ([i915#9820]) -> [PASS][377]
[376]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-18/igt@i915_module_load@reload-with-fault-injection.html
[377]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_pm_rc6_residency@rc6-idle@gt0-rcs0:
- shard-dg1: [FAIL][378] ([i915#3591]) -> [PASS][379]
[378]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-16/igt@i915_pm_rc6_residency@rc6-idle@gt0-rcs0.html
[379]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-14/igt@i915_pm_rc6_residency@rc6-idle@gt0-rcs0.html
* igt@i915_pm_rpm@system-suspend-devices:
- shard-mtlp: [ABORT][380] ([i915#13193]) -> [PASS][381] +2 other tests pass
[380]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-mtlp-7/igt@i915_pm_rpm@system-suspend-devices.html
[381]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-4/igt@i915_pm_rpm@system-suspend-devices.html
* igt@kms_atomic_transition@modeset-transition-nonblocking-fencing:
- shard-glk: [FAIL][382] ([i915#12238]) -> [PASS][383]
[382]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-glk8/igt@kms_atomic_transition@modeset-transition-nonblocking-fencing.html
[383]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-glk7/igt@kms_atomic_transition@modeset-transition-nonblocking-fencing.html
* igt@kms_atomic_transition@modeset-transition-nonblocking-fencing@2x-outputs:
- shard-glk: [FAIL][384] ([i915#11859]) -> [PASS][385]
[384]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-glk8/igt@kms_atomic_transition@modeset-transition-nonblocking-fencing@2x-outputs.html
[385]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-glk7/igt@kms_atomic_transition@modeset-transition-nonblocking-fencing@2x-outputs.html
* igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-4:
- shard-dg1: [FAIL][386] ([i915#5956]) -> [PASS][387] +1 other test pass
[386]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-18/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-4.html
[387]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-15/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-4.html
* igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-1:
- shard-tglu: [FAIL][388] ([i915#11808]) -> [PASS][389] +1 other test pass
[388]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-tglu-5/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-1.html
[389]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-3/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-1.html
* igt@kms_cursor_crc@cursor-onscreen-128x42:
- shard-rkl: [FAIL][390] ([i915#13566]) -> [PASS][391] +4 other tests pass
[390]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-5/igt@kms_cursor_crc@cursor-onscreen-128x42.html
[391]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-2/igt@kms_cursor_crc@cursor-onscreen-128x42.html
* igt@kms_cursor_crc@cursor-onscreen-256x85:
- shard-tglu: [FAIL][392] ([i915#13566]) -> [PASS][393] +7 other tests pass
[392]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-tglu-4/igt@kms_cursor_crc@cursor-onscreen-256x85.html
[393]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-tglu-8/igt@kms_cursor_crc@cursor-onscreen-256x85.html
* igt@kms_hdr@static-swap:
- shard-dg2: [SKIP][394] ([i915#3555] / [i915#8228]) -> [PASS][395]
[394]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-3/igt@kms_hdr@static-swap.html
[395]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-11/igt@kms_hdr@static-swap.html
* igt@kms_joiner@invalid-modeset-force-big-joiner:
- shard-dg2: [SKIP][396] ([i915#12388]) -> [PASS][397]
[396]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-3/igt@kms_joiner@invalid-modeset-force-big-joiner.html
[397]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-11/igt@kms_joiner@invalid-modeset-force-big-joiner.html
* igt@kms_pm_rpm@modeset-lpsp:
- shard-rkl: [SKIP][398] ([i915#9519]) -> [PASS][399] +2 other tests pass
[398]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-5/igt@kms_pm_rpm@modeset-lpsp.html
[399]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-2/igt@kms_pm_rpm@modeset-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp-stress:
- shard-dg2: [SKIP][400] ([i915#9519]) -> [PASS][401] +1 other test pass
[400]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-5/igt@kms_pm_rpm@modeset-lpsp-stress.html
[401]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-8/igt@kms_pm_rpm@modeset-lpsp-stress.html
* igt@perf@gen12-group-concurrent-oa-buffer-read:
- shard-rkl: [DMESG-WARN][402] ([i915#12964]) -> [PASS][403] +3 other tests pass
[402]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-2/igt@perf@gen12-group-concurrent-oa-buffer-read.html
[403]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-8/igt@perf@gen12-group-concurrent-oa-buffer-read.html
#### Warnings ####
* igt@gem_lmem_swapping@smem-oom@lmem0:
- shard-dg1: [DMESG-WARN][404] ([i915#5493]) -> [TIMEOUT][405] ([i915#5493]) +1 other test timeout
[404]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-14/igt@gem_lmem_swapping@smem-oom@lmem0.html
[405]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-17/igt@gem_lmem_swapping@smem-oom@lmem0.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-mtlp: [ABORT][406] ([i915#10131] / [i915#9820]) -> [ABORT][407] ([i915#10131])
[406]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-mtlp-3/igt@i915_module_load@reload-with-fault-injection.html
[407]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-mtlp-2/igt@i915_module_load@reload-with-fault-injection.html
* igt@kms_content_protection@mei-interface:
- shard-dg1: [SKIP][408] ([i915#9424]) -> [SKIP][409] ([i915#9433])
[408]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-15/igt@kms_content_protection@mei-interface.html
[409]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-12/igt@kms_content_protection@mei-interface.html
* igt@kms_content_protection@srm:
- shard-dg2: [SKIP][410] ([i915#7118]) -> [FAIL][411] ([i915#7173])
[410]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-3/igt@kms_content_protection@srm.html
[411]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-11/igt@kms_content_protection@srm.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-glk: [INCOMPLETE][412] ([i915#12745] / [i915#4839]) -> [INCOMPLETE][413] ([i915#12314] / [i915#12745] / [i915#4839])
[412]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-glk9/igt@kms_flip@flip-vs-suspend-interruptible.html
[413]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-glk8/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1:
- shard-glk: [INCOMPLETE][414] ([i915#12745]) -> [INCOMPLETE][415] ([i915#12314] / [i915#12745])
[414]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-glk9/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html
[415]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-glk8/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html
* igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary:
- shard-dg2: [SKIP][416] ([i915#3458]) -> [SKIP][417] ([i915#10433] / [i915#3458]) +2 other tests skip
[416]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-11/igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary.html
[417]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary.html
* igt@kms_frontbuffer_tracking@fbcpsr-suspend:
- shard-dg2: [SKIP][418] ([i915#10433] / [i915#3458]) -> [SKIP][419] ([i915#3458])
[418]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html
[419]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg2-3/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html
* igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-render:
- shard-dg1: [SKIP][420] ([i915#3458] / [i915#4423]) -> [SKIP][421] ([i915#3458])
[420]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-19/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-render.html
[421]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-17/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-mmap-wc:
- shard-dg1: [SKIP][422] ([i915#8708]) -> [SKIP][423] ([i915#4423] / [i915#8708])
[422]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-19/igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-mmap-wc.html
[423]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-13/igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-mmap-wc.html
* igt@kms_hdr@brightness-with-hdr:
- shard-dg1: [SKIP][424] ([i915#1187] / [i915#12713]) -> [SKIP][425] ([i915#12713])
[424]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-13/igt@kms_hdr@brightness-with-hdr.html
[425]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-19/igt@kms_hdr@brightness-with-hdr.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation:
- shard-dg1: [SKIP][426] ([i915#3555]) -> [SKIP][427] ([i915#3555] / [i915#4423])
[426]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-19/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation.html
[427]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-13/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a:
- shard-dg1: [SKIP][428] ([i915#12247]) -> [SKIP][429] ([i915#12247] / [i915#4423])
[428]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-19/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a.html
[429]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-13/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a.html
* igt@kms_pm_lpsp@kms-lpsp:
- shard-rkl: [SKIP][430] ([i915#3828]) -> [SKIP][431] ([i915#9340])
[430]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-rkl-7/igt@kms_pm_lpsp@kms-lpsp.html
[431]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-rkl-6/igt@kms_pm_lpsp@kms-lpsp.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-continuous-sf:
- shard-dg1: [SKIP][432] ([i915#11520]) -> [SKIP][433] ([i915#11520] / [i915#4423])
[432]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-19/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-continuous-sf.html
[433]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-13/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-continuous-sf.html
* igt@kms_psr@psr-cursor-blt:
- shard-dg1: [SKIP][434] ([i915#1072] / [i915#9732]) -> [SKIP][435] ([i915#1072] / [i915#4423] / [i915#9732])
[434]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16220/shard-dg1-15/igt@kms_psr@psr-cursor-blt.html
[435]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138754v10/shard-dg1-12/igt@kms_psr@psr-cursor-blt.html
[i915#10055]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10055
[i915#10131]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10131
[i915#10216]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10216
[i915#10307]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10307
[i915#10433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10433
[i915#10434]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10434
[i915#10656]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10656
[i915#1072]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1072
[i915#10887]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10887
[i915#11078]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11078
[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#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
[i915#11713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11713
[i915#11808]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11808
[i915#11859]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11859
[i915#1187]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1187
[i915#11920]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11920
[i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061
[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#12314]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12314
[i915#12316]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12316
[i915#12339]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12339
[i915#12343]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12343
[i915#12388]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12388
[i915#12392]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12392
[i915#12454]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12454
[i915#12549]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12549
[i915#1257]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1257
[i915#12712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12712
[i915#12713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12713
[i915#12745]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12745
[i915#12755]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12755
[i915#12805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12805
[i915#12817]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12817
[i915#12910]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12910
[i915#12917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12917
[i915#12941]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12941
[i915#12964]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12964
[i915#13046]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13046
[i915#13049]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13049
[i915#13193]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13193
[i915#13304]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13304
[i915#13328]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13328
[i915#13356]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13356
[i915#13398]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13398
[i915#13427]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13427
[i915#13441]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13441
[i915#13522]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13522
[i915#13566]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13566
[i915#13592]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13592
[i915#13665]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13665
[i915#13691]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13691
[i915#13748]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13748
[i915#13749]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13749
[i915#13781]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13781
[i915#13783]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13783
[i915#13784]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13784
[i915#13798]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13798
[i915#13805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13805
[i915#13821]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13821
[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#2433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2433
[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#280]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/280
[i915#284]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/284
[i915#2856]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2856
[i915#3023]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3023
[i915#3116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3116
[i915#3281]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3282
[i915#3297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3299
[i915#3323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3323
[i915#3361]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3361
[i915#3458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3458
[i915#3539]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555
[i915#3591]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3591
[i915#3637]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3638
[i915#3708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3708
[i915#3804]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3804
[i915#3828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3828
[i915#3840]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3840
[i915#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#4235]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4235
[i915#4270]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4270
[i915#4349]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4349
[i915#4387]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4387
[i915#4423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4423
[i915#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#4771]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4771
[i915#4812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4812
[i915#4816]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4816
[i915#4818]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4818
[i915#4839]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4839
[i915#4852]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4852
[i915#4854]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4854
[i915#4860]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4860
[i915#4873]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4873
[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#5507]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5507
[i915#5723]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5723
[i915#5882]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5882
[i915#5956]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5956
[i915#6095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6095
[i915#6187]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6187
[i915#6188]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6188
[i915#6230]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6230
[i915#6245]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6245
[i915#6301]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6301
[i915#6334]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6334
[i915#6524]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/658
[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#7116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7116
[i915#7118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7118
[i915#7173]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7173
[i915#7387]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7387
[i915#7582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7582
[i915#7707]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7707
[i915#7828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7828
[i915#7975]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7975
[i915#8228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8228
[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#8555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8555
[i915#8623]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8623
[i915#8708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8708
[i915#8709]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8709
[i915#8806]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8806
[i915#8810]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8810
[i915#8812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8812
[i915#8813]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8813
[i915#8814]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8814
[i915#8821]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8821
[i915#9053]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9053
[i915#9067]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9067
[i915#9159]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9159
[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#9337]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9337
[i915#9340]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9340
[i915#9351]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9351
[i915#9412]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9412
[i915#9423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9423
[i915#9424]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9424
[i915#9433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9433
[i915#9519]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9519
[i915#9531]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9531
[i915#9683]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9683
[i915#9685]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9685
[i915#9688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9688
[i915#9732]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9732
[i915#9766]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9766
[i915#9808]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9808
[i915#9809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9809
[i915#9812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9812
[i915#9820]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9820
[i915#9906]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9906
[i915#9917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9917
[i915#9934]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9934
Build changes
-------------
* Linux: CI_DRM_16220 -> Patchwork_138754v10
CI-20190529: 20190529
CI_DRM_16220: 1cf56e26a93292ca26fbf891368b75a67e8700dc @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_8257: 8257
Patchwork_138754v10: 1cf56e26a93292ca26fbf891368b75a67e8700dc @ 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_138754v10/index.html
[-- Attachment #2: Type: text/html, Size: 157515 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 02/10] drm/i915/display: Introduce HAS_CASF macro
2025-03-04 10:28 ` [PATCH 02/10] drm/i915/display: Introduce HAS_CASF macro Nemesa Garg
@ 2025-03-11 11:55 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 11:55 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> Add the macro for casf HAS_CASF.
A bit explanation about the macro and why is this introduced will be good.
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_display_device.h | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_device.h b/drivers/gpu/drm/i915/display/intel_display_device.h
> index 717286981687..238488c4c3aa 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_device.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_device.h
> @@ -191,6 +191,7 @@ struct intel_display_platforms {
> #define HAS_VRR(__display) (DISPLAY_VER(__display) >= 11)
> #define HAS_AS_SDP(__display) (DISPLAY_VER(__display) >= 13)
> #define HAS_CMRR(__display) (DISPLAY_VER(__display) >= 20)
> +#define HAS_CASF(__display) (DISPLAY_VER(__display) >= 20)
I think all other macros are in alphabetical order so would be good to
follow suite.
CMRR and AS_SDP are the exception, for which I am partly to be blamed as
a reviwer.
But lets do the right thing for CASF.
Regards,
Ankit
> #define INTEL_NUM_PIPES(__display) (hweight8(DISPLAY_RUNTIME_INFO(__display)->pipe_mask))
> #define I915_HAS_HOTPLUG(__display) (DISPLAY_INFO(__display)->has_hotplug)
> #define OVERLAY_NEEDS_PHYSICAL(__display) (DISPLAY_INFO(__display)->overlay_needs_physical)
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 03/10] drm/i915/display: Add sharpness strength and winsize
2025-03-04 10:28 ` [PATCH 03/10] drm/i915/display: Add sharpness strength and winsize Nemesa Garg
@ 2025-03-11 11:58 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 11:58 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> Add new registers and related bits. Compute the strength
> value and tap value based on display mode.
Lets have some more details about what is strength and win size and why
is this required for sharpness.
In this what is missing is the readback part which is called from
skl_scaler.c in Patch#8.
Lets have a function to read the sharpness here
intel_casf_sharpness_get_config(), which will eventually be called from
skl_scaler_get_config().
This will ensure all reading/writing of sharpness related stuff will
take place in the casf file only.
Comparison for winsize and strength is also missing in
intel_pipe_config_compare().
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/Makefile | 1 +
> drivers/gpu/drm/i915/display/intel_casf.c | 68 +++++++++++++++++++
> drivers/gpu/drm/i915/display/intel_casf.h | 16 +++++
> .../gpu/drm/i915/display/intel_casf_regs.h | 23 +++++++
> .../drm/i915/display/intel_crtc_state_dump.c | 7 ++
> .../drm/i915/display/intel_display_types.h | 7 ++
> drivers/gpu/drm/i915/display/skl_scaler.c | 1 +
> drivers/gpu/drm/xe/Makefile | 1 +
> 8 files changed, 124 insertions(+)
> create mode 100644 drivers/gpu/drm/i915/display/intel_casf.c
> create mode 100644 drivers/gpu/drm/i915/display/intel_casf.h
> create mode 100644 drivers/gpu/drm/i915/display/intel_casf_regs.h
>
> diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
> index ed05b131ed3a..d7550b26cdfb 100644
> --- a/drivers/gpu/drm/i915/Makefile
> +++ b/drivers/gpu/drm/i915/Makefile
> @@ -230,6 +230,7 @@ i915-y += \
> display/intel_bios.o \
> display/intel_bo.o \
> display/intel_bw.o \
> + display/intel_casf.o \
> display/intel_cdclk.o \
> display/intel_cmtg.o \
> display/intel_color.o \
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> new file mode 100644
> index 000000000000..2c406e7c5fb6
> --- /dev/null
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -0,0 +1,68 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2025 Intel Corporation
> + *
> + */
> +#include "i915_reg.h"
> +#include "intel_casf.h"
> +#include "intel_casf_regs.h"
> +#include "intel_de.h"
> +#include "intel_display_types.h"
> +
> +#define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
> +#define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
> +
> +/**
> + * DOC: Content Adaptive Sharpness Filter (CASF)
> + *
> + * From LNL onwards the display engine based adaptive
> + * sharpening filter is supported. This helps in
> + * improving the image quality. The display hardware
> + * uses one of the pipe scaler for implementing casf.
> + * It works on a region of pixels depending on the
> + * tap size. The coefficients are used to generate an
> + * alpha value which is used to blend the sharpened image
> + * to original image.
> + */
> +
> +void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
> +{
> + struct intel_display *display = to_intel_display(crtc_state);
> + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> +
> + intel_de_rmw(display, SHARPNESS_CTL(crtc->pipe), 0,
> + FILTER_STRENGTH(crtc_state->hw.casf_params.strength));
> +}
> +
> +static void intel_casf_compute_win_size(struct intel_crtc_state *crtc_state)
> +{
> + const struct drm_display_mode *mode = &crtc_state->hw.adjusted_mode;
> + u16 total_pixels = mode->hdisplay * mode->vdisplay;
> +
> + if (total_pixels <= MAX_PIXELS_FOR_3_TAP_FILTER)
> + crtc_state->hw.casf_params.win_size = SHARPNESS_FILTER_SIZE_3X3;
> + else if (total_pixels <= MAX_PIXELS_FOR_5_TAP_FILTER)
> + crtc_state->hw.casf_params.win_size = SHARPNESS_FILTER_SIZE_5X5;
> + else
> + crtc_state->hw.casf_params.win_size = SHARPNESS_FILTER_SIZE_7X7;
> +}
> +
> +int intel_casf_compute_config(struct intel_crtc_state *crtc_state)
> +{
> + crtc_state->hw.casf_params.casf_enable = true;
> +
> + /*
> + * HW takes a value in form (1.0 + strength) in 4.4 fixed format.
> + * Strength is from 0.0-14.9375 ie from 0-239.
> + * User can give value from 0-255 but is clamped to 239.
> + * Ex. User gives 85 which is 5.3125 and adding 1.0 gives 6.3125.
> + * 6.3125 in 4.4 format is b01100101 which is equal to 101.
> + * Also 85 + 16 = 101.
> + */
> + crtc_state->hw.casf_params.strength =
> + min(crtc_state->uapi.sharpness_strength, 0xEF) + 0x10;
> +
> + intel_casf_compute_win_size(crtc_state);
> +
> + return 0;
> +}
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
> new file mode 100644
> index 000000000000..6e308c367c17
> --- /dev/null
> +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> @@ -0,0 +1,16 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#ifndef __INTEL_CASF_H__
> +#define __INTEL_CASF_H__
> +
> +#include <linux/types.h>
> +
> +struct intel_crtc_state;
> +
> +int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
> +void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
> +
> +#endif /* __INTEL_CASF_H__ */
> diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> new file mode 100644
> index 000000000000..e5fa4d9bb309
> --- /dev/null
> +++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> @@ -0,0 +1,23 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#ifndef __INTEL_CASF_REGS_H__
> +#define __INTEL_CASF_REGS_H__
> +
> +#include "intel_display_reg_defs.h"
> +
> +#define _SHARPNESS_CTL_A 0x682B0
> +#define _SHARPNESS_CTL_B 0x68AB0
> +#define SHARPNESS_CTL(pipe) _MMIO_PIPE(pipe, _SHARPNESS_CTL_A, _SHARPNESS_CTL_B)
> +#define FILTER_EN REG_BIT(31)
> +#define FILTER_STRENGTH_MASK REG_GENMASK(15, 8)
> +#define FILTER_STRENGTH(x) REG_FIELD_PREP(FILTER_STRENGTH_MASK, (x))
> +#define FILTER_SIZE_MASK REG_GENMASK(1, 0)
> +#define SHARPNESS_FILTER_SIZE_3X3 REG_FIELD_PREP(FILTER_SIZE_MASK, 0)
> +#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
> +#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
> +
> +#endif /* __INTEL_CASF_REGS__ */
> +
Remove extra line.
Regards,
Ankit
> diff --git a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
> index 599ddce96371..66b6fbae8294 100644
> --- a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
> +++ b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
> @@ -372,6 +372,13 @@ void intel_crtc_state_dump(const struct intel_crtc_state *pipe_config,
>
> intel_vdsc_state_dump(&p, 0, pipe_config);
>
> + if (HAS_CASF(i915)) {
> + drm_printf(&p, "sharpness strength: %d, sharpness tap size :%d\n sharpness enable :%d\n",
> + pipe_config->hw.casf_params.strength,
> + pipe_config->hw.casf_params.win_size,
> + pipe_config->hw.casf_params.casf_enable);
> + }
> +
> dump_planes:
> if (!state)
> return;
> diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
> index 99a6fd2900b9..ccaf9dd4f6a8 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_types.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
> @@ -931,6 +931,12 @@ struct intel_csc_matrix {
> u16 postoff[3];
> };
>
> +struct intel_casf {
> + u8 strength;
> + u8 win_size;
> + bool casf_enable;
> +};
> +
> void intel_io_mmio_fw_write(void *ctx, i915_reg_t reg, u32 val);
>
> typedef void (*intel_io_reg_write)(void *ctx, i915_reg_t reg, u32 val);
> @@ -971,6 +977,7 @@ struct intel_crtc_state {
> struct drm_property_blob *degamma_lut, *gamma_lut, *ctm;
> struct drm_display_mode mode, pipe_mode, adjusted_mode;
> enum drm_scaling_filter scaling_filter;
> + struct intel_casf casf_params;
> } hw;
>
> /* actual state of LUTs */
> diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
> index ee81220a7c88..f0cf966211c9 100644
> --- a/drivers/gpu/drm/i915/display/skl_scaler.c
> +++ b/drivers/gpu/drm/i915/display/skl_scaler.c
> @@ -5,6 +5,7 @@
>
> #include "i915_drv.h"
> #include "i915_reg.h"
> +#include "intel_casf_regs.h"
> #include "intel_de.h"
> #include "intel_display_trace.h"
> #include "intel_display_types.h"
> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
> index 856b14fe1c4d..a6156f59c039 100644
> --- a/drivers/gpu/drm/xe/Makefile
> +++ b/drivers/gpu/drm/xe/Makefile
> @@ -207,6 +207,7 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \
> i915-display/intel_backlight.o \
> i915-display/intel_bios.o \
> i915-display/intel_bw.o \
> + i915-display/intel_casf.o \
> i915-display/intel_cdclk.o \
> i915-display/intel_cmtg.o \
> i915-display/intel_color.o \
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 04/10] drm/i915/display: Add filter lut values
2025-03-04 10:28 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
@ 2025-03-11 12:00 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 12:00 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> Add the register bits related to filter lut values
> and populate the table.
Lets have some more details about the LUT values and the fact that they
are only needed to be loaded once.
With that fixed this looks good to me.
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 22 +++++++++++++++++++
> drivers/gpu/drm/i915/display/intel_casf.h | 3 +++
> .../gpu/drm/i915/display/intel_casf_regs.h | 11 ++++++++++
> 3 files changed, 36 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index 2c406e7c5fb6..ed72bccbb93f 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -25,6 +25,28 @@
> * to original image.
> */
>
> +/* Default LUT values to be loaded one time. */
> +static const u16 sharpness_lut[] = {
> + 4095, 2047, 1364, 1022, 816, 678, 579,
> + 504, 444, 397, 357, 323, 293, 268, 244, 224,
> + 204, 187, 170, 154, 139, 125, 111, 98, 85,
> + 73, 60, 48, 36, 24, 12, 0
> +};
> +
> +void intel_filter_lut_load(struct intel_crtc *crtc,
> + const struct intel_crtc_state *crtc_state)
> +{
> + struct intel_display *display = to_intel_display(crtc_state);
> + int i;
> +
> + intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
> + INDEX_AUTO_INCR | INDEX_VALUE(0));
> +
> + for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
> + intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
> + sharpness_lut[i]);
> +}
> +
> void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
> {
> struct intel_display *display = to_intel_display(crtc_state);
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
> index 6e308c367c17..faeed50de2ba 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> @@ -9,8 +9,11 @@
> #include <linux/types.h>
>
> struct intel_crtc_state;
> +struct intel_crtc;
>
> int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
> void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
> +void intel_filter_lut_load(struct intel_crtc *crtc,
> + const struct intel_crtc_state *crtc_state);
>
> #endif /* __INTEL_CASF_H__ */
> diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> index e5fa4d9bb309..c61755a401ff 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> @@ -19,5 +19,16 @@
> #define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
> #define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
>
> +#define _SHRPLUT_DATA_A 0x682B8
> +#define _SHRPLUT_DATA_B 0x68AB8
> +#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
> +
> +#define _SHRPLUT_INDEX_A 0x682B4
> +#define _SHRPLUT_INDEX_B 0x68AB4
> +#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
> +#define INDEX_AUTO_INCR REG_BIT(10)
> +#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
> +#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
> +
> #endif /* __INTEL_CASF_REGS__ */
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 05/10] drm/i915/display: Compute the scaler filter coefficients
2025-03-04 10:28 ` [PATCH 05/10] drm/i915/display: Compute the scaler filter coefficients Nemesa Garg
@ 2025-03-11 12:02 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 12:02 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> The sharpness property requires the use of one of the scaler
> so need to set the sharpness scaler coefficient values.
> These values are based on experiments and vary for different
> tap value/win size. These values are normalized by taking the
> sum of all values and then dividing each value with a sum.
>
> v2: Fix ifndef header naming issue reported by kernel test robot
> v3: Rename file name[Arun]
> Replace array size number with macro[Arun]
> v4: Correct the register format[Jani]
> Add brief comment and expalin about file[Jani]
> Remove coefficient value from crtc_state[Jani]
> v5: Fix build issue
> v6: Add new function for writing coefficients[Ankit]
> v7: Add cooments and add a scaler id check [Ankit]
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 124 ++++++++++++++++++
> drivers/gpu/drm/i915/display/intel_casf.h | 2 +
> .../gpu/drm/i915/display/intel_casf_regs.h | 7 +
> .../drm/i915/display/intel_display_types.h | 8 ++
> 4 files changed, 141 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index ed72bccbb93f..ff34e390c8fe 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -12,6 +12,13 @@
> #define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
> #define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
>
> +#define FILTER_COEFF_0_125 125
> +#define FILTER_COEFF_0_25 250
> +#define FILTER_COEFF_0_5 500
> +#define FILTER_COEFF_1_0 1000
> +#define FILTER_COEFF_0_0 0
> +#define SET_POSITIVE_SIGN(x) ((x) & (~SIGN))
> +
> /**
> * DOC: Content Adaptive Sharpness Filter (CASF)
> *
> @@ -33,6 +40,24 @@ static const u16 sharpness_lut[] = {
> 73, 60, 48, 36, 24, 12, 0
> };
>
> +const u16 filtercoeff_1[] = {
> + FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
> + FILTER_COEFF_0_0,
> +};
> +
> +const u16 filtercoeff_2[] = {
> + FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
> + FILTER_COEFF_0_0,
> +};
> +
> +const u16 filtercoeff_3[] = {
> + FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
> + FILTER_COEFF_0_125,
> +};
> +
> void intel_filter_lut_load(struct intel_crtc *crtc,
> const struct intel_crtc_state *crtc_state)
> {
> @@ -88,3 +113,102 @@ int intel_casf_compute_config(struct intel_crtc_state *crtc_state)
>
> return 0;
> }
> +
> +static int casf_coeff_tap(int i)
> +{
> + return i % SCALER_FILTER_NUM_TAPS;
> +}
> +
> +static u16 casf_coeff(struct intel_crtc_state *crtc_state, int t)
> +{
> + struct scaler_filter_coeff value;
> + u16 coeff;
> +
> + value = crtc_state->hw.casf_params.coeff[t];
> + coeff = SET_POSITIVE_SIGN(0) | EXPONENT(value.exp) | MANTISSA(value.mantissa);
> + return coeff;
> +}
> +
> +/*
> + * 17 phase of 7 taps requires 119 coefficients in 60 dwords per set.
> + * To enable casf: program scaler coefficients with the coeffients
> + * that are calculated and stored in hw.casf_params.coeff as per
> + * SCALER_COEFFICIENT_FORMAT
> + */
> +
Remove extra line from here.
> +static void intel_casf_write_coeff(struct intel_crtc_state *crtc_state)
> +{
> + struct intel_display *display = to_intel_display(crtc_state);
> + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> + int id = crtc_state->scaler_state.scaler_id;
> + int i;
> +
> + if (id != 1) {
> + drm_WARN(display->drm, 0, "Second scaler not enabled\n");
> + return;
> + }
> +
> + intel_de_write_fw(display, GLK_PS_COEF_INDEX_SET(crtc->pipe, id, 0),
> + PS_COEF_INDEX_AUTO_INC);
> +
> + for (i = 0; i < 17 * SCALER_FILTER_NUM_TAPS; i += 2) {
> + u32 tmp;
> + int t;
> +
> + t = casf_coeff_tap(i);
> + tmp = casf_coeff(crtc_state, t);
> +
> + t = casf_coeff_tap(i + 1);
> + tmp |= casf_coeff(crtc_state, t) << 16;
> +
> + intel_de_write_fw(display, GLK_PS_COEF_DATA_SET(crtc->pipe, id, 0),
> + tmp);
> + }
> +}
> +
> +static void convert_sharpness_coef_binary(struct scaler_filter_coeff *coeff,
> + u16 coefficient)
> +{
> + if (coefficient < 25) {
> + coeff->mantissa = (coefficient * 2048) / 100;
> + coeff->exp = 3;
> + } else if (coefficient < 50) {
> + coeff->mantissa = (coefficient * 1024) / 100;
> + coeff->exp = 2;
> + } else if (coefficient < 100) {
> + coeff->mantissa = (coefficient * 512) / 100;
> + coeff->exp = 1;
> + } else {
> + coeff->mantissa = (coefficient * 256) / 100;
> + coeff->exp = 0;
> + }
> +}
> +
> +void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state)
> +{
> + const u16 *filtercoeff;
> + u16 filter_coeff[SCALER_FILTER_NUM_TAPS];
> + u16 sumcoeff = 0;
> + u8 i;
> +
> + if (crtc_state->hw.casf_params.win_size == 0)
> + filtercoeff = filtercoeff_1;
> + else if (crtc_state->hw.casf_params.win_size == 1)
> + filtercoeff = filtercoeff_2;
> + else
> + filtercoeff = filtercoeff_3;
> +
> + for (i = 0; i < SCALER_FILTER_NUM_TAPS; i++)
> + sumcoeff += *(filtercoeff + i);
> +
> + for (i = 0; i < SCALER_FILTER_NUM_TAPS; i++) {
> + filter_coeff[i] = (*(filtercoeff + i) * 100 / sumcoeff);
> + convert_sharpness_coef_binary(&crtc_state->hw.casf_params.coeff[i],
> + filter_coeff[i]);
> + }
> +}
> +
> +void intel_casf_enable(struct intel_crtc_state *crtc_state)
> +{
> + intel_casf_write_coeff(crtc_state);
> +}
This is not required here. Lets introduce this later.
With above things addressed:
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
> index faeed50de2ba..507a3fe49753 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> @@ -15,5 +15,7 @@ int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
> void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
> void intel_filter_lut_load(struct intel_crtc *crtc,
> const struct intel_crtc_state *crtc_state);
> +void intel_casf_enable(struct intel_crtc_state *crtc_state);
> +void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state);
>
> #endif /* __INTEL_CASF_H__ */
> diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> index c61755a401ff..0305604b4c87 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> @@ -30,5 +30,12 @@
> #define INDEX_VALUE_MASK REG_GENMASK(4, 0)
> #define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
>
> +/* Scaler Coefficient structure */
> +#define SIGN REG_BIT(15)
> +#define EXPONENT_MASK REG_GENMASK(13, 12)
> +#define EXPONENT(x) REG_FIELD_PREP(EXPONENT_MASK, (x))
> +#define MANTISSA_MASK REG_GENMASK(11, 3)
> +#define MANTISSA(x) REG_FIELD_PREP(MANTISSA_MASK, (x))
> +
> #endif /* __INTEL_CASF_REGS__ */
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
> index ccaf9dd4f6a8..b96dec938185 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_types.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
> @@ -931,7 +931,15 @@ struct intel_csc_matrix {
> u16 postoff[3];
> };
>
> +struct scaler_filter_coeff {
> + u16 sign;
> + u16 exp;
> + u16 mantissa;
> +};
> +
> struct intel_casf {
> +#define SCALER_FILTER_NUM_TAPS 7
> + struct scaler_filter_coeff coeff[SCALER_FILTER_NUM_TAPS];
> u8 strength;
> u8 win_size;
> bool casf_enable;
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 06/10] drm/i915/display: Add and compute scaler parameter
2025-03-04 10:28 ` [PATCH 06/10] drm/i915/display: Add and compute scaler parameter Nemesa Garg
@ 2025-03-11 12:03 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 12:03 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> Compute the values for second scaler for sharpness.
> Fill the register bits corresponding to the scaler.
>
> v1: Rename the title of patch [Ankit]
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 3 ++
> drivers/gpu/drm/i915/display/skl_scaler.c | 46 +++++++++++++++++++++++
> drivers/gpu/drm/i915/display/skl_scaler.h | 1 +
> 3 files changed, 50 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index ff34e390c8fe..15ae555e571e 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -8,6 +8,7 @@
> #include "intel_casf_regs.h"
> #include "intel_de.h"
> #include "intel_display_types.h"
> +#include "skl_scaler.h"
>
> #define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
> #define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
> @@ -211,4 +212,6 @@ void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state)
> void intel_casf_enable(struct intel_crtc_state *crtc_state)
> {
> intel_casf_write_coeff(crtc_state);
> +
> + skl_scaler_setup_casf(crtc_state);
> }
Remove from this patch and add this where casf_enable is introduced later.
Otherwise looks good to me.
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
> index f0cf966211c9..39fc537e54f0 100644
> --- a/drivers/gpu/drm/i915/display/skl_scaler.c
> +++ b/drivers/gpu/drm/i915/display/skl_scaler.c
> @@ -133,6 +133,13 @@ static void skl_scaler_max_dst_size(struct intel_crtc *crtc,
> }
> }
>
> +#define CASF_SCALER_FILTER_SELECT \
> + (PS_FILTER_PROGRAMMED | \
> + PS_Y_VERT_FILTER_SELECT(0) | \
> + PS_Y_HORZ_FILTER_SELECT(0) | \
> + PS_UV_VERT_FILTER_SELECT(0) | \
> + PS_UV_HORZ_FILTER_SELECT(0))
> +
> static int
> skl_update_scaler(struct intel_crtc_state *crtc_state, bool force_detach,
> unsigned int scaler_user, int *scaler_id,
> @@ -722,6 +729,45 @@ static void skl_scaler_setup_filter(struct intel_display *display,
> }
> }
>
> +void skl_scaler_setup_casf(struct intel_crtc_state *crtc_state)
> +{
> + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> + struct intel_display *display = to_intel_display(crtc);
> + struct drm_display_mode *adjusted_mode =
> + &crtc_state->hw.adjusted_mode;
> + struct intel_crtc_scaler_state *scaler_state =
> + &crtc_state->scaler_state;
> + struct drm_rect src, dest;
> + int id, width, height;
> + int x = 0, y = 0;
> + enum pipe pipe = crtc->pipe;
> + u32 ps_ctrl;
> +
> + width = adjusted_mode->crtc_hdisplay;
> + height = adjusted_mode->crtc_vdisplay;
> +
> + drm_rect_init(&dest, x, y, width, height);
> +
> + width = drm_rect_width(&dest);
> + height = drm_rect_height(&dest);
> + id = scaler_state->scaler_id;
> +
> + drm_rect_init(&src, 0, 0,
> + drm_rect_width(&crtc_state->pipe_src) << 16,
> + drm_rect_height(&crtc_state->pipe_src) << 16);
> +
> + trace_intel_pipe_scaler_update_arm(crtc, id, x, y, width, height);
> +
> + ps_ctrl = PS_SCALER_EN | PS_BINDING_PIPE | scaler_state->scalers[id].mode |
> + CASF_SCALER_FILTER_SELECT;
> +
> + intel_de_write_fw(display, SKL_PS_CTRL(pipe, id), ps_ctrl);
> + intel_de_write_fw(display, SKL_PS_WIN_POS(pipe, id),
> + PS_WIN_XPOS(x) | PS_WIN_YPOS(y));
> + intel_de_write_fw(display, SKL_PS_WIN_SZ(pipe, id),
> + PS_WIN_XSIZE(width) | PS_WIN_YSIZE(height));
> +}
> +
> void skl_pfit_enable(const struct intel_crtc_state *crtc_state)
> {
> struct intel_display *display = to_intel_display(crtc_state);
> diff --git a/drivers/gpu/drm/i915/display/skl_scaler.h b/drivers/gpu/drm/i915/display/skl_scaler.h
> index 355ea15260ca..22fcfe78b506 100644
> --- a/drivers/gpu/drm/i915/display/skl_scaler.h
> +++ b/drivers/gpu/drm/i915/display/skl_scaler.h
> @@ -31,5 +31,6 @@ void skl_detach_scalers(struct intel_dsb *dsb,
> void skl_scaler_disable(const struct intel_crtc_state *old_crtc_state);
>
> void skl_scaler_get_config(struct intel_crtc_state *crtc_state);
> +void skl_scaler_setup_casf(struct intel_crtc_state *crtc_state);
>
> #endif
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 07/10] drm/i915/display: Configure the second scaler for sharpness
2025-03-04 10:28 ` [PATCH 07/10] drm/i915/display: Configure the second scaler for sharpness Nemesa Garg
@ 2025-03-11 12:07 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 12:07 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> As only second scaler can be used for sharpness check if it
> is available and also check if panel fitting is also not enabled,
> then set the sharpness. Panel fitting will have the preference
> over sharpness property.
>
> v2: Add the panel fitting check before enabling sharpness
> v3: Reframe commit message[Arun]
> v4: Replace string based comparison with plane_state[Jani]
> v5: Rebase
> v6: Fix build issue
> v7: Remove scaler id from verify_crtc_state[Ankit]
> v8: Change the patch title. Add code comment.
> Move the config part in patch#6. [Ankit]
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 8 ++++++
> drivers/gpu/drm/i915/display/intel_casf.h | 1 +
> drivers/gpu/drm/i915/display/intel_display.c | 6 +++--
> drivers/gpu/drm/i915/display/skl_scaler.c | 28 +++++++++++++++-----
> 4 files changed, 35 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index 15ae555e571e..1d9196c4d22f 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -115,6 +115,14 @@ int intel_casf_compute_config(struct intel_crtc_state *crtc_state)
> return 0;
> }
>
> +bool intel_casf_needs_scaler(const struct intel_crtc_state *crtc_state)
> +{
> + if (crtc_state->hw.casf_params.casf_enable)
> + return true;
> +
> + return false;
> +}
> +
> static int casf_coeff_tap(int i)
> {
> return i % SCALER_FILTER_NUM_TAPS;
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
> index 507a3fe49753..c75a4b2f3133 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> @@ -17,5 +17,6 @@ void intel_filter_lut_load(struct intel_crtc *crtc,
> const struct intel_crtc_state *crtc_state);
> void intel_casf_enable(struct intel_crtc_state *crtc_state);
> void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state);
> +bool intel_casf_needs_scaler(const struct intel_crtc_state *crtc_state);
>
> #endif /* __INTEL_CASF_H__ */
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index c4b0ec60fded..03acf01cac75 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -60,6 +60,7 @@
> #include "intel_audio.h"
> #include "intel_bo.h"
> #include "intel_bw.h"
> +#include "intel_casf.h"
> #include "intel_cdclk.h"
> #include "intel_clock_gating.h"
> #include "intel_color.h"
> @@ -1956,7 +1957,7 @@ static void get_crtc_power_domains(struct intel_crtc_state *crtc_state,
> set_bit(POWER_DOMAIN_PIPE(pipe), mask->bits);
> set_bit(POWER_DOMAIN_TRANSCODER(cpu_transcoder), mask->bits);
> if (crtc_state->pch_pfit.enabled ||
> - crtc_state->pch_pfit.force_thru)
> + crtc_state->pch_pfit.force_thru || intel_casf_needs_scaler(crtc_state))
> set_bit(POWER_DOMAIN_PIPE_PANEL_FITTER(pipe), mask->bits);
This should be a separate patch.
This patch should be about how casf uses 2nd scaler as pipe scaler and
the changes and checks required for intel_allocate_scaler.
>
> drm_for_each_encoder_mask(encoder, &dev_priv->drm,
> @@ -2194,7 +2195,7 @@ static u32 ilk_pipe_pixel_rate(const struct intel_crtc_state *crtc_state)
> * PF-ID we'll need to adjust the pixel_rate here.
> */
>
> - if (!crtc_state->pch_pfit.enabled)
> + if (!crtc_state->pch_pfit.enabled || intel_casf_needs_scaler(crtc_state))
Is this really needed? I am not very sure about this.
> return pixel_rate;
>
> drm_rect_init(&src, 0, 0,
> @@ -5299,6 +5300,7 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
>
> PIPE_CONF_CHECK_I(scaler_state.scaler_id);
> PIPE_CONF_CHECK_I(pixel_rate);
> + PIPE_CONF_CHECK_BOOL(hw.casf_params.casf_enable);
Again not part of this patch.
>
> PIPE_CONF_CHECK_X(gamma_mode);
> if (IS_CHERRYVIEW(dev_priv))
> diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
> index 39fc537e54f0..93a847c05535 100644
> --- a/drivers/gpu/drm/i915/display/skl_scaler.c
> +++ b/drivers/gpu/drm/i915/display/skl_scaler.c
> @@ -5,6 +5,7 @@
>
> #include "i915_drv.h"
> #include "i915_reg.h"
> +#include "intel_casf.h"
> #include "intel_casf_regs.h"
> #include "intel_de.h"
> #include "intel_display_trace.h"
> @@ -272,7 +273,8 @@ int skl_update_scaler_crtc(struct intel_crtc_state *crtc_state)
> drm_rect_width(&crtc_state->pipe_src),
> drm_rect_height(&crtc_state->pipe_src),
> width, height, NULL, 0,
> - crtc_state->pch_pfit.enabled);
> + crtc_state->pch_pfit.enabled ||
> + intel_casf_needs_scaler(crtc_state));
> }
>
> /**
> @@ -311,7 +313,9 @@ int skl_update_scaler_plane(struct intel_crtc_state *crtc_state,
> }
>
> static int intel_allocate_scaler(struct intel_crtc_scaler_state *scaler_state,
> - struct intel_crtc *crtc)
> + struct intel_crtc *crtc,
> + struct intel_plane_state *plane_state,
> + bool casf_scaler)
> {
> int i;
>
> @@ -319,6 +323,10 @@ static int intel_allocate_scaler(struct intel_crtc_scaler_state *scaler_state,
> if (scaler_state->scalers[i].in_use)
> continue;
>
> + /* CASF needs second scaler */
> + if (!plane_state && casf_scaler && i != 1)
> + continue;
> +
> scaler_state->scalers[i].in_use = true;
>
> return i;
> @@ -369,7 +377,7 @@ static int intel_atomic_setup_scaler(struct intel_crtc_state *crtc_state,
> int num_scalers_need, struct intel_crtc *crtc,
> const char *name, int idx,
> struct intel_plane_state *plane_state,
> - int *scaler_id)
> + int *scaler_id, bool casf_scaler)
> {
> struct intel_display *display = to_intel_display(crtc);
> struct intel_crtc_scaler_state *scaler_state = &crtc_state->scaler_state;
> @@ -378,12 +386,15 @@ static int intel_atomic_setup_scaler(struct intel_crtc_state *crtc_state,
> int vscale = 0;
>
> if (*scaler_id < 0)
> - *scaler_id = intel_allocate_scaler(scaler_state, crtc);
> + *scaler_id = intel_allocate_scaler(scaler_state, crtc, plane_state, casf_scaler);
>
> if (drm_WARN(display->drm, *scaler_id < 0,
> "Cannot find scaler for %s:%d\n", name, idx))
> return -EINVAL;
>
> + if (casf_scaler)
> + mode = SKL_PS_SCALER_MODE_HQ;
This change also should be a separate patch.
Regards,
Ankit
> +
> /* set scaler mode */
> if (plane_state && plane_state->hw.fb &&
> plane_state->hw.fb->format->is_yuv &&
> @@ -510,10 +521,14 @@ static int setup_crtc_scaler(struct intel_atomic_state *state,
> struct intel_crtc_scaler_state *scaler_state =
> &crtc_state->scaler_state;
>
> + if (intel_casf_needs_scaler(crtc_state) && crtc_state->pch_pfit.enabled)
> + return -EINVAL;
> +
> return intel_atomic_setup_scaler(crtc_state,
> hweight32(scaler_state->scaler_users),
> crtc, "CRTC", crtc->base.base.id,
> - NULL, &scaler_state->scaler_id);
> + NULL, &scaler_state->scaler_id,
> + intel_casf_needs_scaler(crtc_state));
> }
>
> static int setup_plane_scaler(struct intel_atomic_state *state,
> @@ -548,7 +563,8 @@ static int setup_plane_scaler(struct intel_atomic_state *state,
> return intel_atomic_setup_scaler(crtc_state,
> hweight32(scaler_state->scaler_users),
> crtc, "PLANE", plane->base.base.id,
> - plane_state, &plane_state->scaler_id);
> + plane_state, &plane_state->scaler_id,
> + false);
> }
>
> /**
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 08/10] drm/i915/display: Call the compute function
2025-03-04 10:28 ` [PATCH 08/10] drm/i915/display: Call the compute function Nemesa Garg
@ 2025-03-11 12:11 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 12:11 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> Once the casf_compute config is called then the
> strength and win_size bit of sharpness ctl register
> will be set. Read back the bits in get_config.
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 11 +++++++
> drivers/gpu/drm/i915/display/intel_display.c | 4 +++
> drivers/gpu/drm/i915/display/skl_scaler.c | 32 +++++++++++++++-----
> 3 files changed, 40 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index 1d9196c4d22f..9f14418dc3c9 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -97,6 +97,17 @@ static void intel_casf_compute_win_size(struct intel_crtc_state *crtc_state)
>
> int intel_casf_compute_config(struct intel_crtc_state *crtc_state)
> {
> + struct intel_display *display = to_intel_display(crtc_state);
> +
> + if (!HAS_CASF(display))
> + return 0;
> +
> + if (crtc_state->uapi.sharpness_strength == 0) {
> + crtc_state->hw.casf_params.casf_enable = false;
> + crtc_state->hw.casf_params.strength = 0;
> + return 0;
> + }
> +
All this can be part of the patch#3.
Then this function will be just calling the compute config and get
config part.
Also the subject can be improved as the patch is calling compute_config
and get_config for sharpening feature.
Regards,
Ankit
> crtc_state->hw.casf_params.casf_enable = true;
>
> /*
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 03acf01cac75..a2fb68c7cf7a 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -4267,6 +4267,10 @@ static int intel_crtc_atomic_check(struct intel_atomic_state *state,
> return ret;
> }
>
> + ret = intel_casf_compute_config(crtc_state);
> + if (ret)
> + return ret;
> +
> if (DISPLAY_VER(dev_priv) >= 9 ||
> IS_BROADWELL(dev_priv) || IS_HASWELL(dev_priv)) {
> ret = hsw_compute_linetime_wm(state, crtc);
> diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
> index 93a847c05535..79b6749c157e 100644
> --- a/drivers/gpu/drm/i915/display/skl_scaler.c
> +++ b/drivers/gpu/drm/i915/display/skl_scaler.c
> @@ -957,23 +957,41 @@ void skl_scaler_get_config(struct intel_crtc_state *crtc_state)
>
> /* find scaler attached to this pipe */
> for (i = 0; i < crtc->num_scalers; i++) {
> - u32 ctl, pos, size;
> + u32 ctl, pos, size, sharp;
>
> ctl = intel_de_read(display, SKL_PS_CTRL(crtc->pipe, i));
> if ((ctl & (PS_SCALER_EN | PS_BINDING_MASK)) != (PS_SCALER_EN | PS_BINDING_PIPE))
> continue;
>
> id = i;
> - crtc_state->pch_pfit.enabled = true;
> +
> + if (HAS_CASF(display) && id == 1) {
> + sharp = intel_de_read(display, SHARPNESS_CTL(crtc->pipe));
> + if (sharp & FILTER_EN) {
> + if (drm_WARN_ON(display->drm,
> + REG_FIELD_GET(FILTER_STRENGTH_MASK, sharp) < 16))
> + crtc_state->hw.casf_params.strength = 0;
> + else
> + crtc_state->hw.casf_params.strength =
> + REG_FIELD_GET(FILTER_STRENGTH_MASK, sharp) - 16;
> + crtc_state->hw.casf_params.casf_enable = true;
> + crtc_state->hw.casf_params.win_size =
> + REG_FIELD_GET(FILTER_SIZE_MASK, sharp);
> + }
> + }
> +
> + if (!crtc_state->hw.casf_params.casf_enable)
> + crtc_state->pch_pfit.enabled = true;
>
> pos = intel_de_read(display, SKL_PS_WIN_POS(crtc->pipe, i));
> size = intel_de_read(display, SKL_PS_WIN_SZ(crtc->pipe, i));
>
> - drm_rect_init(&crtc_state->pch_pfit.dst,
> - REG_FIELD_GET(PS_WIN_XPOS_MASK, pos),
> - REG_FIELD_GET(PS_WIN_YPOS_MASK, pos),
> - REG_FIELD_GET(PS_WIN_XSIZE_MASK, size),
> - REG_FIELD_GET(PS_WIN_YSIZE_MASK, size));
> + if (!crtc_state->hw.casf_params.casf_enable)
> + drm_rect_init(&crtc_state->pch_pfit.dst,
> + REG_FIELD_GET(PS_WIN_XPOS_MASK, pos),
> + REG_FIELD_GET(PS_WIN_YPOS_MASK, pos),
> + REG_FIELD_GET(PS_WIN_XSIZE_MASK, size),
> + REG_FIELD_GET(PS_WIN_YSIZE_MASK, size));
>
> scaler_state->scalers[i].in_use = true;
> break;
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 09/10] drm/i915/display: Enable/disable casf
2025-03-04 10:28 ` [PATCH 09/10] drm/i915/display: Enable/disable casf Nemesa Garg
@ 2025-03-11 12:14 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 12:14 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> Add a check for enabling/disabling the casf
> and enable the sharpness bit. Also load the
> filter lut value which is needed one time.
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 18 +++++++++++
> drivers/gpu/drm/i915/display/intel_casf.h | 1 +
> drivers/gpu/drm/i915/display/intel_display.c | 32 ++++++++++++++++++++
> 3 files changed, 51 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index 9f14418dc3c9..1a4362788d30 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -230,7 +230,25 @@ void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state)
>
> void intel_casf_enable(struct intel_crtc_state *crtc_state)
> {
> + struct intel_display *display = to_intel_display(crtc_state);
> + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> + u32 sharpness_ctl;
> +
> intel_casf_write_coeff(crtc_state);
>
> skl_scaler_setup_casf(crtc_state);
> +
> + sharpness_ctl = FILTER_EN | FILTER_STRENGTH(crtc_state->hw.casf_params.strength);
> +
> + sharpness_ctl |= crtc_state->hw.casf_params.win_size;
> +
> + intel_de_write(display, SHARPNESS_CTL(crtc->pipe), sharpness_ctl);
> +}
> +
Here the intel_casf_enable should be introduced for the first time as
mentioned previously just like the intel_casf_disable is introduced.
Regards,
Ankit
> +void intel_casf_disable(const struct intel_crtc_state *crtc_state)
> +{
> + struct intel_display *display = to_intel_display(crtc_state);
> + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> +
> + intel_de_write(display, SHARPNESS_CTL(crtc->pipe), 0);
> }
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
> index c75a4b2f3133..64821aafdc2f 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> @@ -18,5 +18,6 @@ void intel_filter_lut_load(struct intel_crtc *crtc,
> void intel_casf_enable(struct intel_crtc_state *crtc_state);
> void intel_casf_scaler_compute_config(struct intel_crtc_state *crtc_state);
> bool intel_casf_needs_scaler(const struct intel_crtc_state *crtc_state);
> +void intel_casf_disable(const struct intel_crtc_state *crtc_state);
>
> #endif /* __INTEL_CASF_H__ */
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index a2fb68c7cf7a..7d500bdc58fb 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -1036,6 +1036,25 @@ static bool audio_disabling(const struct intel_crtc_state *old_crtc_state,
> memcmp(old_crtc_state->eld, new_crtc_state->eld, MAX_ELD_BYTES) != 0);
> }
>
> +static bool intel_casf_enabling(const struct intel_crtc_state *new_crtc_state,
> + const struct intel_crtc_state *old_crtc_state)
> +{
> + if (!new_crtc_state->hw.active)
> + return false;
> +
> + return is_enabling(hw.casf_params.casf_enable, old_crtc_state, new_crtc_state);
> +}
> +
> +static bool intel_casf_disabling(const struct intel_crtc_state *new_crtc_state,
> + const struct intel_crtc_state *old_crtc_state)
> +{
> + if (!new_crtc_state->hw.active)
> + return false;
> +
> + return (new_crtc_state->hw.casf_params.casf_enable !=
> + old_crtc_state->hw.casf_params.casf_enable);
> +}
> +
> #undef is_disabling
> #undef is_enabling
>
> @@ -1182,6 +1201,9 @@ static void intel_pre_plane_update(struct intel_atomic_state *state,
> if (audio_disabling(old_crtc_state, new_crtc_state))
> intel_encoders_audio_disable(state, crtc);
>
> + if (intel_casf_disabling(old_crtc_state, new_crtc_state))
> + intel_casf_disable(new_crtc_state);
> +
> intel_drrs_deactivate(old_crtc_state);
>
> intel_psr_pre_plane_update(state, crtc);
> @@ -1650,6 +1672,8 @@ static void hsw_crtc_enable(struct intel_atomic_state *state,
> struct intel_display *display = to_intel_display(state);
> const struct intel_crtc_state *new_crtc_state =
> intel_atomic_get_new_crtc_state(state, crtc);
> + const struct intel_crtc_state *old_crtc_state =
> + intel_atomic_get_old_crtc_state(state, crtc);
> struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
> enum transcoder cpu_transcoder = new_crtc_state->cpu_transcoder;
> struct intel_crtc *pipe_crtc;
> @@ -1742,6 +1766,9 @@ static void hsw_crtc_enable(struct intel_atomic_state *state,
> intel_crtc_wait_for_next_vblank(wa_crtc);
> intel_crtc_wait_for_next_vblank(wa_crtc);
> }
> +
> + if (intel_casf_enabling(new_crtc_state, old_crtc_state))
> + intel_filter_lut_load(crtc, new_crtc_state);
> }
> }
>
> @@ -6722,6 +6749,11 @@ static void intel_pre_update_crtc(struct intel_atomic_state *state,
> intel_vrr_set_transcoder_timings(new_crtc_state);
> }
>
> + if (intel_casf_enabling(new_crtc_state, old_crtc_state))
> + intel_casf_enable(new_crtc_state);
> + else if (new_crtc_state->hw.casf_params.strength != old_crtc_state->hw.casf_params.strength)
> + intel_casf_update_strength(new_crtc_state);
> +
> intel_fbc_update(state, crtc);
>
> drm_WARN_ON(display->drm, !intel_display_power_is_enabled(display, POWER_DOMAIN_DC_OFF));
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 10/10] drm/i915/display: Expose casf property
2025-03-04 10:28 ` [PATCH 10/10] drm/i915/display: Expose casf property Nemesa Garg
@ 2025-03-11 12:15 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-03-11 12:15 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 3/4/2025 3:58 PM, Nemesa Garg wrote:
> Expose the drm crtc sharpness property
> which will ultimately enable the sharpness.
The drm crtc property is sharpness strength.
So lets have the subject and commit message in line with that.
Regards,
Ankit
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_crtc.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_crtc.c b/drivers/gpu/drm/i915/display/intel_crtc.c
> index 5b2603ef2ff7..b8bd255e9555 100644
> --- a/drivers/gpu/drm/i915/display/intel_crtc.c
> +++ b/drivers/gpu/drm/i915/display/intel_crtc.c
> @@ -391,6 +391,9 @@ int intel_crtc_init(struct intel_display *display, enum pipe pipe)
>
> drm_WARN_ON(display->drm, drm_crtc_index(&crtc->base) != crtc->pipe);
>
> + if (HAS_CASF(dev_priv))
> + drm_crtc_create_sharpness_strength_property(&crtc->base);
> +
> return 0;
>
> fail:
^ permalink raw reply [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-04-02 12:56 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-04-02 12:56 ` Nemesa Garg
0 siblings, 0 replies; 36+ messages in thread
From: Nemesa Garg @ 2025-04-02 12:56 UTC (permalink / raw)
To: intel-gfx, dri-devel, intel-xe; +Cc: Nemesa Garg, Ankit Nautiyal
Add the register bits related to filter lut values.
These values are golden values and these value has
to be loaded one time while enabling the casf.
v2: update commit message[Ankit]
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 22 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 3 +++
.../gpu/drm/i915/display/intel_casf_regs.h | 11 ++++++++++
3 files changed, 36 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 79a59e768c32..4d1a92199eb7 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -28,6 +28,28 @@
* original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+void intel_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 83523fe66c48..80642809c08b 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,9 +9,12 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
void intel_casf_sharpness_get_config(struct intel_crtc_state *crtc_state);
+void intel_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index c24ba281ae37..b96950a48335 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,4 +19,15 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-04-08 10:24 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-04-08 10:25 ` Nemesa Garg
0 siblings, 0 replies; 36+ messages in thread
From: Nemesa Garg @ 2025-04-08 10:25 UTC (permalink / raw)
To: intel-gfx, dri-devel, intel-xe; +Cc: Nemesa Garg, Ankit Nautiyal
Add the register bits related to filter lut values.
These values are golden values and these value has
to be loaded one time while enabling the casf.
v2: update commit message[Ankit]
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 22 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 3 +++
.../gpu/drm/i915/display/intel_casf_regs.h | 11 ++++++++++
3 files changed, 36 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 576dce477339..cb7d925cd16e 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -28,6 +28,28 @@
* original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+void intel_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 83523fe66c48..80642809c08b 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,9 +9,12 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
void intel_casf_sharpness_get_config(struct intel_crtc_state *crtc_state);
+void intel_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index c24ba281ae37..b96950a48335 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,4 +19,15 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-05-19 12:26 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-05-19 12:26 ` Nemesa Garg
2025-05-19 12:45 ` Jani Nikula
0 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-05-19 12:26 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg, Ankit Nautiyal
Add the register bits related to filter lut values.
These values are golden values and these value has
to be loaded one time while enabling the casf.
v2: update commit message[Ankit]
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 22 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 3 +++
.../gpu/drm/i915/display/intel_casf_regs.h | 11 ++++++++++
3 files changed, 36 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 314d3fe19884..6dab67eb77ab 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -30,6 +30,28 @@
* original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+void intel_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 83523fe66c48..80642809c08b 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,9 +9,12 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
void intel_casf_sharpness_get_config(struct intel_crtc_state *crtc_state);
+void intel_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index c24ba281ae37..b96950a48335 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,4 +19,15 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* Re: [PATCH 04/10] drm/i915/display: Add filter lut values
2025-05-19 12:26 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
@ 2025-05-19 12:45 ` Jani Nikula
2025-05-27 3:26 ` Garg, Nemesa
0 siblings, 1 reply; 36+ messages in thread
From: Jani Nikula @ 2025-05-19 12:45 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg, Ankit Nautiyal
On Mon, 19 May 2025, Nemesa Garg <nemesa.garg@intel.com> wrote:
> Add the register bits related to filter lut values.
> These values are golden values and these value has
> to be loaded one time while enabling the casf.
>
> v2: update commit message[Ankit]
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 22 +++++++++++++++++++
> drivers/gpu/drm/i915/display/intel_casf.h | 3 +++
> .../gpu/drm/i915/display/intel_casf_regs.h | 11 ++++++++++
> 3 files changed, 36 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index 314d3fe19884..6dab67eb77ab 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -30,6 +30,28 @@
> * original image.
> */
>
> +/* Default LUT values to be loaded one time. */
> +static const u16 sharpness_lut[] = {
> + 4095, 2047, 1364, 1022, 816, 678, 579,
> + 504, 444, 397, 357, 323, 293, 268, 244, 224,
> + 204, 187, 170, 154, 139, 125, 111, 98, 85,
> + 73, 60, 48, 36, 24, 12, 0
> +};
> +
> +void intel_filter_lut_load(struct intel_crtc *crtc,
> + const struct intel_crtc_state *crtc_state)
Everything else in the file is prefixed intel_casf_, why is this called
intel_filter_lut_load()?
> +{
> + struct intel_display *display = to_intel_display(crtc_state);
> + int i;
> +
> + intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
> + INDEX_AUTO_INCR | INDEX_VALUE(0));
> +
> + for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
> + intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
> + sharpness_lut[i]);
> +}
> +
> void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
> {
> struct intel_display *display = to_intel_display(crtc_state);
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
> index 83523fe66c48..80642809c08b 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> @@ -9,9 +9,12 @@
> #include <linux/types.h>
>
> struct intel_crtc_state;
> +struct intel_crtc;
>
> int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
> void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
> void intel_casf_sharpness_get_config(struct intel_crtc_state *crtc_state);
> +void intel_filter_lut_load(struct intel_crtc *crtc,
> + const struct intel_crtc_state *crtc_state);
>
> #endif /* __INTEL_CASF_H__ */
> diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> index c24ba281ae37..b96950a48335 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> @@ -19,4 +19,15 @@
> #define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
> #define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
>
> +#define _SHRPLUT_DATA_A 0x682B8
> +#define _SHRPLUT_DATA_B 0x68AB8
> +#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
> +
> +#define _SHRPLUT_INDEX_A 0x682B4
> +#define _SHRPLUT_INDEX_B 0x68AB4
> +#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
> +#define INDEX_AUTO_INCR REG_BIT(10)
> +#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
> +#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
> +
> #endif /* __INTEL_CASF_REGS__ */
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 36+ messages in thread
* RE: [PATCH 04/10] drm/i915/display: Add filter lut values
2025-05-19 12:45 ` Jani Nikula
@ 2025-05-27 3:26 ` Garg, Nemesa
0 siblings, 0 replies; 36+ messages in thread
From: Garg, Nemesa @ 2025-05-27 3:26 UTC (permalink / raw)
To: Jani Nikula, intel-gfx@lists.freedesktop.org,
intel-xe@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Cc: Nautiyal, Ankit K
> -----Original Message-----
> From: Jani Nikula <jani.nikula@linux.intel.com>
> Sent: Monday, May 19, 2025 6:15 PM
> To: Garg, Nemesa <nemesa.garg@intel.com>; intel-gfx@lists.freedesktop.org;
> intel-xe@lists.freedesktop.org; dri-devel@lists.freedesktop.org
> Cc: Garg, Nemesa <nemesa.garg@intel.com>; Nautiyal, Ankit K
> <ankit.k.nautiyal@intel.com>
> Subject: Re: [PATCH 04/10] drm/i915/display: Add filter lut values
>
> On Mon, 19 May 2025, Nemesa Garg <nemesa.garg@intel.com> wrote:
> > Add the register bits related to filter lut values.
> > These values are golden values and these value has to be loaded one
> > time while enabling the casf.
> >
> > v2: update commit message[Ankit]
> >
> > Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> > Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> > ---
> > drivers/gpu/drm/i915/display/intel_casf.c | 22 +++++++++++++++++++
> > drivers/gpu/drm/i915/display/intel_casf.h | 3 +++
> > .../gpu/drm/i915/display/intel_casf_regs.h | 11 ++++++++++
> > 3 files changed, 36 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_casf.c
> > b/drivers/gpu/drm/i915/display/intel_casf.c
> > index 314d3fe19884..6dab67eb77ab 100644
> > --- a/drivers/gpu/drm/i915/display/intel_casf.c
> > +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> > @@ -30,6 +30,28 @@
> > * original image.
> > */
> >
> > +/* Default LUT values to be loaded one time. */ static const u16
> > +sharpness_lut[] = {
> > + 4095, 2047, 1364, 1022, 816, 678, 579,
> > + 504, 444, 397, 357, 323, 293, 268, 244, 224,
> > + 204, 187, 170, 154, 139, 125, 111, 98, 85,
> > + 73, 60, 48, 36, 24, 12, 0
> > +};
> > +
> > +void intel_filter_lut_load(struct intel_crtc *crtc,
> > + const struct intel_crtc_state *crtc_state)
>
> Everything else in the file is prefixed intel_casf_, why is this called
> intel_filter_lut_load()?
> Will change to intel_casf_lut_load().
> > +{
> > + struct intel_display *display = to_intel_display(crtc_state);
> > + int i;
> > +
> > + intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
> > + INDEX_AUTO_INCR | INDEX_VALUE(0));
> > +
> > + for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
> > + intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
> > + sharpness_lut[i]);
> > +}
> > +
> > void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
> > {
> > struct intel_display *display = to_intel_display(crtc_state); diff
> > --git a/drivers/gpu/drm/i915/display/intel_casf.h
> > b/drivers/gpu/drm/i915/display/intel_casf.h
> > index 83523fe66c48..80642809c08b 100644
> > --- a/drivers/gpu/drm/i915/display/intel_casf.h
> > +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> > @@ -9,9 +9,12 @@
> > #include <linux/types.h>
> >
> > struct intel_crtc_state;
> > +struct intel_crtc;
> >
> > int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
> > void intel_casf_update_strength(struct intel_crtc_state
> > *new_crtc_state); void intel_casf_sharpness_get_config(struct
> > intel_crtc_state *crtc_state);
> > +void intel_filter_lut_load(struct intel_crtc *crtc,
> > + const struct intel_crtc_state *crtc_state);
> >
> > #endif /* __INTEL_CASF_H__ */
> > diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h
> > b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> > index c24ba281ae37..b96950a48335 100644
> > --- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
> > +++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> > @@ -19,4 +19,15 @@
> > #define SHARPNESS_FILTER_SIZE_5X5
> REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
> > #define SHARPNESS_FILTER_SIZE_7X7
> REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
> >
> > +#define _SHRPLUT_DATA_A 0x682B8
> > +#define _SHRPLUT_DATA_B 0x68AB8
> > +#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe,
> _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
> > +
> > +#define _SHRPLUT_INDEX_A 0x682B4
> > +#define _SHRPLUT_INDEX_B 0x68AB4
> > +#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe,
> _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
> > +#define INDEX_AUTO_INCR REG_BIT(10)
> > +#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
> > +#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK,
> (x))
> > +
> > #endif /* __INTEL_CASF_REGS__ */
>
> --
> Jani Nikula, Intel
^ permalink raw reply [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-07-24 13:45 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-07-24 13:45 ` Nemesa Garg
0 siblings, 0 replies; 36+ messages in thread
From: Nemesa Garg @ 2025-07-24 13:45 UTC (permalink / raw)
To: intel-gfx, dri-devel, intel-xe; +Cc: Nemesa Garg, Ankit Nautiyal
Add the register bits related to filter lut values.
These values are golden values and these value has
to be loaded one time while enabling the casf.
v2: update commit message[Ankit]
v3: Make filter_load fn name same[Jani]
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 40 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 3 ++
.../gpu/drm/i915/display/intel_casf_regs.h | 11 +++++
3 files changed, 54 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 6a877c7c76fa..18a8a621016a 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -30,6 +30,46 @@
* original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+const u16 filtercoeff_1[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_2[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_3[] = {
+ FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_125,
+};
+
+void intel_casf_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 83523fe66c48..3edbc3ad51cf 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,9 +9,12 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
void intel_casf_sharpness_get_config(struct intel_crtc_state *crtc_state);
+void intel_casf_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index c24ba281ae37..b96950a48335 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,4 +19,15 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-08-07 9:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-08-07 9:28 ` Nemesa Garg
0 siblings, 0 replies; 36+ messages in thread
From: Nemesa Garg @ 2025-08-07 9:28 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg, Ankit Nautiyal
Add the register bits related to filter lut values.
These values are golden values and these value has
to be loaded one time while enabling the casf.
v2: update commit message[Ankit]
v3: Make filter_load fn name same[Jani]
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 40 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 3 ++
.../gpu/drm/i915/display/intel_casf_regs.h | 11 +++++
3 files changed, 54 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 6a877c7c76fa..18a8a621016a 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -30,6 +30,46 @@
* original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+const u16 filtercoeff_1[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_2[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_3[] = {
+ FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_125,
+};
+
+void intel_casf_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 83523fe66c48..3edbc3ad51cf 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,9 +9,12 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
void intel_casf_sharpness_get_config(struct intel_crtc_state *crtc_state);
+void intel_casf_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index c24ba281ae37..b96950a48335 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,4 +19,15 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-09-26 11:37 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-09-26 11:37 ` Nemesa Garg
2025-10-01 5:31 ` Nautiyal, Ankit K
0 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-09-26 11:37 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Add the register bits related to filter lut values.
These values are golden values and these value has
to be loaded one time while enabling the casf.
v2: update commit message[Ankit]
v3: Make filter_load fn name same[Jani]
v4: Define the filter macros here
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 47 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 3 ++
.../gpu/drm/i915/display/intel_casf_regs.h | 11 +++++
3 files changed, 61 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index 4597e576b6dc..45bc67377d21 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -16,6 +16,13 @@
#define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
#define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
+#define FILTER_COEFF_0_125 125
+#define FILTER_COEFF_0_25 250
+#define FILTER_COEFF_0_5 500
+#define FILTER_COEFF_1_0 1000
+#define FILTER_COEFF_0_0 0
+#define SET_POSITIVE_SIGN(x) ((x) & (~SIGN))
+
/**
* DOC: Content Adaptive Sharpness Filter (CASF)
*
@@ -31,6 +38,46 @@
* original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+const u16 filtercoeff_1[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_2[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_3[] = {
+ FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_125,
+};
+
+void intel_casf_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 83523fe66c48..3edbc3ad51cf 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,9 +9,12 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
void intel_casf_sharpness_get_config(struct intel_crtc_state *crtc_state);
+void intel_casf_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state);
#endif /* __INTEL_CASF_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index c24ba281ae37..b96950a48335 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,4 +19,15 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* Re: [PATCH 04/10] drm/i915/display: Add filter lut values
2025-09-26 11:37 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
@ 2025-10-01 5:31 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-10-01 5:31 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 9/26/2025 5:07 PM, Nemesa Garg wrote:
> Add the register bits related to filter lut values.
> These values are golden values and these value has
> to be loaded one time while enabling the casf.
>
> v2: update commit message[Ankit]
> v3: Make filter_load fn name same[Jani]
> v4: Define the filter macros here
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 47 +++++++++++++++++++
> drivers/gpu/drm/i915/display/intel_casf.h | 3 ++
> .../gpu/drm/i915/display/intel_casf_regs.h | 11 +++++
> 3 files changed, 61 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index 4597e576b6dc..45bc67377d21 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -16,6 +16,13 @@
> #define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
> #define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
>
> +#define FILTER_COEFF_0_125 125
> +#define FILTER_COEFF_0_25 250
> +#define FILTER_COEFF_0_5 500
> +#define FILTER_COEFF_1_0 1000
> +#define FILTER_COEFF_0_0 0
> +#define SET_POSITIVE_SIGN(x) ((x) & (~SIGN))
> +
> /**
> * DOC: Content Adaptive Sharpness Filter (CASF)
> *
> @@ -31,6 +38,46 @@
> * original image.
> */
>
> +/* Default LUT values to be loaded one time. */
> +static const u16 sharpness_lut[] = {
> + 4095, 2047, 1364, 1022, 816, 678, 579,
> + 504, 444, 397, 357, 323, 293, 268, 244, 224,
> + 204, 187, 170, 154, 139, 125, 111, 98, 85,
> + 73, 60, 48, 36, 24, 12, 0
> +};
> +
> +const u16 filtercoeff_1[] = {
> + FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
> + FILTER_COEFF_0_0,
> +};
> +
> +const u16 filtercoeff_2[] = {
> + FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
> + FILTER_COEFF_0_0,
> +};
> +
> +const u16 filtercoeff_3[] = {
> + FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
> + FILTER_COEFF_0_125,
> +};
> +
> +void intel_casf_filter_lut_load(struct intel_crtc *crtc,
> + const struct intel_crtc_state *crtc_state)
This should be static and should be called from intel_casf_enable().
> +{
> + struct intel_display *display = to_intel_display(crtc_state);
> + int i;
> +
> + intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
> + INDEX_AUTO_INCR | INDEX_VALUE(0));
> +
> + for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
> + intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
> + sharpness_lut[i]);
> +}
> +
> void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
> {
> struct intel_display *display = to_intel_display(crtc_state);
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
> index 83523fe66c48..3edbc3ad51cf 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> @@ -9,9 +9,12 @@
> #include <linux/types.h>
>
> struct intel_crtc_state;
> +struct intel_crtc;
>
> int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
> void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
> void intel_casf_sharpness_get_config(struct intel_crtc_state *crtc_state);
> +void intel_casf_filter_lut_load(struct intel_crtc *crtc,
> + const struct intel_crtc_state *crtc_state);
>
> #endif /* __INTEL_CASF_H__ */
> diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> index c24ba281ae37..b96950a48335 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> @@ -19,4 +19,15 @@
> #define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
> #define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
>
> +#define _SHRPLUT_DATA_A 0x682B8
> +#define _SHRPLUT_DATA_B 0x68AB8
> +#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
> +
> +#define _SHRPLUT_INDEX_A 0x682B4
> +#define _SHRPLUT_INDEX_B 0x68AB4
It seems the macros and the registers offsets seems to be not separated
by tab, but spaces in some places.
Can you check these once?
As per i915_reg.h : “Indent macro values from macro names using TABs"
Regards,
Ankit
> +#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
> +#define INDEX_AUTO_INCR REG_BIT(10)
> +#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
> +#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
> +
> #endif /* __INTEL_CASF_REGS__ */
^ permalink raw reply [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-10-01 6:34 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-10-01 6:34 ` Nemesa Garg
2025-10-09 10:51 ` Nautiyal, Ankit K
0 siblings, 1 reply; 36+ messages in thread
From: Nemesa Garg @ 2025-10-01 6:34 UTC (permalink / raw)
To: intel-gfx, intel-xe, dri-devel; +Cc: Nemesa Garg
Add the register bits related to filter lut values
and helper to load the casf filter lut.
These values are golden values and these value has
to be loaded one time while enabling the casf.
v2: update commit message[Ankit]
v3: Add intel_casf prefix to filter_load fn[Jani]
v4: Define the filter macros here
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 49 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 1 +
.../gpu/drm/i915/display/intel_casf_regs.h | 11 +++++
3 files changed, 61 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index ad2faed5c1b3..313ed6b10317 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -16,6 +16,13 @@
#define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
#define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
+#define FILTER_COEFF_0_125 125
+#define FILTER_COEFF_0_25 250
+#define FILTER_COEFF_0_5 500
+#define FILTER_COEFF_1_0 1000
+#define FILTER_COEFF_0_0 0
+#define SET_POSITIVE_SIGN(x) ((x) & (~SIGN))
+
/**
* DOC: Content Adaptive Sharpness Filter (CASF)
*
@@ -31,6 +38,46 @@
* original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+const u16 filtercoeff_1[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_2[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_3[] = {
+ FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_125,
+};
+
+static void intel_casf_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
@@ -115,6 +162,8 @@ void intel_casf_enable(struct intel_crtc_state *crtc_state)
struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
u32 sharpness_ctl;
+ intel_casf_filter_lut_load(crtc, crtc_state);
+
sharpness_ctl = FILTER_EN | FILTER_STRENGTH(crtc_state->hw.casf_params.strength);
sharpness_ctl |= crtc_state->hw.casf_params.win_size;
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 753871880279..e8432b4bc52b 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,6 +9,7 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index bd763efe5c1b..87803cca510f 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,4 +19,15 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
* Re: [PATCH 04/10] drm/i915/display: Add filter lut values
2025-10-01 6:34 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
@ 2025-10-09 10:51 ` Nautiyal, Ankit K
0 siblings, 0 replies; 36+ messages in thread
From: Nautiyal, Ankit K @ 2025-10-09 10:51 UTC (permalink / raw)
To: Nemesa Garg, intel-gfx, intel-xe, dri-devel
On 10/1/2025 12:04 PM, Nemesa Garg wrote:
> Add the register bits related to filter lut values
> and helper to load the casf filter lut.
>
> These values are golden values and these value has
> to be loaded one time while enabling the casf.
>
> v2: update commit message[Ankit]
> v3: Add intel_casf prefix to filter_load fn[Jani]
> v4: Define the filter macros here
>
> Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_casf.c | 49 +++++++++++++++++++
> drivers/gpu/drm/i915/display/intel_casf.h | 1 +
> .../gpu/drm/i915/display/intel_casf_regs.h | 11 +++++
> 3 files changed, 61 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
> index ad2faed5c1b3..313ed6b10317 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.c
> +++ b/drivers/gpu/drm/i915/display/intel_casf.c
> @@ -16,6 +16,13 @@
> #define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
> #define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
>
> +#define FILTER_COEFF_0_125 125
> +#define FILTER_COEFF_0_25 250
> +#define FILTER_COEFF_0_5 500
> +#define FILTER_COEFF_1_0 1000
> +#define FILTER_COEFF_0_0 0
> +#define SET_POSITIVE_SIGN(x) ((x) & (~SIGN))
> +
> /**
> * DOC: Content Adaptive Sharpness Filter (CASF)
> *
> @@ -31,6 +38,46 @@
> * original image.
> */
>
> +/* Default LUT values to be loaded one time. */
> +static const u16 sharpness_lut[] = {
> + 4095, 2047, 1364, 1022, 816, 678, 579,
> + 504, 444, 397, 357, 323, 293, 268, 244, 224,
> + 204, 187, 170, 154, 139, 125, 111, 98, 85,
> + 73, 60, 48, 36, 24, 12, 0
> +};
> +
> +const u16 filtercoeff_1[] = {
> + FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
> + FILTER_COEFF_0_0,
> +};
> +
> +const u16 filtercoeff_2[] = {
> + FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
> + FILTER_COEFF_0_0,
> +};
> +
> +const u16 filtercoeff_3[] = {
> + FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
> + FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
> + FILTER_COEFF_0_125,
> +};
> +
> +static void intel_casf_filter_lut_load(struct intel_crtc *crtc,
> + const struct intel_crtc_state *crtc_state)
> +{
> + struct intel_display *display = to_intel_display(crtc_state);
> + int i;
> +
> + intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
> + INDEX_AUTO_INCR | INDEX_VALUE(0));
> +
> + for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
> + intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
> + sharpness_lut[i]);
> +}
> +
> void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
> {
> struct intel_display *display = to_intel_display(crtc_state);
> @@ -115,6 +162,8 @@ void intel_casf_enable(struct intel_crtc_state *crtc_state)
> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> u32 sharpness_ctl;
>
> + intel_casf_filter_lut_load(crtc, crtc_state);
> +
> sharpness_ctl = FILTER_EN | FILTER_STRENGTH(crtc_state->hw.casf_params.strength);
>
> sharpness_ctl |= crtc_state->hw.casf_params.win_size;
> diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
> index 753871880279..e8432b4bc52b 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf.h
> @@ -9,6 +9,7 @@
> #include <linux/types.h>
>
> struct intel_crtc_state;
> +struct intel_crtc;
>
> int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
> void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
> diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> index bd763efe5c1b..87803cca510f 100644
> --- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
> +++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
> @@ -19,4 +19,15 @@
> #define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
> #define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
>
> +#define _SHRPLUT_DATA_A 0x682B8
> +#define _SHRPLUT_DATA_B 0x68AB8
> +#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
> +
> +#define _SHRPLUT_INDEX_A 0x682B4
> +#define _SHRPLUT_INDEX_B 0x68AB4
> +#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
> +#define INDEX_AUTO_INCR REG_BIT(10)
> +#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
> +#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
> +
> #endif /* __INTEL_CASF_REGS__ */
^ permalink raw reply [flat|nested] 36+ messages in thread
* [PATCH 04/10] drm/i915/display: Add filter lut values
2025-10-26 17:26 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
@ 2025-10-26 17:26 ` Nemesa Garg
0 siblings, 0 replies; 36+ messages in thread
From: Nemesa Garg @ 2025-10-26 17:26 UTC (permalink / raw)
To: intel-gfx, dri-devel, intel-xe; +Cc: Nemesa Garg, Ankit Nautiyal
Add the register bits related to filter lut values
and helper to load the casf filter lut.
These values are golden values and these value has
to be loaded one time while enabling the casf.
v2: update commit message[Ankit]
v3: Add intel_casf prefix to filter_load fn[Jani]
v4: Define the filter macros here
Signed-off-by: Nemesa Garg <nemesa.garg@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
drivers/gpu/drm/i915/display/intel_casf.c | 49 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_casf.h | 1 +
.../gpu/drm/i915/display/intel_casf_regs.h | 11 +++++
3 files changed, 61 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_casf.c b/drivers/gpu/drm/i915/display/intel_casf.c
index ad2faed5c1b3..313ed6b10317 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.c
+++ b/drivers/gpu/drm/i915/display/intel_casf.c
@@ -16,6 +16,13 @@
#define MAX_PIXELS_FOR_3_TAP_FILTER (1920 * 1080)
#define MAX_PIXELS_FOR_5_TAP_FILTER (3840 * 2160)
+#define FILTER_COEFF_0_125 125
+#define FILTER_COEFF_0_25 250
+#define FILTER_COEFF_0_5 500
+#define FILTER_COEFF_1_0 1000
+#define FILTER_COEFF_0_0 0
+#define SET_POSITIVE_SIGN(x) ((x) & (~SIGN))
+
/**
* DOC: Content Adaptive Sharpness Filter (CASF)
*
@@ -31,6 +38,46 @@
* original image.
*/
+/* Default LUT values to be loaded one time. */
+static const u16 sharpness_lut[] = {
+ 4095, 2047, 1364, 1022, 816, 678, 579,
+ 504, 444, 397, 357, 323, 293, 268, 244, 224,
+ 204, 187, 170, 154, 139, 125, 111, 98, 85,
+ 73, 60, 48, 36, 24, 12, 0
+};
+
+const u16 filtercoeff_1[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_0, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_0,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_2[] = {
+ FILTER_COEFF_0_0, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_0,
+};
+
+const u16 filtercoeff_3[] = {
+ FILTER_COEFF_0_125, FILTER_COEFF_0_25, FILTER_COEFF_0_5,
+ FILTER_COEFF_1_0, FILTER_COEFF_0_5, FILTER_COEFF_0_25,
+ FILTER_COEFF_0_125,
+};
+
+static void intel_casf_filter_lut_load(struct intel_crtc *crtc,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ int i;
+
+ intel_de_write(display, SHRPLUT_INDEX(crtc->pipe),
+ INDEX_AUTO_INCR | INDEX_VALUE(0));
+
+ for (i = 0; i < ARRAY_SIZE(sharpness_lut); i++)
+ intel_de_write(display, SHRPLUT_DATA(crtc->pipe),
+ sharpness_lut[i]);
+}
+
void intel_casf_update_strength(struct intel_crtc_state *crtc_state)
{
struct intel_display *display = to_intel_display(crtc_state);
@@ -115,6 +162,8 @@ void intel_casf_enable(struct intel_crtc_state *crtc_state)
struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
u32 sharpness_ctl;
+ intel_casf_filter_lut_load(crtc, crtc_state);
+
sharpness_ctl = FILTER_EN | FILTER_STRENGTH(crtc_state->hw.casf_params.strength);
sharpness_ctl |= crtc_state->hw.casf_params.win_size;
diff --git a/drivers/gpu/drm/i915/display/intel_casf.h b/drivers/gpu/drm/i915/display/intel_casf.h
index 753871880279..e8432b4bc52b 100644
--- a/drivers/gpu/drm/i915/display/intel_casf.h
+++ b/drivers/gpu/drm/i915/display/intel_casf.h
@@ -9,6 +9,7 @@
#include <linux/types.h>
struct intel_crtc_state;
+struct intel_crtc;
int intel_casf_compute_config(struct intel_crtc_state *crtc_state);
void intel_casf_update_strength(struct intel_crtc_state *new_crtc_state);
diff --git a/drivers/gpu/drm/i915/display/intel_casf_regs.h b/drivers/gpu/drm/i915/display/intel_casf_regs.h
index bd763efe5c1b..87803cca510f 100644
--- a/drivers/gpu/drm/i915/display/intel_casf_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_casf_regs.h
@@ -19,4 +19,15 @@
#define SHARPNESS_FILTER_SIZE_5X5 REG_FIELD_PREP(FILTER_SIZE_MASK, 1)
#define SHARPNESS_FILTER_SIZE_7X7 REG_FIELD_PREP(FILTER_SIZE_MASK, 2)
+#define _SHRPLUT_DATA_A 0x682B8
+#define _SHRPLUT_DATA_B 0x68AB8
+#define SHRPLUT_DATA(pipe) _MMIO_PIPE(pipe, _SHRPLUT_DATA_A, _SHRPLUT_DATA_B)
+
+#define _SHRPLUT_INDEX_A 0x682B4
+#define _SHRPLUT_INDEX_B 0x68AB4
+#define SHRPLUT_INDEX(pipe) _MMIO_PIPE(pipe, _SHRPLUT_INDEX_A, _SHRPLUT_INDEX_B)
+#define INDEX_AUTO_INCR REG_BIT(10)
+#define INDEX_VALUE_MASK REG_GENMASK(4, 0)
+#define INDEX_VALUE(x) REG_FIELD_PREP(INDEX_VALUE_MASK, (x))
+
#endif /* __INTEL_CASF_REGS__ */
--
2.25.1
^ permalink raw reply related [flat|nested] 36+ messages in thread
end of thread, other threads:[~2025-10-26 17:31 UTC | newest]
Thread overview: 36+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-04 10:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-03-04 10:28 ` [PATCH 01/10] drm/i915/display: Introduce sharpness strength property Nemesa Garg
2025-03-04 10:28 ` [PATCH 02/10] drm/i915/display: Introduce HAS_CASF macro Nemesa Garg
2025-03-11 11:55 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 03/10] drm/i915/display: Add sharpness strength and winsize Nemesa Garg
2025-03-11 11:58 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
2025-03-11 12:00 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 05/10] drm/i915/display: Compute the scaler filter coefficients Nemesa Garg
2025-03-11 12:02 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 06/10] drm/i915/display: Add and compute scaler parameter Nemesa Garg
2025-03-11 12:03 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 07/10] drm/i915/display: Configure the second scaler for sharpness Nemesa Garg
2025-03-11 12:07 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 08/10] drm/i915/display: Call the compute function Nemesa Garg
2025-03-11 12:11 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 09/10] drm/i915/display: Enable/disable casf Nemesa Garg
2025-03-11 12:14 ` Nautiyal, Ankit K
2025-03-04 10:28 ` [PATCH 10/10] drm/i915/display: Expose casf property Nemesa Garg
2025-03-11 12:15 ` Nautiyal, Ankit K
2025-03-04 12:11 ` ✗ Fi.CI.CHECKPATCH: warning for Introduce drm sharpness property (rev10) Patchwork
2025-03-04 12:12 ` ✗ Fi.CI.SPARSE: " Patchwork
2025-03-04 12:30 ` ✓ i915.CI.BAT: success " Patchwork
2025-03-05 4:30 ` ✗ i915.CI.Full: failure " Patchwork
-- strict thread matches above, loose matches on Subject: below --
2025-04-02 12:56 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-04-02 12:56 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
2025-04-08 10:24 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-04-08 10:25 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
2025-05-19 12:26 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-05-19 12:26 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
2025-05-19 12:45 ` Jani Nikula
2025-05-27 3:26 ` Garg, Nemesa
2025-07-24 13:45 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-07-24 13:45 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
2025-08-07 9:28 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-08-07 9:28 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
2025-09-26 11:37 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-09-26 11:37 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
2025-10-01 5:31 ` Nautiyal, Ankit K
2025-10-01 6:34 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-10-01 6:34 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
2025-10-09 10:51 ` Nautiyal, Ankit K
2025-10-26 17:26 [PATCH 00/10] Introduce drm sharpness property Nemesa Garg
2025-10-26 17:26 ` [PATCH 04/10] drm/i915/display: Add filter lut values Nemesa Garg
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox