* [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling
@ 2020-09-24 18:41 Ville Syrjala
2020-09-24 18:41 ` [Intel-gfx] [PATCH 2/3] drm/i915: Nuke lspcon_ycbcr420_config() Ville Syrjala
` (5 more replies)
0 siblings, 6 replies; 9+ messages in thread
From: Ville Syrjala @ 2020-09-24 18:41 UTC (permalink / raw)
To: intel-gfx
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
crtc_state->lspcon_downsampling isn't particularly useful at
the moment since we can't even do proper readout for it.
Let's get rid of it. Will help with unifying the LSPCON with
the regular DFP YCbCr output support.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
drivers/gpu/drm/i915/display/intel_display.c | 12 -----------
.../drm/i915/display/intel_display_types.h | 3 ---
drivers/gpu/drm/i915/display/intel_lspcon.c | 20 +++++++++++--------
3 files changed, 12 insertions(+), 23 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 5a9d933e425a..a51cf048ecd3 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -11229,18 +11229,6 @@ static bool hsw_get_pipe_config(struct intel_crtc *crtc,
} else {
pipe_config->output_format =
bdw_get_pipemisc_output_format(crtc);
-
- /*
- * Currently there is no interface defined to
- * check user preference between RGB/YCBCR444
- * or YCBCR420. So the only possible case for
- * YCBCR444 usage is driving YCBCR420 output
- * with LSPCON, when pipe is configured for
- * YCBCR444 output and LSPCON takes care of
- * downsampling it.
- */
- pipe_config->lspcon_downsampling =
- pipe_config->output_format == INTEL_OUTPUT_FORMAT_YCBCR444;
}
pipe_config->gamma_mode = intel_de_read(dev_priv,
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index 3d4bf9b6a0a2..4e7d52d821cd 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -1035,9 +1035,6 @@ struct intel_crtc_state {
/* Output format RGB/YCBCR etc */
enum intel_output_format output_format;
- /* Output down scaling is done in LSPCON device */
- bool lspcon_downsampling;
-
/* enable pipe gamma? */
bool gamma_enable;
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index dc1b35559afd..59f13aef58b5 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -195,7 +195,6 @@ void lspcon_ycbcr420_config(struct drm_connector *connector,
connector->ycbcr_420_allowed) {
crtc_state->port_clock /= 2;
crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444;
- crtc_state->lspcon_downsampling = true;
}
}
@@ -492,14 +491,19 @@ void lspcon_set_infoframes(struct intel_encoder *encoder,
return;
}
- if (crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR444) {
- if (crtc_state->lspcon_downsampling)
- frame.avi.colorspace = HDMI_COLORSPACE_YUV420;
- else
- frame.avi.colorspace = HDMI_COLORSPACE_YUV444;
- } else {
+ /*
+ * Currently there is no interface defined to
+ * check user preference between RGB/YCBCR444
+ * or YCBCR420. So the only possible case for
+ * YCBCR444 usage is driving YCBCR420 output
+ * with LSPCON, when pipe is configured for
+ * YCBCR444 output and LSPCON takes care of
+ * downsampling it.
+ */
+ if (crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR444)
+ frame.avi.colorspace = HDMI_COLORSPACE_YUV420;
+ else
frame.avi.colorspace = HDMI_COLORSPACE_RGB;
- }
drm_hdmi_avi_infoframe_quant_range(&frame.avi,
conn_state->connector,
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH 2/3] drm/i915: Nuke lspcon_ycbcr420_config()
2020-09-24 18:41 [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling Ville Syrjala
@ 2020-09-24 18:41 ` Ville Syrjala
2020-10-15 23:28 ` Shankar, Uma
2020-09-24 18:41 ` [Intel-gfx] [PATCH 3/3] drm/i915: Inline intel_dp_ycbcr420_config() Ville Syrjala
` (4 subsequent siblings)
5 siblings, 1 reply; 9+ messages in thread
From: Ville Syrjala @ 2020-09-24 18:41 UTC (permalink / raw)
To: intel-gfx
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Remove the lspcon special case from intel_dp_compute_config() and
just treat it like any other DFP than can do 4:4:4->4:2:0 conversion.
The only difference between the two codepaths was that the lspcon
code tried to already halve port_clock. That was just total nonsense
as we hadn't even computed the base port_clock at that time.
All that stuff happens intel_dp_compute_link_config*() and it
already takes care of the 4:2:0 clock reduction.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
drivers/gpu/drm/i915/display/intel_dp.c | 8 +++-----
drivers/gpu/drm/i915/display/intel_lspcon.c | 14 --------------
drivers/gpu/drm/i915/display/intel_lspcon.h | 2 --
3 files changed, 3 insertions(+), 21 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 54a4b81ea3ff..f58df4994d92 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -2713,7 +2713,6 @@ intel_dp_compute_config(struct intel_encoder *encoder,
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode;
struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
- struct intel_lspcon *lspcon = enc_to_intel_lspcon(encoder);
enum port port = encoder->port;
struct intel_connector *intel_connector = intel_dp->attached_connector;
struct intel_digital_connector_state *intel_conn_state =
@@ -2727,10 +2726,7 @@ intel_dp_compute_config(struct intel_encoder *encoder,
pipe_config->output_format = INTEL_OUTPUT_FORMAT_RGB;
- if (lspcon->active)
- lspcon_ycbcr420_config(&intel_connector->base, pipe_config);
- else
- ret = intel_dp_ycbcr420_config(pipe_config, conn_state);
+ ret = intel_dp_ycbcr420_config(pipe_config, conn_state);
if (ret)
return ret;
@@ -6240,7 +6236,9 @@ intel_dp_update_420(struct intel_dp *intel_dp)
ycbcr_420_passthrough =
drm_dp_downstream_420_passthrough(intel_dp->dpcd,
intel_dp->downstream_ports);
+ /* on-board LSPCON always assumed to support 4:4:4->4:2:0 conversion */
ycbcr_444_to_420 =
+ dp_to_dig_port(intel_dp)->lspcon.active ||
drm_dp_downstream_444_to_420_conversion(intel_dp->dpcd,
intel_dp->downstream_ports);
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index 59f13aef58b5..bbe011c5f7a5 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -184,20 +184,6 @@ static bool lspcon_wake_native_aux_ch(struct intel_lspcon *lspcon)
return true;
}
-void lspcon_ycbcr420_config(struct drm_connector *connector,
- struct intel_crtc_state *crtc_state)
-{
- const struct drm_display_info *info = &connector->display_info;
- const struct drm_display_mode *adjusted_mode =
- &crtc_state->hw.adjusted_mode;
-
- if (drm_mode_is_420_only(info, adjusted_mode) &&
- connector->ycbcr_420_allowed) {
- crtc_state->port_clock /= 2;
- crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444;
- }
-}
-
static bool lspcon_probe(struct intel_lspcon *lspcon)
{
int retry;
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.h b/drivers/gpu/drm/i915/display/intel_lspcon.h
index 1cffe8a42a08..31eebab9ed57 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.h
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.h
@@ -32,7 +32,5 @@ void lspcon_set_infoframes(struct intel_encoder *encoder,
const struct drm_connector_state *conn_state);
u32 lspcon_infoframes_enabled(struct intel_encoder *encoder,
const struct intel_crtc_state *pipe_config);
-void lspcon_ycbcr420_config(struct drm_connector *connector,
- struct intel_crtc_state *crtc_state);
#endif /* __INTEL_LSPCON_H__ */
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH 3/3] drm/i915: Inline intel_dp_ycbcr420_config()
2020-09-24 18:41 [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling Ville Syrjala
2020-09-24 18:41 ` [Intel-gfx] [PATCH 2/3] drm/i915: Nuke lspcon_ycbcr420_config() Ville Syrjala
@ 2020-09-24 18:41 ` Ville Syrjala
2020-10-15 23:35 ` Shankar, Uma
2020-09-24 19:07 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for series starting with [1/3] drm/i915: Nuke lspcon_downsampling Patchwork
` (3 subsequent siblings)
5 siblings, 1 reply; 9+ messages in thread
From: Ville Syrjala @ 2020-09-24 18:41 UTC (permalink / raw)
To: intel-gfx
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
intel_dp_ycbcr420_config() is rather pointless. Just inline it
directly into intel_dp_compute_config(). This gets rid of the
ugly double assignment of output_format.
Not really sure what the best policy would be when the user
supplies a mode classiefied by the display as "YCbCr 4:2:0
only", but we know that we can't do YCbCr 4:2:0 output. For
now keep the current behaviour of just silently upgrade
it to RGB 4:4:4.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
drivers/gpu/drm/i915/display/intel_dp.c | 33 +++++++------------------
1 file changed, 9 insertions(+), 24 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index f58df4994d92..a50e502dedf8 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -599,7 +599,8 @@ intel_dp_output_format(struct drm_connector *connector,
struct intel_dp *intel_dp = intel_attached_dp(to_intel_connector(connector));
const struct drm_display_info *info = &connector->display_info;
- if (!drm_mode_is_420_only(info, mode))
+ if (!connector->ycbcr_420_allowed ||
+ !drm_mode_is_420_only(info, mode))
return INTEL_OUTPUT_FORMAT_RGB;
if (intel_dp->dfp.ycbcr_444_to_420)
@@ -2456,25 +2457,6 @@ intel_dp_compute_link_config(struct intel_encoder *encoder,
return 0;
}
-static int
-intel_dp_ycbcr420_config(struct intel_crtc_state *crtc_state,
- const struct drm_connector_state *conn_state)
-{
- struct drm_connector *connector = conn_state->connector;
- const struct drm_display_mode *adjusted_mode =
- &crtc_state->hw.adjusted_mode;
-
- if (!connector->ycbcr_420_allowed)
- return 0;
-
- crtc_state->output_format = intel_dp_output_format(connector, adjusted_mode);
-
- if (crtc_state->output_format != INTEL_OUTPUT_FORMAT_YCBCR420)
- return 0;
-
- return intel_pch_panel_fitting(crtc_state, conn_state);
-}
-
bool intel_dp_limited_color_range(const struct intel_crtc_state *crtc_state,
const struct drm_connector_state *conn_state)
{
@@ -2724,11 +2706,14 @@ intel_dp_compute_config(struct intel_encoder *encoder,
if (HAS_PCH_SPLIT(dev_priv) && !HAS_DDI(dev_priv) && port != PORT_A)
pipe_config->has_pch_encoder = true;
- pipe_config->output_format = INTEL_OUTPUT_FORMAT_RGB;
+ pipe_config->output_format = intel_dp_output_format(&intel_connector->base,
+ adjusted_mode);
- ret = intel_dp_ycbcr420_config(pipe_config, conn_state);
- if (ret)
- return ret;
+ if (pipe_config->output_format == INTEL_OUTPUT_FORMAT_YCBCR420) {
+ ret = intel_pch_panel_fitting(pipe_config, conn_state);
+ if (ret)
+ return ret;
+ }
if (!intel_dp_port_has_audio(dev_priv, port))
pipe_config->has_audio = false;
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Intel-gfx] ✗ Fi.CI.SPARSE: warning for series starting with [1/3] drm/i915: Nuke lspcon_downsampling
2020-09-24 18:41 [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling Ville Syrjala
2020-09-24 18:41 ` [Intel-gfx] [PATCH 2/3] drm/i915: Nuke lspcon_ycbcr420_config() Ville Syrjala
2020-09-24 18:41 ` [Intel-gfx] [PATCH 3/3] drm/i915: Inline intel_dp_ycbcr420_config() Ville Syrjala
@ 2020-09-24 19:07 ` Patchwork
2020-09-24 19:32 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
` (2 subsequent siblings)
5 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2020-09-24 19:07 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/3] drm/i915: Nuke lspcon_downsampling
URL : https://patchwork.freedesktop.org/series/82067/
State : warning
== Summary ==
$ dim sparse --fast origin/drm-tip
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
-
+drivers/gpu/drm/i915/gt/intel_reset.c:1311:5: warning: context imbalance in 'intel_gt_reset_trylock' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write8' - different lock contexts for basic block
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/3] drm/i915: Nuke lspcon_downsampling
2020-09-24 18:41 [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling Ville Syrjala
` (2 preceding siblings ...)
2020-09-24 19:07 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for series starting with [1/3] drm/i915: Nuke lspcon_downsampling Patchwork
@ 2020-09-24 19:32 ` Patchwork
2020-09-24 22:14 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2020-10-15 23:21 ` [Intel-gfx] [PATCH 1/3] " Shankar, Uma
5 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2020-09-24 19:32 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx
[-- Attachment #1.1: Type: text/plain, Size: 5136 bytes --]
== Series Details ==
Series: series starting with [1/3] drm/i915: Nuke lspcon_downsampling
URL : https://patchwork.freedesktop.org/series/82067/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_9050 -> Patchwork_18565
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/index.html
Known issues
------------
Here are the changes found in Patchwork_18565 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_suspend@basic-s3:
- fi-tgl-u2: [PASS][1] -> [FAIL][2] ([i915#1888])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/fi-tgl-u2/igt@gem_exec_suspend@basic-s3.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/fi-tgl-u2/igt@gem_exec_suspend@basic-s3.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-bsw-kefka: [PASS][3] -> [DMESG-WARN][4] ([i915#1982])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- fi-icl-u2: [PASS][5] -> [DMESG-WARN][6] ([i915#1982]) +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
#### Possible fixes ####
* igt@i915_pm_rpm@basic-pci-d3-state:
- fi-bsw-kefka: [DMESG-WARN][7] ([i915#1982]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/fi-bsw-kefka/igt@i915_pm_rpm@basic-pci-d3-state.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/fi-bsw-kefka/igt@i915_pm_rpm@basic-pci-d3-state.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-byt-j1900: [DMESG-WARN][9] ([i915#1982]) -> [PASS][10] +1 similar issue
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/fi-byt-j1900/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/fi-byt-j1900/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_flip@basic-flip-vs-dpms@a-edp1:
- fi-tgl-y: [DMESG-WARN][11] ([i915#1982]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/fi-tgl-y/igt@kms_flip@basic-flip-vs-dpms@a-edp1.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/fi-tgl-y/igt@kms_flip@basic-flip-vs-dpms@a-edp1.html
* igt@kms_flip@basic-flip-vs-wf_vblank@c-hdmi-a2:
- fi-skl-guc: [DMESG-WARN][13] ([i915#2203]) -> [PASS][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/fi-skl-guc/igt@kms_flip@basic-flip-vs-wf_vblank@c-hdmi-a2.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/fi-skl-guc/igt@kms_flip@basic-flip-vs-wf_vblank@c-hdmi-a2.html
#### Warnings ####
* igt@i915_pm_rpm@basic-rte:
- fi-kbl-guc: [SKIP][15] ([fdo#109271]) -> [INCOMPLETE][16] ([i915#151] / [i915#2377])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/fi-kbl-guc/igt@i915_pm_rpm@basic-rte.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/fi-kbl-guc/igt@i915_pm_rpm@basic-rte.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#151]: https://gitlab.freedesktop.org/drm/intel/issues/151
[i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2203]: https://gitlab.freedesktop.org/drm/intel/issues/2203
[i915#2377]: https://gitlab.freedesktop.org/drm/intel/issues/2377
[k.org#205379]: https://bugzilla.kernel.org/show_bug.cgi?id=205379
Participating hosts (46 -> 39)
------------------------------
Missing (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-kbl-x1275 fi-byt-clapper fi-bdw-samus
Build changes
-------------
* Linux: CI_DRM_9050 -> Patchwork_18565
CI-20190529: 20190529
CI_DRM_9050: 9a9b636c74cacd2a9fe8c693792998d8d5983e24 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5787: 0ec962017c8131de14e0cb038f7f76b1f17ed637 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_18565: 5ef7b809b94c7d3923a98c7d06a01dd852d352f3 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
5ef7b809b94c drm/i915: Inline intel_dp_ycbcr420_config()
ab04223e393a drm/i915: Nuke lspcon_ycbcr420_config()
69bfe2620b03 drm/i915: Nuke lspcon_downsampling
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/index.html
[-- Attachment #1.2: Type: text/html, Size: 6148 bytes --]
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for series starting with [1/3] drm/i915: Nuke lspcon_downsampling
2020-09-24 18:41 [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling Ville Syrjala
` (3 preceding siblings ...)
2020-09-24 19:32 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
@ 2020-09-24 22:14 ` Patchwork
2020-10-15 23:21 ` [Intel-gfx] [PATCH 1/3] " Shankar, Uma
5 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2020-09-24 22:14 UTC (permalink / raw)
To: Ville Syrjala; +Cc: intel-gfx
[-- Attachment #1.1: Type: text/plain, Size: 14572 bytes --]
== Series Details ==
Series: series starting with [1/3] drm/i915: Nuke lspcon_downsampling
URL : https://patchwork.freedesktop.org/series/82067/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_9050_full -> Patchwork_18565_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_18565_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_18565_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_18565_full:
### IGT changes ###
#### Possible regressions ####
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
- shard-glk: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-glk2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-glk1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
Known issues
------------
Here are the changes found in Patchwork_18565_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_reloc@basic-many-active@rcs0:
- shard-glk: [PASS][3] -> [FAIL][4] ([i915#2389]) +3 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-glk7/igt@gem_exec_reloc@basic-many-active@rcs0.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-glk2/igt@gem_exec_reloc@basic-many-active@rcs0.html
* igt@gem_exec_whisper@basic-queues-priority:
- shard-glk: [PASS][5] -> [DMESG-WARN][6] ([i915#118] / [i915#95])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-glk2/igt@gem_exec_whisper@basic-queues-priority.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-glk1/igt@gem_exec_whisper@basic-queues-priority.html
* igt@gem_userptr_blits@process-exit-busy:
- shard-skl: [PASS][7] -> [DMESG-WARN][8] ([i915#1982]) +10 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl4/igt@gem_userptr_blits@process-exit-busy.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl2/igt@gem_userptr_blits@process-exit-busy.html
* igt@kms_cursor_crc@pipe-a-cursor-suspend:
- shard-skl: [PASS][9] -> [INCOMPLETE][10] ([i915#300])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl5/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl4/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
* igt@kms_flip@plain-flip-ts-check-interruptible@b-edp1:
- shard-skl: [PASS][11] -> [FAIL][12] ([i915#2122])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl10/igt@kms_flip@plain-flip-ts-check-interruptible@b-edp1.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl6/igt@kms_flip@plain-flip-ts-check-interruptible@b-edp1.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-render:
- shard-tglb: [PASS][13] -> [DMESG-WARN][14] ([i915#1982]) +3 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-tglb3/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-render.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-tglb6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-render.html
* igt@kms_plane_multiple@atomic-pipe-c-tiling-yf:
- shard-iclb: [PASS][15] -> [FAIL][16] ([i915#1779])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-iclb2/igt@kms_plane_multiple@atomic-pipe-c-tiling-yf.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-iclb7/igt@kms_plane_multiple@atomic-pipe-c-tiling-yf.html
* igt@kms_psr2_su@page_flip:
- shard-iclb: [PASS][17] -> [SKIP][18] ([fdo#109642] / [fdo#111068])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-iclb2/igt@kms_psr2_su@page_flip.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-iclb6/igt@kms_psr2_su@page_flip.html
* igt@kms_psr@psr2_sprite_plane_move:
- shard-iclb: [PASS][19] -> [SKIP][20] ([fdo#109441]) +2 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-iclb6/igt@kms_psr@psr2_sprite_plane_move.html
* igt@kms_vblank@pipe-b-query-busy:
- shard-apl: [PASS][21] -> [DMESG-WARN][22] ([i915#1635] / [i915#1982])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-apl6/igt@kms_vblank@pipe-b-query-busy.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-apl4/igt@kms_vblank@pipe-b-query-busy.html
* igt@perf@polling-parameterized:
- shard-skl: [PASS][23] -> [FAIL][24] ([i915#1542])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl9/igt@perf@polling-parameterized.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl8/igt@perf@polling-parameterized.html
- shard-kbl: [PASS][25] -> [FAIL][26] ([i915#1542])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-kbl7/igt@perf@polling-parameterized.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-kbl4/igt@perf@polling-parameterized.html
* igt@perf@polling-small-buf:
- shard-iclb: [PASS][27] -> [FAIL][28] ([i915#1722])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-iclb4/igt@perf@polling-small-buf.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-iclb3/igt@perf@polling-small-buf.html
#### Possible fixes ####
* igt@gem_exec_fence@syncobj-timeline-wait:
- shard-skl: [DMESG-WARN][29] ([i915#1982]) -> [PASS][30] +4 similar issues
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl8/igt@gem_exec_fence@syncobj-timeline-wait.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl9/igt@gem_exec_fence@syncobj-timeline-wait.html
* igt@gem_mmap_offset@blt-coherency:
- shard-apl: [FAIL][31] ([i915#1635]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-apl6/igt@gem_mmap_offset@blt-coherency.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-apl2/igt@gem_mmap_offset@blt-coherency.html
* igt@gem_workarounds@basic-read-context:
- shard-snb: [TIMEOUT][33] ([i915#1958]) -> [PASS][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-snb5/igt@gem_workarounds@basic-read-context.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-snb1/igt@gem_workarounds@basic-read-context.html
* igt@gem_workarounds@suspend-resume:
- shard-skl: [INCOMPLETE][35] ([i915#198]) -> [PASS][36] +1 similar issue
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl1/igt@gem_workarounds@suspend-resume.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl4/igt@gem_workarounds@suspend-resume.html
* igt@gen9_exec_parse@allowed-all:
- shard-kbl: [DMESG-WARN][37] ([i915#1436] / [i915#716]) -> [PASS][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-kbl7/igt@gen9_exec_parse@allowed-all.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-kbl6/igt@gen9_exec_parse@allowed-all.html
* igt@i915_selftest@mock@contexts:
- shard-apl: [INCOMPLETE][39] ([i915#1635] / [i915#2278]) -> [PASS][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-apl8/igt@i915_selftest@mock@contexts.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-apl8/igt@i915_selftest@mock@contexts.html
* igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy:
- shard-glk: [FAIL][41] ([i915#72]) -> [PASS][42]
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-glk4/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-glk8/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy.html
* igt@kms_flip@flip-vs-expired-vblank@a-edp1:
- shard-skl: [FAIL][43] ([i915#79]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl10/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl6/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-gtt:
- shard-tglb: [DMESG-WARN][45] ([i915#1982]) -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-tglb1/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-gtt.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-tglb5/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-pgflip-blt:
- shard-apl: [DMESG-WARN][47] ([i915#1635] / [i915#1982]) -> [PASS][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-apl1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-pgflip-blt.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-apl1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-pgflip-blt.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-skl: [FAIL][49] ([i915#1188]) -> [PASS][50]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl6/igt@kms_hdr@bpc-switch-suspend.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl4/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
- shard-skl: [FAIL][51] ([fdo#108145] / [i915#265]) -> [PASS][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl7/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl6/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
* igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
- shard-skl: [DMESG-FAIL][53] ([fdo#108145] / [i915#1982]) -> [PASS][54]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl2/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
* igt@kms_psr@psr2_cursor_render:
- shard-iclb: [SKIP][55] ([fdo#109441]) -> [PASS][56] +1 similar issue
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-iclb6/igt@kms_psr@psr2_cursor_render.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-iclb2/igt@kms_psr@psr2_cursor_render.html
* igt@kms_setmode@basic:
- shard-apl: [FAIL][57] ([i915#1635] / [i915#31]) -> [PASS][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-apl7/igt@kms_setmode@basic.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-apl3/igt@kms_setmode@basic.html
#### Warnings ####
* igt@kms_fbcon_fbt@psr-suspend:
- shard-skl: [INCOMPLETE][59] ([i915#198]) -> [DMESG-WARN][60] ([i915#1982])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9050/shard-skl2/igt@kms_fbcon_fbt@psr-suspend.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18565/shard-skl8/igt@kms_fbcon_fbt@psr-suspend.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436
[i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542
[i915#1635]: https://gitlab.freedesktop.org/drm/intel/issues/1635
[i915#1722]: https://gitlab.freedesktop.org/drm/intel/issues/1722
[i915#1779]: https://gitlab.freedesktop.org/drm/intel/issues/1779
[i915#1958]: https://gitlab.freedesktop.org/drm/intel/issues/1958
[i915#198]: https://gitlab.freedesktop.org/drm/intel/issues/198
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
[i915#2278]: https://gitlab.freedesktop.org/drm/intel/issues/2278
[i915#2389]: https://gitlab.freedesktop.org/drm/intel/issues/2389
[i915#2469]: https://gitlab.freedesktop.org/drm/intel/issues/2469
[i915#2476]: https://gitlab.freedesktop.org/drm/intel/issues/2476
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#300]: https://gitlab.freedesktop.org/drm/intel/issues/300
[i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31
[i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
[i915#72]: https://gitlab.freedesktop.org/drm/intel/issues/72
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95
Participating hosts (11 -> 11)
------------------------------
No changes in participating hosts
Build changes
-------------
* Linux: CI_DRM_9050 -> Patchwork_18565
CI-20190529: 20190529
CI_DRM_9050: 9a9b636c74cacd2a9fe8c693792998d8d5983e24 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5787: 0ec962017c8131de14e0cb038f7f76b1f17ed637 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_18565: 5ef7b809b94c7d3923a98c7d06a01dd852d352f3 @ 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_18565/index.html
[-- Attachment #1.2: Type: text/html, Size: 16778 bytes --]
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling
2020-09-24 18:41 [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling Ville Syrjala
` (4 preceding siblings ...)
2020-09-24 22:14 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
@ 2020-10-15 23:21 ` Shankar, Uma
5 siblings, 0 replies; 9+ messages in thread
From: Shankar, Uma @ 2020-10-15 23:21 UTC (permalink / raw)
To: Ville Syrjala, intel-gfx@lists.freedesktop.org
> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville
> Syrjala
> Sent: Friday, September 25, 2020 12:12 AM
> To: intel-gfx@lists.freedesktop.org
> Subject: [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling
>
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> crtc_state->lspcon_downsampling isn't particularly useful at the moment since
> we can't even do proper readout for it.
> Let's get rid of it. Will help with unifying the LSPCON with the regular DFP YCbCr
> output support.
Looks Good to me.
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_display.c | 12 -----------
> .../drm/i915/display/intel_display_types.h | 3 ---
> drivers/gpu/drm/i915/display/intel_lspcon.c | 20 +++++++++++--------
> 3 files changed, 12 insertions(+), 23 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c
> b/drivers/gpu/drm/i915/display/intel_display.c
> index 5a9d933e425a..a51cf048ecd3 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -11229,18 +11229,6 @@ static bool hsw_get_pipe_config(struct intel_crtc
> *crtc,
> } else {
> pipe_config->output_format =
> bdw_get_pipemisc_output_format(crtc);
> -
> - /*
> - * Currently there is no interface defined to
> - * check user preference between RGB/YCBCR444
> - * or YCBCR420. So the only possible case for
> - * YCBCR444 usage is driving YCBCR420 output
> - * with LSPCON, when pipe is configured for
> - * YCBCR444 output and LSPCON takes care of
> - * downsampling it.
> - */
> - pipe_config->lspcon_downsampling =
> - pipe_config->output_format ==
> INTEL_OUTPUT_FORMAT_YCBCR444;
> }
>
> pipe_config->gamma_mode = intel_de_read(dev_priv, diff --git
> a/drivers/gpu/drm/i915/display/intel_display_types.h
> b/drivers/gpu/drm/i915/display/intel_display_types.h
> index 3d4bf9b6a0a2..4e7d52d821cd 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_types.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
> @@ -1035,9 +1035,6 @@ struct intel_crtc_state {
> /* Output format RGB/YCBCR etc */
> enum intel_output_format output_format;
>
> - /* Output down scaling is done in LSPCON device */
> - bool lspcon_downsampling;
> -
> /* enable pipe gamma? */
> bool gamma_enable;
>
> diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c
> b/drivers/gpu/drm/i915/display/intel_lspcon.c
> index dc1b35559afd..59f13aef58b5 100644
> --- a/drivers/gpu/drm/i915/display/intel_lspcon.c
> +++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
> @@ -195,7 +195,6 @@ void lspcon_ycbcr420_config(struct drm_connector
> *connector,
> connector->ycbcr_420_allowed) {
> crtc_state->port_clock /= 2;
> crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444;
> - crtc_state->lspcon_downsampling = true;
> }
> }
>
> @@ -492,14 +491,19 @@ void lspcon_set_infoframes(struct intel_encoder
> *encoder,
> return;
> }
>
> - if (crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR444) {
> - if (crtc_state->lspcon_downsampling)
> - frame.avi.colorspace = HDMI_COLORSPACE_YUV420;
> - else
> - frame.avi.colorspace = HDMI_COLORSPACE_YUV444;
> - } else {
> + /*
> + * Currently there is no interface defined to
> + * check user preference between RGB/YCBCR444
> + * or YCBCR420. So the only possible case for
> + * YCBCR444 usage is driving YCBCR420 output
> + * with LSPCON, when pipe is configured for
> + * YCBCR444 output and LSPCON takes care of
> + * downsampling it.
> + */
> + if (crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR444)
> + frame.avi.colorspace = HDMI_COLORSPACE_YUV420;
> + else
> frame.avi.colorspace = HDMI_COLORSPACE_RGB;
> - }
>
> drm_hdmi_avi_infoframe_quant_range(&frame.avi,
> conn_state->connector,
> --
> 2.26.2
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Intel-gfx] [PATCH 2/3] drm/i915: Nuke lspcon_ycbcr420_config()
2020-09-24 18:41 ` [Intel-gfx] [PATCH 2/3] drm/i915: Nuke lspcon_ycbcr420_config() Ville Syrjala
@ 2020-10-15 23:28 ` Shankar, Uma
0 siblings, 0 replies; 9+ messages in thread
From: Shankar, Uma @ 2020-10-15 23:28 UTC (permalink / raw)
To: Ville Syrjala, intel-gfx@lists.freedesktop.org
> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville
> Syrjala
> Sent: Friday, September 25, 2020 12:12 AM
> To: intel-gfx@lists.freedesktop.org
> Subject: [Intel-gfx] [PATCH 2/3] drm/i915: Nuke lspcon_ycbcr420_config()
>
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Remove the lspcon special case from intel_dp_compute_config() and just treat it
> like any other DFP than can do 4:4:4->4:2:0 conversion.
>
> The only difference between the two codepaths was that the lspcon code tried
> to already halve port_clock. That was just total nonsense as we hadn't even
> computed the base port_clock at that time.
> All that stuff happens intel_dp_compute_link_config*() and it already takes care
> of the 4:2:0 clock reduction.
Yeah, it's good to drop the special handling for Lspcon for this case.
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_dp.c | 8 +++-----
> drivers/gpu/drm/i915/display/intel_lspcon.c | 14 --------------
> drivers/gpu/drm/i915/display/intel_lspcon.h | 2 --
> 3 files changed, 3 insertions(+), 21 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 54a4b81ea3ff..f58df4994d92 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -2713,7 +2713,6 @@ intel_dp_compute_config(struct intel_encoder
> *encoder,
> struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
> struct drm_display_mode *adjusted_mode = &pipe_config-
> >hw.adjusted_mode;
> struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
> - struct intel_lspcon *lspcon = enc_to_intel_lspcon(encoder);
> enum port port = encoder->port;
> struct intel_connector *intel_connector = intel_dp->attached_connector;
> struct intel_digital_connector_state *intel_conn_state = @@ -2727,10
> +2726,7 @@ intel_dp_compute_config(struct intel_encoder *encoder,
>
> pipe_config->output_format = INTEL_OUTPUT_FORMAT_RGB;
>
> - if (lspcon->active)
> - lspcon_ycbcr420_config(&intel_connector->base, pipe_config);
> - else
> - ret = intel_dp_ycbcr420_config(pipe_config, conn_state);
> + ret = intel_dp_ycbcr420_config(pipe_config, conn_state);
> if (ret)
> return ret;
>
> @@ -6240,7 +6236,9 @@ intel_dp_update_420(struct intel_dp *intel_dp)
> ycbcr_420_passthrough =
> drm_dp_downstream_420_passthrough(intel_dp->dpcd,
> intel_dp->downstream_ports);
> + /* on-board LSPCON always assumed to support 4:4:4->4:2:0 conversion
> +*/
> ycbcr_444_to_420 =
> + dp_to_dig_port(intel_dp)->lspcon.active ||
> drm_dp_downstream_444_to_420_conversion(intel_dp->dpcd,
> intel_dp-
> >downstream_ports);
>
> diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c
> b/drivers/gpu/drm/i915/display/intel_lspcon.c
> index 59f13aef58b5..bbe011c5f7a5 100644
> --- a/drivers/gpu/drm/i915/display/intel_lspcon.c
> +++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
> @@ -184,20 +184,6 @@ static bool lspcon_wake_native_aux_ch(struct
> intel_lspcon *lspcon)
> return true;
> }
>
> -void lspcon_ycbcr420_config(struct drm_connector *connector,
> - struct intel_crtc_state *crtc_state)
> -{
> - const struct drm_display_info *info = &connector->display_info;
> - const struct drm_display_mode *adjusted_mode =
> - &crtc_state->hw.adjusted_mode;
> -
> - if (drm_mode_is_420_only(info, adjusted_mode) &&
> - connector->ycbcr_420_allowed) {
> - crtc_state->port_clock /= 2;
> - crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444;
> - }
> -}
> -
> static bool lspcon_probe(struct intel_lspcon *lspcon) {
> int retry;
> diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.h
> b/drivers/gpu/drm/i915/display/intel_lspcon.h
> index 1cffe8a42a08..31eebab9ed57 100644
> --- a/drivers/gpu/drm/i915/display/intel_lspcon.h
> +++ b/drivers/gpu/drm/i915/display/intel_lspcon.h
> @@ -32,7 +32,5 @@ void lspcon_set_infoframes(struct intel_encoder *encoder,
> const struct drm_connector_state *conn_state);
> u32 lspcon_infoframes_enabled(struct intel_encoder *encoder,
> const struct intel_crtc_state *pipe_config); -void
> lspcon_ycbcr420_config(struct drm_connector *connector,
> - struct intel_crtc_state *crtc_state);
>
> #endif /* __INTEL_LSPCON_H__ */
> --
> 2.26.2
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Intel-gfx] [PATCH 3/3] drm/i915: Inline intel_dp_ycbcr420_config()
2020-09-24 18:41 ` [Intel-gfx] [PATCH 3/3] drm/i915: Inline intel_dp_ycbcr420_config() Ville Syrjala
@ 2020-10-15 23:35 ` Shankar, Uma
0 siblings, 0 replies; 9+ messages in thread
From: Shankar, Uma @ 2020-10-15 23:35 UTC (permalink / raw)
To: Ville Syrjala, intel-gfx@lists.freedesktop.org
> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville
> Syrjala
> Sent: Friday, September 25, 2020 12:12 AM
> To: intel-gfx@lists.freedesktop.org
> Subject: [Intel-gfx] [PATCH 3/3] drm/i915: Inline intel_dp_ycbcr420_config()
>
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> intel_dp_ycbcr420_config() is rather pointless. Just inline it directly into
> intel_dp_compute_config(). This gets rid of the ugly double assignment of
> output_format.
>
> Not really sure what the best policy would be when the user supplies a mode
> classiefied by the display as "YCbCr 4:2:0 only", but we know that we can't do
Nit: Typo in "classified"
Rest all looks good to me.
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
> YCbCr 4:2:0 output. For now keep the current behaviour of just silently upgrade
> it to RGB 4:4:4.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_dp.c | 33 +++++++------------------
> 1 file changed, 9 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index f58df4994d92..a50e502dedf8 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -599,7 +599,8 @@ intel_dp_output_format(struct drm_connector
> *connector,
> struct intel_dp *intel_dp =
> intel_attached_dp(to_intel_connector(connector));
> const struct drm_display_info *info = &connector->display_info;
>
> - if (!drm_mode_is_420_only(info, mode))
> + if (!connector->ycbcr_420_allowed ||
> + !drm_mode_is_420_only(info, mode))
> return INTEL_OUTPUT_FORMAT_RGB;
>
> if (intel_dp->dfp.ycbcr_444_to_420)
> @@ -2456,25 +2457,6 @@ intel_dp_compute_link_config(struct intel_encoder
> *encoder,
> return 0;
> }
>
> -static int
> -intel_dp_ycbcr420_config(struct intel_crtc_state *crtc_state,
> - const struct drm_connector_state *conn_state)
> -{
> - struct drm_connector *connector = conn_state->connector;
> - const struct drm_display_mode *adjusted_mode =
> - &crtc_state->hw.adjusted_mode;
> -
> - if (!connector->ycbcr_420_allowed)
> - return 0;
> -
> - crtc_state->output_format = intel_dp_output_format(connector,
> adjusted_mode);
> -
> - if (crtc_state->output_format != INTEL_OUTPUT_FORMAT_YCBCR420)
> - return 0;
> -
> - return intel_pch_panel_fitting(crtc_state, conn_state);
> -}
> -
> bool intel_dp_limited_color_range(const struct intel_crtc_state *crtc_state,
> const struct drm_connector_state *conn_state)
> { @@ -2724,11 +2706,14 @@ intel_dp_compute_config(struct intel_encoder
> *encoder,
> if (HAS_PCH_SPLIT(dev_priv) && !HAS_DDI(dev_priv) && port != PORT_A)
> pipe_config->has_pch_encoder = true;
>
> - pipe_config->output_format = INTEL_OUTPUT_FORMAT_RGB;
> + pipe_config->output_format =
> intel_dp_output_format(&intel_connector->base,
> + adjusted_mode);
>
> - ret = intel_dp_ycbcr420_config(pipe_config, conn_state);
> - if (ret)
> - return ret;
> + if (pipe_config->output_format == INTEL_OUTPUT_FORMAT_YCBCR420) {
> + ret = intel_pch_panel_fitting(pipe_config, conn_state);
> + if (ret)
> + return ret;
> + }
>
> if (!intel_dp_port_has_audio(dev_priv, port))
> pipe_config->has_audio = false;
> --
> 2.26.2
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-10-15 23:35 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-24 18:41 [Intel-gfx] [PATCH 1/3] drm/i915: Nuke lspcon_downsampling Ville Syrjala
2020-09-24 18:41 ` [Intel-gfx] [PATCH 2/3] drm/i915: Nuke lspcon_ycbcr420_config() Ville Syrjala
2020-10-15 23:28 ` Shankar, Uma
2020-09-24 18:41 ` [Intel-gfx] [PATCH 3/3] drm/i915: Inline intel_dp_ycbcr420_config() Ville Syrjala
2020-10-15 23:35 ` Shankar, Uma
2020-09-24 19:07 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for series starting with [1/3] drm/i915: Nuke lspcon_downsampling Patchwork
2020-09-24 19:32 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-09-24 22:14 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2020-10-15 23:21 ` [Intel-gfx] [PATCH 1/3] " Shankar, Uma
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox