* [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode @ 2020-11-12 19:17 Ville Syrjala 2020-11-12 19:17 ` [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a new function Ville Syrjala ` (8 more replies) 0 siblings, 9 replies; 18+ messages in thread From: Ville Syrjala @ 2020-11-12 19:17 UTC (permalink / raw) To: intel-gfx From: Ville Syrjälä <ville.syrjala@linux.intel.com> A fixed up series to add hw.pipe_mode to crtc_state. Main features: - Fix the div-by-zero from the ddb code by making sure the pipe_mode normal timings are correctly populated - Fix a whole slew of issues in the pipe_mode patch - Some refactoring to make it all a bit less annoying Maarten Lankhorst (1): drm/i915: Add hw.pipe_mode to allow bigjoiner pipe/transcoder split Manasi Navare (2): drm/i915: Move encoder->get_config to a new function drm/i915: Add a wrapper function around get_pipe_config Ville Syrjälä (3): drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() drm/i915: s/intel_mode_from_pipe_config/intel_mode_from_crtc_timings/ drm/i915: Introduce intel_crtc_readout_derived_state() drivers/gpu/drm/i915/display/intel_display.c | 183 +++++++++++------- drivers/gpu/drm/i915/display/intel_display.h | 2 - .../drm/i915/display/intel_display_types.h | 11 +- drivers/gpu/drm/i915/intel_pm.c | 76 ++++---- 4 files changed, 161 insertions(+), 111 deletions(-) -- 2.26.2 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a new function 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala @ 2020-11-12 19:17 ` Ville Syrjala 2020-11-12 19:45 ` Navare, Manasi 2020-11-12 19:17 ` [Intel-gfx] [PATCH 2/6] drm/i915: Add a wrapper function around get_pipe_config Ville Syrjala ` (7 subsequent siblings) 8 siblings, 1 reply; 18+ messages in thread From: Ville Syrjala @ 2020-11-12 19:17 UTC (permalink / raw) To: intel-gfx From: Manasi Navare <manasi.d.navare@intel.com> No functional changes, create a separate intel_encoder_get_config() function that calls encoder->get_config hook. This is needed so that later we can add beigjoienr related readout here. Signed-off-by: Manasi Navare <manasi.d.navare@intel.com> [vsyrjala: Move the code around for the future] Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_display.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index 9566a8d1f470..110d08f2a5c5 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -8141,6 +8141,12 @@ static void intel_crtc_compute_pixel_rate(struct intel_crtc_state *crtc_state) ilk_pipe_pixel_rate(crtc_state); } +static void intel_encoder_get_config(struct intel_encoder *encoder, + struct intel_crtc_state *crtc_state) +{ + encoder->get_config(encoder, crtc_state); +} + static int intel_crtc_compute_config(struct intel_crtc *crtc, struct intel_crtc_state *pipe_config) { @@ -12403,7 +12409,7 @@ intel_encoder_current_mode(struct intel_encoder *encoder) return NULL; } - encoder->get_config(encoder, crtc_state); + intel_encoder_get_config(encoder, crtc_state); intel_mode_from_pipe_config(mode, crtc_state); @@ -14448,7 +14454,7 @@ verify_crtc_state(struct intel_crtc *crtc, pipe_name(pipe)); if (active) - encoder->get_config(encoder, pipe_config); + intel_encoder_get_config(encoder, pipe_config); } intel_crtc_compute_pixel_rate(pipe_config); @@ -18761,7 +18767,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) crtc_state = to_intel_crtc_state(crtc->base.state); encoder->base.crtc = &crtc->base; - encoder->get_config(encoder, crtc_state); + intel_encoder_get_config(encoder, crtc_state); if (encoder->sync_state) encoder->sync_state(encoder, crtc_state); } else { -- 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] 18+ messages in thread
* Re: [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a new function 2020-11-12 19:17 ` [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a new function Ville Syrjala @ 2020-11-12 19:45 ` Navare, Manasi 2020-11-13 8:56 ` Manna, Animesh 0 siblings, 1 reply; 18+ messages in thread From: Navare, Manasi @ 2020-11-12 19:45 UTC (permalink / raw) To: Ville Syrjala; +Cc: intel-gfx On Thu, Nov 12, 2020 at 09:17:13PM +0200, Ville Syrjala wrote: > From: Manasi Navare <manasi.d.navare@intel.com> > > No functional changes, create a separate intel_encoder_get_config() > function that calls encoder->get_config hook. > This is needed so that later we can add beigjoienr related > readout here. bigjoiner misspelled Other than that Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> Manasi > > Signed-off-by: Manasi Navare <manasi.d.navare@intel.com> > [vsyrjala: Move the code around for the future] > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_display.c | 12 +++++++++--- > 1 file changed, 9 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index 9566a8d1f470..110d08f2a5c5 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -8141,6 +8141,12 @@ static void intel_crtc_compute_pixel_rate(struct intel_crtc_state *crtc_state) > ilk_pipe_pixel_rate(crtc_state); > } > > +static void intel_encoder_get_config(struct intel_encoder *encoder, > + struct intel_crtc_state *crtc_state) > +{ > + encoder->get_config(encoder, crtc_state); > +} > + > static int intel_crtc_compute_config(struct intel_crtc *crtc, > struct intel_crtc_state *pipe_config) > { > @@ -12403,7 +12409,7 @@ intel_encoder_current_mode(struct intel_encoder *encoder) > return NULL; > } > > - encoder->get_config(encoder, crtc_state); > + intel_encoder_get_config(encoder, crtc_state); > > intel_mode_from_pipe_config(mode, crtc_state); > > @@ -14448,7 +14454,7 @@ verify_crtc_state(struct intel_crtc *crtc, > pipe_name(pipe)); > > if (active) > - encoder->get_config(encoder, pipe_config); > + intel_encoder_get_config(encoder, pipe_config); > } > > intel_crtc_compute_pixel_rate(pipe_config); > @@ -18761,7 +18767,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) > crtc_state = to_intel_crtc_state(crtc->base.state); > > encoder->base.crtc = &crtc->base; > - encoder->get_config(encoder, crtc_state); > + intel_encoder_get_config(encoder, crtc_state); > if (encoder->sync_state) > encoder->sync_state(encoder, crtc_state); > } else { > -- > 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] 18+ messages in thread
* Re: [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a new function 2020-11-12 19:45 ` Navare, Manasi @ 2020-11-13 8:56 ` Manna, Animesh 0 siblings, 0 replies; 18+ messages in thread From: Manna, Animesh @ 2020-11-13 8:56 UTC (permalink / raw) To: Navare, Manasi D, Ville Syrjala; +Cc: intel-gfx > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Navare, > Manasi > Sent: Friday, November 13, 2020 1:15 AM > To: Ville Syrjala <ville.syrjala@linux.intel.com> > Cc: intel-gfx@lists.freedesktop.org > Subject: Re: [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a > new function > > On Thu, Nov 12, 2020 at 09:17:13PM +0200, Ville Syrjala wrote: > > From: Manasi Navare <manasi.d.navare@intel.com> > > > > No functional changes, create a separate intel_encoder_get_config() > > function that calls encoder->get_config hook. > > This is needed so that later we can add beigjoienr related readout > > here. > > bigjoiner misspelled > > Other than that > > Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> Reviewed-by: Animesh Manna <animesh.manna@intel.com> > > Manasi > > > > Signed-off-by: Manasi Navare <manasi.d.navare@intel.com> > > [vsyrjala: Move the code around for the future] > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > --- > > drivers/gpu/drm/i915/display/intel_display.c | 12 +++++++++--- > > 1 file changed, 9 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c > > b/drivers/gpu/drm/i915/display/intel_display.c > > index 9566a8d1f470..110d08f2a5c5 100644 > > --- a/drivers/gpu/drm/i915/display/intel_display.c > > +++ b/drivers/gpu/drm/i915/display/intel_display.c > > @@ -8141,6 +8141,12 @@ static void intel_crtc_compute_pixel_rate(struct > intel_crtc_state *crtc_state) > > ilk_pipe_pixel_rate(crtc_state); > > } > > > > +static void intel_encoder_get_config(struct intel_encoder *encoder, > > + struct intel_crtc_state *crtc_state) { > > + encoder->get_config(encoder, crtc_state); } > > + > > static int intel_crtc_compute_config(struct intel_crtc *crtc, > > struct intel_crtc_state *pipe_config) { @@ - > 12403,7 > > +12409,7 @@ intel_encoder_current_mode(struct intel_encoder *encoder) > > return NULL; > > } > > > > - encoder->get_config(encoder, crtc_state); > > + intel_encoder_get_config(encoder, crtc_state); > > > > intel_mode_from_pipe_config(mode, crtc_state); > > > > @@ -14448,7 +14454,7 @@ verify_crtc_state(struct intel_crtc *crtc, > > pipe_name(pipe)); > > > > if (active) > > - encoder->get_config(encoder, pipe_config); > > + intel_encoder_get_config(encoder, pipe_config); > > } > > > > intel_crtc_compute_pixel_rate(pipe_config); > > @@ -18761,7 +18767,7 @@ static void > intel_modeset_readout_hw_state(struct drm_device *dev) > > crtc_state = to_intel_crtc_state(crtc->base.state); > > > > encoder->base.crtc = &crtc->base; > > - encoder->get_config(encoder, crtc_state); > > + intel_encoder_get_config(encoder, crtc_state); > > if (encoder->sync_state) > > encoder->sync_state(encoder, crtc_state); > > } else { > > -- > > 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 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] [PATCH 2/6] drm/i915: Add a wrapper function around get_pipe_config 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala 2020-11-12 19:17 ` [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a new function Ville Syrjala @ 2020-11-12 19:17 ` Ville Syrjala 2020-11-12 19:46 ` Navare, Manasi 2020-11-12 19:17 ` [Intel-gfx] [PATCH 3/6] drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() Ville Syrjala ` (6 subsequent siblings) 8 siblings, 1 reply; 18+ messages in thread From: Ville Syrjala @ 2020-11-12 19:17 UTC (permalink / raw) To: intel-gfx From: Manasi Navare <manasi.d.navare@intel.com> Create a new function intel_crtc_get_pipe_config() that calls platform specific hooks for get_pipe_config() No functional change here. Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Manasi Navare <manasi.d.navare@intel.com> [vsyrjala: Conform to modern i915 coding style, fix patch subject] Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_display.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index 110d08f2a5c5..a8287414937c 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -11407,6 +11407,14 @@ static bool hsw_get_pipe_config(struct intel_crtc *crtc, return active; } +static bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state) +{ + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); + struct drm_i915_private *i915 = to_i915(crtc->base.dev); + + return i915->display.get_pipe_config(crtc, crtc_state); +} + static u32 intel_cursor_base(const struct intel_plane_state *plane_state) { struct drm_i915_private *dev_priv = @@ -12403,7 +12411,7 @@ intel_encoder_current_mode(struct intel_encoder *encoder) return NULL; } - if (!dev_priv->display.get_pipe_config(crtc, crtc_state)) { + if (!intel_crtc_get_pipe_config(crtc_state)) { kfree(crtc_state); kfree(mode); return NULL; @@ -14422,8 +14430,7 @@ verify_crtc_state(struct intel_crtc *crtc, pipe_config->hw.enable = new_crtc_state->hw.enable; - pipe_config->hw.active = - dev_priv->display.get_pipe_config(crtc, pipe_config); + pipe_config->hw.active = intel_crtc_get_pipe_config(pipe_config); /* we keep both pipes enabled on 830 */ if (IS_I830(dev_priv) && pipe_config->hw.active) @@ -18736,7 +18743,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) intel_crtc_state_reset(crtc_state, crtc); crtc_state->hw.active = crtc_state->hw.enable = - dev_priv->display.get_pipe_config(crtc, crtc_state); + intel_crtc_get_pipe_config(crtc_state); crtc->base.enabled = crtc_state->hw.enable; crtc->active = crtc_state->hw.active; -- 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] 18+ messages in thread
* Re: [Intel-gfx] [PATCH 2/6] drm/i915: Add a wrapper function around get_pipe_config 2020-11-12 19:17 ` [Intel-gfx] [PATCH 2/6] drm/i915: Add a wrapper function around get_pipe_config Ville Syrjala @ 2020-11-12 19:46 ` Navare, Manasi 2020-11-13 8:58 ` Manna, Animesh 0 siblings, 1 reply; 18+ messages in thread From: Navare, Manasi @ 2020-11-12 19:46 UTC (permalink / raw) To: Ville Syrjala; +Cc: intel-gfx On Thu, Nov 12, 2020 at 09:17:14PM +0200, Ville Syrjala wrote: > From: Manasi Navare <manasi.d.navare@intel.com> > > Create a new function intel_crtc_get_pipe_config() > that calls platform specific hooks for get_pipe_config() > No functional change here. > > Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > Signed-off-by: Manasi Navare <manasi.d.navare@intel.com> > [vsyrjala: Conform to modern i915 coding style, fix patch subject] > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> > --- > drivers/gpu/drm/i915/display/intel_display.c | 15 +++++++++++---- > 1 file changed, 11 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index 110d08f2a5c5..a8287414937c 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -11407,6 +11407,14 @@ static bool hsw_get_pipe_config(struct intel_crtc *crtc, > return active; > } > > +static bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state) > +{ > + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > + struct drm_i915_private *i915 = to_i915(crtc->base.dev); > + > + return i915->display.get_pipe_config(crtc, crtc_state); > +} > + > static u32 intel_cursor_base(const struct intel_plane_state *plane_state) > { > struct drm_i915_private *dev_priv = > @@ -12403,7 +12411,7 @@ intel_encoder_current_mode(struct intel_encoder *encoder) > return NULL; > } > > - if (!dev_priv->display.get_pipe_config(crtc, crtc_state)) { > + if (!intel_crtc_get_pipe_config(crtc_state)) { > kfree(crtc_state); > kfree(mode); > return NULL; > @@ -14422,8 +14430,7 @@ verify_crtc_state(struct intel_crtc *crtc, > > pipe_config->hw.enable = new_crtc_state->hw.enable; > > - pipe_config->hw.active = > - dev_priv->display.get_pipe_config(crtc, pipe_config); > + pipe_config->hw.active = intel_crtc_get_pipe_config(pipe_config); > > /* we keep both pipes enabled on 830 */ > if (IS_I830(dev_priv) && pipe_config->hw.active) > @@ -18736,7 +18743,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) > intel_crtc_state_reset(crtc_state, crtc); > > crtc_state->hw.active = crtc_state->hw.enable = > - dev_priv->display.get_pipe_config(crtc, crtc_state); > + intel_crtc_get_pipe_config(crtc_state); > > crtc->base.enabled = crtc_state->hw.enable; > crtc->active = crtc_state->hw.active; > -- > 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] 18+ messages in thread
* Re: [Intel-gfx] [PATCH 2/6] drm/i915: Add a wrapper function around get_pipe_config 2020-11-12 19:46 ` Navare, Manasi @ 2020-11-13 8:58 ` Manna, Animesh 0 siblings, 0 replies; 18+ messages in thread From: Manna, Animesh @ 2020-11-13 8:58 UTC (permalink / raw) To: Navare, Manasi D, Ville Syrjala; +Cc: intel-gfx > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Navare, > Manasi > Sent: Friday, November 13, 2020 1:17 AM > To: Ville Syrjala <ville.syrjala@linux.intel.com> > Cc: intel-gfx@lists.freedesktop.org > Subject: Re: [Intel-gfx] [PATCH 2/6] drm/i915: Add a wrapper function around > get_pipe_config > > On Thu, Nov 12, 2020 at 09:17:14PM +0200, Ville Syrjala wrote: > > From: Manasi Navare <manasi.d.navare@intel.com> > > > > Create a new function intel_crtc_get_pipe_config() that calls platform > > specific hooks for get_pipe_config() No functional change here. > > > > Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Signed-off-by: Manasi Navare <manasi.d.navare@intel.com> > > [vsyrjala: Conform to modern i915 coding style, fix patch subject] > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> Reviewed-by: Animesh Manna <animesh.manna@intel.com> > > > --- > > drivers/gpu/drm/i915/display/intel_display.c | 15 +++++++++++---- > > 1 file changed, 11 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c > > b/drivers/gpu/drm/i915/display/intel_display.c > > index 110d08f2a5c5..a8287414937c 100644 > > --- a/drivers/gpu/drm/i915/display/intel_display.c > > +++ b/drivers/gpu/drm/i915/display/intel_display.c > > @@ -11407,6 +11407,14 @@ static bool hsw_get_pipe_config(struct > intel_crtc *crtc, > > return active; > > } > > > > +static bool intel_crtc_get_pipe_config(struct intel_crtc_state > > +*crtc_state) { > > + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > > + struct drm_i915_private *i915 = to_i915(crtc->base.dev); > > + > > + return i915->display.get_pipe_config(crtc, crtc_state); } > > + > > static u32 intel_cursor_base(const struct intel_plane_state > > *plane_state) { > > struct drm_i915_private *dev_priv = > > @@ -12403,7 +12411,7 @@ intel_encoder_current_mode(struct > intel_encoder *encoder) > > return NULL; > > } > > > > - if (!dev_priv->display.get_pipe_config(crtc, crtc_state)) { > > + if (!intel_crtc_get_pipe_config(crtc_state)) { > > kfree(crtc_state); > > kfree(mode); > > return NULL; > > @@ -14422,8 +14430,7 @@ verify_crtc_state(struct intel_crtc *crtc, > > > > pipe_config->hw.enable = new_crtc_state->hw.enable; > > > > - pipe_config->hw.active = > > - dev_priv->display.get_pipe_config(crtc, pipe_config); > > + pipe_config->hw.active = intel_crtc_get_pipe_config(pipe_config); > > > > /* we keep both pipes enabled on 830 */ > > if (IS_I830(dev_priv) && pipe_config->hw.active) @@ -18736,7 > > +18743,7 @@ static void intel_modeset_readout_hw_state(struct drm_device > *dev) > > intel_crtc_state_reset(crtc_state, crtc); > > > > crtc_state->hw.active = crtc_state->hw.enable = > > - dev_priv->display.get_pipe_config(crtc, crtc_state); > > + intel_crtc_get_pipe_config(crtc_state); > > > > crtc->base.enabled = crtc_state->hw.enable; > > crtc->active = crtc_state->hw.active; > > -- > > 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 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] [PATCH 3/6] drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala 2020-11-12 19:17 ` [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a new function Ville Syrjala 2020-11-12 19:17 ` [Intel-gfx] [PATCH 2/6] drm/i915: Add a wrapper function around get_pipe_config Ville Syrjala @ 2020-11-12 19:17 ` Ville Syrjala 2020-11-12 19:48 ` Navare, Manasi 2020-11-12 19:17 ` [Intel-gfx] [PATCH 4/6] drm/i915: s/intel_mode_from_pipe_config/intel_mode_from_crtc_timings/ Ville Syrjala ` (5 subsequent siblings) 8 siblings, 1 reply; 18+ messages in thread From: Ville Syrjala @ 2020-11-12 19:17 UTC (permalink / raw) To: intel-gfx From: Ville Syrjälä <ville.syrjala@linux.intel.com> No reason to make the callers of intel_crtc_get_pipe_config() populate hw.active. Let's do it in intel_crtc_get_pipe_config() itself. hw.enable we leave up to the callers since it's slightly different for readout vs. state check. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_display.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index a8287414937c..889642bef192 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -11412,7 +11412,12 @@ static bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state) struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); struct drm_i915_private *i915 = to_i915(crtc->base.dev); - return i915->display.get_pipe_config(crtc, crtc_state); + if (!i915->display.get_pipe_config(crtc, crtc_state)) + return false; + + crtc_state->hw.active = true; + + return true; } static u32 intel_cursor_base(const struct intel_plane_state *plane_state) @@ -14430,7 +14435,7 @@ verify_crtc_state(struct intel_crtc *crtc, pipe_config->hw.enable = new_crtc_state->hw.enable; - pipe_config->hw.active = intel_crtc_get_pipe_config(pipe_config); + intel_crtc_get_pipe_config(pipe_config); /* we keep both pipes enabled on 830 */ if (IS_I830(dev_priv) && pipe_config->hw.active) @@ -18742,8 +18747,9 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) intel_crtc_free_hw_state(crtc_state); intel_crtc_state_reset(crtc_state, crtc); - crtc_state->hw.active = crtc_state->hw.enable = - intel_crtc_get_pipe_config(crtc_state); + intel_crtc_get_pipe_config(crtc_state); + + crtc_state->hw.enable = crtc_state->hw.active; crtc->base.enabled = crtc_state->hw.enable; crtc->active = crtc_state->hw.active; -- 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] 18+ messages in thread
* Re: [Intel-gfx] [PATCH 3/6] drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() 2020-11-12 19:17 ` [Intel-gfx] [PATCH 3/6] drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() Ville Syrjala @ 2020-11-12 19:48 ` Navare, Manasi 2020-11-13 14:27 ` Ville Syrjälä 0 siblings, 1 reply; 18+ messages in thread From: Navare, Manasi @ 2020-11-12 19:48 UTC (permalink / raw) To: Ville Syrjala; +Cc: intel-gfx On Thu, Nov 12, 2020 at 09:17:15PM +0200, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > No reason to make the callers of intel_crtc_get_pipe_config() > populate hw.active. Let's do it in intel_crtc_get_pipe_config() > itself. hw.enable we leave up to the callers since it's slightly > different for readout vs. state check. > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_display.c | 14 ++++++++++---- > 1 file changed, 10 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index a8287414937c..889642bef192 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -11412,7 +11412,12 @@ static bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state) > struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > struct drm_i915_private *i915 = to_i915(crtc->base.dev); > > - return i915->display.get_pipe_config(crtc, crtc_state); > + if (!i915->display.get_pipe_config(crtc, crtc_state)) > + return false; > + > + crtc_state->hw.active = true; > + > + return true; In that case this function can just return a void right, we are not catching the return value in the caller anyways now With that change Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> Manasi > } > > static u32 intel_cursor_base(const struct intel_plane_state *plane_state) > @@ -14430,7 +14435,7 @@ verify_crtc_state(struct intel_crtc *crtc, > > pipe_config->hw.enable = new_crtc_state->hw.enable; > > - pipe_config->hw.active = intel_crtc_get_pipe_config(pipe_config); > + intel_crtc_get_pipe_config(pipe_config); > > /* we keep both pipes enabled on 830 */ > if (IS_I830(dev_priv) && pipe_config->hw.active) > @@ -18742,8 +18747,9 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) > intel_crtc_free_hw_state(crtc_state); > intel_crtc_state_reset(crtc_state, crtc); > > - crtc_state->hw.active = crtc_state->hw.enable = > - intel_crtc_get_pipe_config(crtc_state); > + intel_crtc_get_pipe_config(crtc_state); > + > + crtc_state->hw.enable = crtc_state->hw.active; > > crtc->base.enabled = crtc_state->hw.enable; > crtc->active = crtc_state->hw.active; > -- > 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] 18+ messages in thread
* Re: [Intel-gfx] [PATCH 3/6] drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() 2020-11-12 19:48 ` Navare, Manasi @ 2020-11-13 14:27 ` Ville Syrjälä 0 siblings, 0 replies; 18+ messages in thread From: Ville Syrjälä @ 2020-11-13 14:27 UTC (permalink / raw) To: Navare, Manasi; +Cc: intel-gfx On Thu, Nov 12, 2020 at 11:48:12AM -0800, Navare, Manasi wrote: > On Thu, Nov 12, 2020 at 09:17:15PM +0200, Ville Syrjala wrote: > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > > > No reason to make the callers of intel_crtc_get_pipe_config() > > populate hw.active. Let's do it in intel_crtc_get_pipe_config() > > itself. hw.enable we leave up to the callers since it's slightly > > different for readout vs. state check. > > > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > --- > > drivers/gpu/drm/i915/display/intel_display.c | 14 ++++++++++---- > > 1 file changed, 10 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > > index a8287414937c..889642bef192 100644 > > --- a/drivers/gpu/drm/i915/display/intel_display.c > > +++ b/drivers/gpu/drm/i915/display/intel_display.c > > @@ -11412,7 +11412,12 @@ static bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state) > > struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > > struct drm_i915_private *i915 = to_i915(crtc->base.dev); > > > > - return i915->display.get_pipe_config(crtc, crtc_state); > > + if (!i915->display.get_pipe_config(crtc, crtc_state)) > > + return false; > > + > > + crtc_state->hw.active = true; > > + > > + return true; > > In that case this function can just return a void right, we are not catching the return value in the caller anyways now There is a third caller. > > With that change > > Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> > > Manasi > > > } > > > > static u32 intel_cursor_base(const struct intel_plane_state *plane_state) > > @@ -14430,7 +14435,7 @@ verify_crtc_state(struct intel_crtc *crtc, > > > > pipe_config->hw.enable = new_crtc_state->hw.enable; > > > > - pipe_config->hw.active = intel_crtc_get_pipe_config(pipe_config); > > + intel_crtc_get_pipe_config(pipe_config); > > > > /* we keep both pipes enabled on 830 */ > > if (IS_I830(dev_priv) && pipe_config->hw.active) > > @@ -18742,8 +18747,9 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) > > intel_crtc_free_hw_state(crtc_state); > > intel_crtc_state_reset(crtc_state, crtc); > > > > - crtc_state->hw.active = crtc_state->hw.enable = > > - intel_crtc_get_pipe_config(crtc_state); > > + intel_crtc_get_pipe_config(crtc_state); > > + > > + crtc_state->hw.enable = crtc_state->hw.active; > > > > crtc->base.enabled = crtc_state->hw.enable; > > crtc->active = crtc_state->hw.active; > > -- > > 2.26.2 > > > > _______________________________________________ > > Intel-gfx mailing list > > Intel-gfx@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Ville Syrjälä Intel _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] [PATCH 4/6] drm/i915: s/intel_mode_from_pipe_config/intel_mode_from_crtc_timings/ 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala ` (2 preceding siblings ...) 2020-11-12 19:17 ` [Intel-gfx] [PATCH 3/6] drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() Ville Syrjala @ 2020-11-12 19:17 ` Ville Syrjala 2020-11-12 19:49 ` Navare, Manasi 2020-11-12 19:17 ` [Intel-gfx] [PATCH 5/6] drm/i915: Introduce intel_crtc_readout_derived_state() Ville Syrjala ` (4 subsequent siblings) 8 siblings, 1 reply; 18+ messages in thread From: Ville Syrjala @ 2020-11-12 19:17 UTC (permalink / raw) To: intel-gfx From: Ville Syrjälä <ville.syrjala@linux.intel.com> Generalize intel_mode_from_pipe_config() to work on any two arbitrary modes. Also relocate the code for the future, and make it static since it's not needed elsewhere. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_display.c | 48 ++++++++++---------- drivers/gpu/drm/i915/display/intel_display.h | 2 - 2 files changed, 24 insertions(+), 26 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index 889642bef192..ebf621ff7ef6 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -8128,6 +8128,27 @@ static u32 ilk_pipe_pixel_rate(const struct intel_crtc_state *crtc_state) pfit_w * pfit_h); } +static void intel_mode_from_crtc_timings(struct drm_display_mode *mode, + const struct drm_display_mode *timings) +{ + mode->hdisplay = timings->crtc_hdisplay; + mode->htotal = timings->crtc_htotal; + mode->hsync_start = timings->crtc_hsync_start; + mode->hsync_end = timings->crtc_hsync_end; + + mode->vdisplay = timings->crtc_vdisplay; + mode->vtotal = timings->crtc_vtotal; + mode->vsync_start = timings->crtc_vsync_start; + mode->vsync_end = timings->crtc_vsync_end; + + mode->flags = timings->flags; + mode->type = DRM_MODE_TYPE_DRIVER; + + mode->clock = timings->crtc_clock; + + drm_mode_set_name(mode); +} + static void intel_crtc_compute_pixel_rate(struct intel_crtc_state *crtc_state) { struct drm_i915_private *dev_priv = to_i915(crtc_state->uapi.crtc->dev); @@ -9030,27 +9051,6 @@ static void intel_get_pipe_src_size(struct intel_crtc *crtc, pipe_config->hw.mode.hdisplay = pipe_config->pipe_src_w; } -void intel_mode_from_pipe_config(struct drm_display_mode *mode, - struct intel_crtc_state *pipe_config) -{ - mode->hdisplay = pipe_config->hw.adjusted_mode.crtc_hdisplay; - mode->htotal = pipe_config->hw.adjusted_mode.crtc_htotal; - mode->hsync_start = pipe_config->hw.adjusted_mode.crtc_hsync_start; - mode->hsync_end = pipe_config->hw.adjusted_mode.crtc_hsync_end; - - mode->vdisplay = pipe_config->hw.adjusted_mode.crtc_vdisplay; - mode->vtotal = pipe_config->hw.adjusted_mode.crtc_vtotal; - mode->vsync_start = pipe_config->hw.adjusted_mode.crtc_vsync_start; - mode->vsync_end = pipe_config->hw.adjusted_mode.crtc_vsync_end; - - mode->flags = pipe_config->hw.adjusted_mode.flags; - mode->type = DRM_MODE_TYPE_DRIVER; - - mode->clock = pipe_config->hw.adjusted_mode.crtc_clock; - - drm_mode_set_name(mode); -} - static void i9xx_set_pipeconf(const struct intel_crtc_state *crtc_state) { struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); @@ -12424,7 +12424,7 @@ intel_encoder_current_mode(struct intel_encoder *encoder) intel_encoder_get_config(encoder, crtc_state); - intel_mode_from_pipe_config(mode, crtc_state); + intel_mode_from_crtc_timings(mode, &crtc_state->hw.adjusted_mode); kfree(crtc_state); @@ -18841,8 +18841,8 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) if (crtc_state->hw.active) { struct drm_display_mode *mode = &crtc_state->hw.mode; - intel_mode_from_pipe_config(&crtc_state->hw.adjusted_mode, - crtc_state); + intel_mode_from_crtc_timings(&crtc_state->hw.adjusted_mode, + &crtc_state->hw.adjusted_mode); *mode = crtc_state->hw.adjusted_mode; mode->hdisplay = crtc_state->pipe_src_w; diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h index a988f9518ece..6be14e8571aa 100644 --- a/drivers/gpu/drm/i915/display/intel_display.h +++ b/drivers/gpu/drm/i915/display/intel_display.h @@ -609,8 +609,6 @@ enum intel_display_power_domain intel_aux_power_domain(struct intel_digital_port *dig_port); enum intel_display_power_domain intel_legacy_aux_to_power_domain(enum aux_ch aux_ch); -void intel_mode_from_pipe_config(struct drm_display_mode *mode, - struct intel_crtc_state *pipe_config); void intel_crtc_arm_fifo_underrun(struct intel_crtc *crtc, struct intel_crtc_state *crtc_state); -- 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] 18+ messages in thread
* Re: [Intel-gfx] [PATCH 4/6] drm/i915: s/intel_mode_from_pipe_config/intel_mode_from_crtc_timings/ 2020-11-12 19:17 ` [Intel-gfx] [PATCH 4/6] drm/i915: s/intel_mode_from_pipe_config/intel_mode_from_crtc_timings/ Ville Syrjala @ 2020-11-12 19:49 ` Navare, Manasi 0 siblings, 0 replies; 18+ messages in thread From: Navare, Manasi @ 2020-11-12 19:49 UTC (permalink / raw) To: Ville Syrjala; +Cc: intel-gfx On Thu, Nov 12, 2020 at 09:17:16PM +0200, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Generalize intel_mode_from_pipe_config() to work on any two > arbitrary modes. Also relocate the code for the future, and > make it static since it's not needed elsewhere. > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> Manasi > --- > drivers/gpu/drm/i915/display/intel_display.c | 48 ++++++++++---------- > drivers/gpu/drm/i915/display/intel_display.h | 2 - > 2 files changed, 24 insertions(+), 26 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index 889642bef192..ebf621ff7ef6 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -8128,6 +8128,27 @@ static u32 ilk_pipe_pixel_rate(const struct intel_crtc_state *crtc_state) > pfit_w * pfit_h); > } > > +static void intel_mode_from_crtc_timings(struct drm_display_mode *mode, > + const struct drm_display_mode *timings) > +{ > + mode->hdisplay = timings->crtc_hdisplay; > + mode->htotal = timings->crtc_htotal; > + mode->hsync_start = timings->crtc_hsync_start; > + mode->hsync_end = timings->crtc_hsync_end; > + > + mode->vdisplay = timings->crtc_vdisplay; > + mode->vtotal = timings->crtc_vtotal; > + mode->vsync_start = timings->crtc_vsync_start; > + mode->vsync_end = timings->crtc_vsync_end; > + > + mode->flags = timings->flags; > + mode->type = DRM_MODE_TYPE_DRIVER; > + > + mode->clock = timings->crtc_clock; > + > + drm_mode_set_name(mode); > +} > + > static void intel_crtc_compute_pixel_rate(struct intel_crtc_state *crtc_state) > { > struct drm_i915_private *dev_priv = to_i915(crtc_state->uapi.crtc->dev); > @@ -9030,27 +9051,6 @@ static void intel_get_pipe_src_size(struct intel_crtc *crtc, > pipe_config->hw.mode.hdisplay = pipe_config->pipe_src_w; > } > > -void intel_mode_from_pipe_config(struct drm_display_mode *mode, > - struct intel_crtc_state *pipe_config) > -{ > - mode->hdisplay = pipe_config->hw.adjusted_mode.crtc_hdisplay; > - mode->htotal = pipe_config->hw.adjusted_mode.crtc_htotal; > - mode->hsync_start = pipe_config->hw.adjusted_mode.crtc_hsync_start; > - mode->hsync_end = pipe_config->hw.adjusted_mode.crtc_hsync_end; > - > - mode->vdisplay = pipe_config->hw.adjusted_mode.crtc_vdisplay; > - mode->vtotal = pipe_config->hw.adjusted_mode.crtc_vtotal; > - mode->vsync_start = pipe_config->hw.adjusted_mode.crtc_vsync_start; > - mode->vsync_end = pipe_config->hw.adjusted_mode.crtc_vsync_end; > - > - mode->flags = pipe_config->hw.adjusted_mode.flags; > - mode->type = DRM_MODE_TYPE_DRIVER; > - > - mode->clock = pipe_config->hw.adjusted_mode.crtc_clock; > - > - drm_mode_set_name(mode); > -} > - > static void i9xx_set_pipeconf(const struct intel_crtc_state *crtc_state) > { > struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > @@ -12424,7 +12424,7 @@ intel_encoder_current_mode(struct intel_encoder *encoder) > > intel_encoder_get_config(encoder, crtc_state); > > - intel_mode_from_pipe_config(mode, crtc_state); > + intel_mode_from_crtc_timings(mode, &crtc_state->hw.adjusted_mode); > > kfree(crtc_state); > > @@ -18841,8 +18841,8 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) > if (crtc_state->hw.active) { > struct drm_display_mode *mode = &crtc_state->hw.mode; > > - intel_mode_from_pipe_config(&crtc_state->hw.adjusted_mode, > - crtc_state); > + intel_mode_from_crtc_timings(&crtc_state->hw.adjusted_mode, > + &crtc_state->hw.adjusted_mode); > > *mode = crtc_state->hw.adjusted_mode; > mode->hdisplay = crtc_state->pipe_src_w; > diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h > index a988f9518ece..6be14e8571aa 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.h > +++ b/drivers/gpu/drm/i915/display/intel_display.h > @@ -609,8 +609,6 @@ enum intel_display_power_domain > intel_aux_power_domain(struct intel_digital_port *dig_port); > enum intel_display_power_domain > intel_legacy_aux_to_power_domain(enum aux_ch aux_ch); > -void intel_mode_from_pipe_config(struct drm_display_mode *mode, > - struct intel_crtc_state *pipe_config); > void intel_crtc_arm_fifo_underrun(struct intel_crtc *crtc, > struct intel_crtc_state *crtc_state); > > -- > 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] 18+ messages in thread
* [Intel-gfx] [PATCH 5/6] drm/i915: Introduce intel_crtc_readout_derived_state() 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala ` (3 preceding siblings ...) 2020-11-12 19:17 ` [Intel-gfx] [PATCH 4/6] drm/i915: s/intel_mode_from_pipe_config/intel_mode_from_crtc_timings/ Ville Syrjala @ 2020-11-12 19:17 ` Ville Syrjala 2020-11-12 19:49 ` Navare, Manasi 2020-11-12 19:17 ` [Intel-gfx] [PATCH 6/6] drm/i915: Add hw.pipe_mode to allow bigjoiner pipe/transcoder split Ville Syrjala ` (3 subsequent siblings) 8 siblings, 1 reply; 18+ messages in thread From: Ville Syrjala @ 2020-11-12 19:17 UTC (permalink / raw) To: intel-gfx From: Ville Syrjälä <ville.syrjala@linux.intel.com> Collect up a bunch of derived state "readout" into a common helper, which we can call from both intel_encoder_get_config() and intel_crtc_get_pipe_config(). Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_display.c | 34 +++++++++++--------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index ebf621ff7ef6..07b8d945c41f 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -8162,10 +8162,26 @@ static void intel_crtc_compute_pixel_rate(struct intel_crtc_state *crtc_state) ilk_pipe_pixel_rate(crtc_state); } +static void intel_crtc_readout_derived_state(struct intel_crtc_state *crtc_state) +{ + struct drm_display_mode *mode = &crtc_state->hw.mode; + struct drm_display_mode *adjusted_mode = &crtc_state->hw.adjusted_mode; + + intel_mode_from_crtc_timings(adjusted_mode, adjusted_mode); + + intel_crtc_compute_pixel_rate(crtc_state); + + drm_mode_copy(mode, adjusted_mode); + mode->hdisplay = crtc_state->pipe_src_w; + mode->vdisplay = crtc_state->pipe_src_h; +} + static void intel_encoder_get_config(struct intel_encoder *encoder, struct intel_crtc_state *crtc_state) { encoder->get_config(encoder, crtc_state); + + intel_crtc_readout_derived_state(crtc_state); } static int intel_crtc_compute_config(struct intel_crtc *crtc, @@ -9046,9 +9062,6 @@ static void intel_get_pipe_src_size(struct intel_crtc *crtc, tmp = intel_de_read(dev_priv, PIPESRC(crtc->pipe)); pipe_config->pipe_src_h = (tmp & 0xffff) + 1; pipe_config->pipe_src_w = ((tmp >> 16) & 0xffff) + 1; - - pipe_config->hw.mode.vdisplay = pipe_config->pipe_src_h; - pipe_config->hw.mode.hdisplay = pipe_config->pipe_src_w; } static void i9xx_set_pipeconf(const struct intel_crtc_state *crtc_state) @@ -11417,6 +11430,8 @@ static bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state) crtc_state->hw.active = true; + intel_crtc_readout_derived_state(crtc_state); + return true; } @@ -14469,8 +14484,6 @@ verify_crtc_state(struct intel_crtc *crtc, intel_encoder_get_config(encoder, pipe_config); } - intel_crtc_compute_pixel_rate(pipe_config); - if (!new_crtc_state->hw.active) return; @@ -18839,15 +18852,6 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) int min_cdclk = 0; if (crtc_state->hw.active) { - struct drm_display_mode *mode = &crtc_state->hw.mode; - - intel_mode_from_crtc_timings(&crtc_state->hw.adjusted_mode, - &crtc_state->hw.adjusted_mode); - - *mode = crtc_state->hw.adjusted_mode; - mode->hdisplay = crtc_state->pipe_src_w; - mode->vdisplay = crtc_state->pipe_src_h; - /* * The initial mode needs to be set in order to keep * the atomic core happy. It wants a valid mode if the @@ -18859,8 +18863,6 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) */ crtc_state->inherited = true; - intel_crtc_compute_pixel_rate(crtc_state); - intel_crtc_update_active_timings(crtc_state); intel_crtc_copy_hw_to_uapi_state(crtc_state); -- 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] 18+ messages in thread
* Re: [Intel-gfx] [PATCH 5/6] drm/i915: Introduce intel_crtc_readout_derived_state() 2020-11-12 19:17 ` [Intel-gfx] [PATCH 5/6] drm/i915: Introduce intel_crtc_readout_derived_state() Ville Syrjala @ 2020-11-12 19:49 ` Navare, Manasi 0 siblings, 0 replies; 18+ messages in thread From: Navare, Manasi @ 2020-11-12 19:49 UTC (permalink / raw) To: Ville Syrjala; +Cc: intel-gfx On Thu, Nov 12, 2020 at 09:17:17PM +0200, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Collect up a bunch of derived state "readout" into > a common helper, which we can call from both > intel_encoder_get_config() and intel_crtc_get_pipe_config(). > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Makes sense Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> Manasi > --- > drivers/gpu/drm/i915/display/intel_display.c | 34 +++++++++++--------- > 1 file changed, 18 insertions(+), 16 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index ebf621ff7ef6..07b8d945c41f 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -8162,10 +8162,26 @@ static void intel_crtc_compute_pixel_rate(struct intel_crtc_state *crtc_state) > ilk_pipe_pixel_rate(crtc_state); > } > > +static void intel_crtc_readout_derived_state(struct intel_crtc_state *crtc_state) > +{ > + struct drm_display_mode *mode = &crtc_state->hw.mode; > + struct drm_display_mode *adjusted_mode = &crtc_state->hw.adjusted_mode; > + > + intel_mode_from_crtc_timings(adjusted_mode, adjusted_mode); > + > + intel_crtc_compute_pixel_rate(crtc_state); > + > + drm_mode_copy(mode, adjusted_mode); > + mode->hdisplay = crtc_state->pipe_src_w; > + mode->vdisplay = crtc_state->pipe_src_h; > +} > + > static void intel_encoder_get_config(struct intel_encoder *encoder, > struct intel_crtc_state *crtc_state) > { > encoder->get_config(encoder, crtc_state); > + > + intel_crtc_readout_derived_state(crtc_state); > } > > static int intel_crtc_compute_config(struct intel_crtc *crtc, > @@ -9046,9 +9062,6 @@ static void intel_get_pipe_src_size(struct intel_crtc *crtc, > tmp = intel_de_read(dev_priv, PIPESRC(crtc->pipe)); > pipe_config->pipe_src_h = (tmp & 0xffff) + 1; > pipe_config->pipe_src_w = ((tmp >> 16) & 0xffff) + 1; > - > - pipe_config->hw.mode.vdisplay = pipe_config->pipe_src_h; > - pipe_config->hw.mode.hdisplay = pipe_config->pipe_src_w; > } > > static void i9xx_set_pipeconf(const struct intel_crtc_state *crtc_state) > @@ -11417,6 +11430,8 @@ static bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state) > > crtc_state->hw.active = true; > > + intel_crtc_readout_derived_state(crtc_state); > + > return true; > } > > @@ -14469,8 +14484,6 @@ verify_crtc_state(struct intel_crtc *crtc, > intel_encoder_get_config(encoder, pipe_config); > } > > - intel_crtc_compute_pixel_rate(pipe_config); > - > if (!new_crtc_state->hw.active) > return; > > @@ -18839,15 +18852,6 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) > int min_cdclk = 0; > > if (crtc_state->hw.active) { > - struct drm_display_mode *mode = &crtc_state->hw.mode; > - > - intel_mode_from_crtc_timings(&crtc_state->hw.adjusted_mode, > - &crtc_state->hw.adjusted_mode); > - > - *mode = crtc_state->hw.adjusted_mode; > - mode->hdisplay = crtc_state->pipe_src_w; > - mode->vdisplay = crtc_state->pipe_src_h; > - > /* > * The initial mode needs to be set in order to keep > * the atomic core happy. It wants a valid mode if the > @@ -18859,8 +18863,6 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) > */ > crtc_state->inherited = true; > > - intel_crtc_compute_pixel_rate(crtc_state); > - > intel_crtc_update_active_timings(crtc_state); > > intel_crtc_copy_hw_to_uapi_state(crtc_state); > -- > 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] 18+ messages in thread
* [Intel-gfx] [PATCH 6/6] drm/i915: Add hw.pipe_mode to allow bigjoiner pipe/transcoder split 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala ` (4 preceding siblings ...) 2020-11-12 19:17 ` [Intel-gfx] [PATCH 5/6] drm/i915: Introduce intel_crtc_readout_derived_state() Ville Syrjala @ 2020-11-12 19:17 ` Ville Syrjala 2020-11-12 23:45 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Introduce crtc_state.hw.pipe_mode Patchwork ` (2 subsequent siblings) 8 siblings, 0 replies; 18+ messages in thread From: Ville Syrjala @ 2020-11-12 19:17 UTC (permalink / raw) To: intel-gfx From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> With bigjoiner, there will be 2 pipes driving 2 halves of 1 transcoder, because of this, we need a pipe_mode for various calculations, including for example watermarks, plane clipping, etc. v10: * remove redundant pipe_mode assignment (Ville) v9: * pipe_mode in state dump nd state check (Ville) v8: * Add pipe_mode in readout in verify_crtc_state (Ville) v7: * Remove redundant comment (Ville) * Just keep mode instead of pipe_mode (Ville) v6: * renaming in separate function, only pipe_mode here (Ville) * Add description (Maarten) v5: * Rebase (Manasi) v4: * Manual rebase (Manasi) v3: * Change state to crtc_state, fix rebase err (Manasi) v2: * Manual Rebase (Manasi) Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Manasi Navare <manasi.d.navare@intel.com> Reviewed-by: Animesh Manna <animesh.manna@intel.com> [vsyrjala: * Fix state checker * Fix state dump * Use pipe_mode for linetime watermarks * Make sure pipe_mode normal timings are correct since the silly ddb code uses them * Drop the redundant pipe_mode copies from intel_modeset_pipe_config() and intel_crtc_copy_uapi_to_hw_state() * Use drm_mode_copy() all over] Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/display/intel_display.c | 67 ++++++++++------ .../drm/i915/display/intel_display_types.h | 11 ++- drivers/gpu/drm/i915/intel_pm.c | 76 +++++++++---------- 3 files changed, 92 insertions(+), 62 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index 07b8d945c41f..03577ee5d9b7 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -6073,18 +6073,16 @@ skl_update_scaler(struct intel_crtc_state *crtc_state, bool force_detach, static int skl_update_scaler_crtc(struct intel_crtc_state *crtc_state) { - const struct drm_display_mode *adjusted_mode = - &crtc_state->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = &crtc_state->hw.pipe_mode; int width, height; if (crtc_state->pch_pfit.enabled) { width = drm_rect_width(&crtc_state->pch_pfit.dst); height = drm_rect_height(&crtc_state->pch_pfit.dst); } else { - width = adjusted_mode->crtc_hdisplay; - height = adjusted_mode->crtc_vdisplay; + width = pipe_mode->crtc_hdisplay; + height = pipe_mode->crtc_vdisplay; } - return skl_update_scaler(crtc_state, !crtc_state->hw.active, SKL_CRTC_INDEX, &crtc_state->scaler_state.scaler_id, @@ -8098,7 +8096,7 @@ static bool intel_crtc_supports_double_wide(const struct intel_crtc *crtc) static u32 ilk_pipe_pixel_rate(const struct intel_crtc_state *crtc_state) { - u32 pixel_rate = crtc_state->hw.adjusted_mode.crtc_clock; + u32 pixel_rate = crtc_state->hw.pipe_mode.crtc_clock; unsigned int pipe_w, pipe_h, pfit_w, pfit_h; /* @@ -8156,7 +8154,7 @@ static void intel_crtc_compute_pixel_rate(struct intel_crtc_state *crtc_state) if (HAS_GMCH(dev_priv)) /* FIXME calculate proper pipe pixel rate for GMCH pfit */ crtc_state->pixel_rate = - crtc_state->hw.adjusted_mode.crtc_clock; + crtc_state->hw.pipe_mode.crtc_clock; else crtc_state->pixel_rate = ilk_pipe_pixel_rate(crtc_state); @@ -8165,8 +8163,12 @@ static void intel_crtc_compute_pixel_rate(struct intel_crtc_state *crtc_state) static void intel_crtc_readout_derived_state(struct intel_crtc_state *crtc_state) { struct drm_display_mode *mode = &crtc_state->hw.mode; + struct drm_display_mode *pipe_mode = &crtc_state->hw.pipe_mode; struct drm_display_mode *adjusted_mode = &crtc_state->hw.adjusted_mode; + drm_mode_copy(pipe_mode, adjusted_mode); + + intel_mode_from_crtc_timings(pipe_mode, pipe_mode); intel_mode_from_crtc_timings(adjusted_mode, adjusted_mode); intel_crtc_compute_pixel_rate(crtc_state); @@ -8188,9 +8190,12 @@ static int intel_crtc_compute_config(struct intel_crtc *crtc, struct intel_crtc_state *pipe_config) { struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); - const struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode; + struct drm_display_mode *pipe_mode = &pipe_config->hw.pipe_mode; int clock_limit = dev_priv->max_dotclk_freq; + drm_mode_copy(pipe_mode, &pipe_config->hw.adjusted_mode); + intel_mode_from_crtc_timings(pipe_mode, pipe_mode); + if (INTEL_GEN(dev_priv) < 4) { clock_limit = dev_priv->max_cdclk_freq * 9 / 10; @@ -8199,16 +8204,16 @@ static int intel_crtc_compute_config(struct intel_crtc *crtc, * is > 90% of the (display) core speed. */ if (intel_crtc_supports_double_wide(crtc) && - adjusted_mode->crtc_clock > clock_limit) { + pipe_mode->crtc_clock > clock_limit) { clock_limit = dev_priv->max_dotclk_freq; pipe_config->double_wide = true; } } - if (adjusted_mode->crtc_clock > clock_limit) { + if (pipe_mode->crtc_clock > clock_limit) { drm_dbg_kms(&dev_priv->drm, "requested pixel clock (%d kHz) too high (max: %d kHz, double wide: %s)\n", - adjusted_mode->crtc_clock, clock_limit, + pipe_mode->crtc_clock, clock_limit, yesno(pipe_config->double_wide)); return -EINVAL; } @@ -8251,7 +8256,7 @@ static int intel_crtc_compute_config(struct intel_crtc *crtc, * WaPruneModeWithIncorrectHsyncOffset:ctg,elk,ilk,snb,ivb,vlv,hsw. */ if ((INTEL_GEN(dev_priv) > 4 || IS_G4X(dev_priv)) && - adjusted_mode->crtc_hsync_start == adjusted_mode->crtc_hdisplay) + pipe_mode->crtc_hsync_start == pipe_mode->crtc_hdisplay) return -EINVAL; intel_crtc_compute_pixel_rate(pipe_config); @@ -12783,15 +12788,15 @@ static bool c8_planes_changed(const struct intel_crtc_state *new_crtc_state) static u16 hsw_linetime_wm(const struct intel_crtc_state *crtc_state) { - const struct drm_display_mode *adjusted_mode = - &crtc_state->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc_state->hw.pipe_mode; int linetime_wm; if (!crtc_state->hw.enable) return 0; - linetime_wm = DIV_ROUND_CLOSEST(adjusted_mode->crtc_htotal * 1000 * 8, - adjusted_mode->crtc_clock); + linetime_wm = DIV_ROUND_CLOSEST(pipe_mode->crtc_htotal * 1000 * 8, + pipe_mode->crtc_clock); return min(linetime_wm, 0x1ff); } @@ -12799,14 +12804,14 @@ static u16 hsw_linetime_wm(const struct intel_crtc_state *crtc_state) static u16 hsw_ips_linetime_wm(const struct intel_crtc_state *crtc_state, const struct intel_cdclk_state *cdclk_state) { - const struct drm_display_mode *adjusted_mode = - &crtc_state->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc_state->hw.pipe_mode; int linetime_wm; if (!crtc_state->hw.enable) return 0; - linetime_wm = DIV_ROUND_CLOSEST(adjusted_mode->crtc_htotal * 1000 * 8, + linetime_wm = DIV_ROUND_CLOSEST(pipe_mode->crtc_htotal * 1000 * 8, cdclk_state->logical.cdclk); return min(linetime_wm, 0x1ff); @@ -12816,14 +12821,14 @@ static u16 skl_linetime_wm(const struct intel_crtc_state *crtc_state) { struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); - const struct drm_display_mode *adjusted_mode = - &crtc_state->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc_state->hw.pipe_mode; int linetime_wm; if (!crtc_state->hw.enable) return 0; - linetime_wm = DIV_ROUND_UP(adjusted_mode->crtc_htotal * 1000 * 8, + linetime_wm = DIV_ROUND_UP(pipe_mode->crtc_htotal * 1000 * 8, crtc_state->pixel_rate); /* Display WA #1135: BXT:ALL GLK:ALL */ @@ -13279,6 +13284,9 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config, drm_dbg_kms(&dev_priv->drm, "adjusted mode:\n"); drm_mode_debug_printmodeline(&pipe_config->hw.adjusted_mode); intel_dump_crtc_timings(dev_priv, &pipe_config->hw.adjusted_mode); + drm_dbg_kms(&dev_priv->drm, "pipe mode:\n"); + drm_mode_debug_printmodeline(&pipe_config->hw.pipe_mode); + intel_dump_crtc_timings(dev_priv, &pipe_config->hw.pipe_mode); drm_dbg_kms(&dev_priv->drm, "port clock: %d, pipe src size: %dx%d, pixel rate %d\n", pipe_config->port_clock, @@ -14027,6 +14035,20 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config, PIPE_CONF_CHECK_X(output_types); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_hdisplay); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_htotal); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_hblank_start); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_hblank_end); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_hsync_start); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_hsync_end); + + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_vdisplay); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_vtotal); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_vblank_start); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_vblank_end); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_vsync_start); + PIPE_CONF_CHECK_I(hw.pipe_mode.crtc_vsync_end); + PIPE_CONF_CHECK_I(hw.adjusted_mode.crtc_hdisplay); PIPE_CONF_CHECK_I(hw.adjusted_mode.crtc_htotal); PIPE_CONF_CHECK_I(hw.adjusted_mode.crtc_hblank_start); @@ -14153,6 +14175,7 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config, if (IS_G4X(dev_priv) || INTEL_GEN(dev_priv) >= 5) PIPE_CONF_CHECK_I(pipe_bpp); + PIPE_CONF_CHECK_CLOCK_FUZZY(hw.pipe_mode.crtc_clock); PIPE_CONF_CHECK_CLOCK_FUZZY(hw.adjusted_mode.crtc_clock); PIPE_CONF_CHECK_CLOCK_FUZZY(port_clock); diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h index 6e72c9d52843..35ab5944a3f7 100644 --- a/drivers/gpu/drm/i915/display/intel_display_types.h +++ b/drivers/gpu/drm/i915/display/intel_display_types.h @@ -817,15 +817,22 @@ struct intel_crtc_state { * The following members are used to verify the hardware state: * - enable * - active - * - mode / adjusted_mode + * - mode / pipe_mode / adjusted_mode * - color property blobs. * * During initial hw readout, they need to be copied to uapi. + * + * Bigjoiner will allow a transcoder mode that spans 2 pipes; + * Use the pipe_mode for calculations like watermarks, pipe + * scaler, and bandwidth. + * + * Use adjusted_mode for things that need to know the full + * mode on the transcoder, which spans all pipes. */ struct { bool active, enable; struct drm_property_blob *degamma_lut, *gamma_lut, *ctm; - struct drm_display_mode mode, adjusted_mode; + struct drm_display_mode mode, pipe_mode, adjusted_mode; enum drm_scaling_filter scaling_filter; } hw; diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index bbec56f97832..4d9c69ae039b 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c @@ -899,12 +899,12 @@ static void pnv_update_wm(struct intel_crtc *unused_crtc) crtc = single_enabled_crtc(dev_priv); if (crtc) { - const struct drm_display_mode *adjusted_mode = - &crtc->config->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc->config->hw.pipe_mode; const struct drm_framebuffer *fb = crtc->base.primary->state->fb; int cpp = fb->format->cpp[0]; - int clock = adjusted_mode->crtc_clock; + int clock = pipe_mode->crtc_clock; /* Display SR */ wm = intel_calculate_wm(clock, &pnv_display_wm, @@ -1135,8 +1135,8 @@ static u16 g4x_compute_wm(const struct intel_crtc_state *crtc_state, { struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); struct drm_i915_private *dev_priv = to_i915(plane->base.dev); - const struct drm_display_mode *adjusted_mode = - &crtc_state->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc_state->hw.pipe_mode; unsigned int latency = dev_priv->wm.pri_latency[level] * 10; unsigned int clock, htotal, cpp, width, wm; @@ -1163,8 +1163,8 @@ static u16 g4x_compute_wm(const struct intel_crtc_state *crtc_state, level != G4X_WM_LEVEL_NORMAL) cpp = max(cpp, 4u); - clock = adjusted_mode->crtc_clock; - htotal = adjusted_mode->crtc_htotal; + clock = pipe_mode->crtc_clock; + htotal = pipe_mode->crtc_htotal; width = drm_rect_width(&plane_state->uapi.dst); @@ -1660,8 +1660,8 @@ static u16 vlv_compute_wm_level(const struct intel_crtc_state *crtc_state, { struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); struct drm_i915_private *dev_priv = to_i915(plane->base.dev); - const struct drm_display_mode *adjusted_mode = - &crtc_state->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc_state->hw.pipe_mode; unsigned int clock, htotal, cpp, width, wm; if (dev_priv->wm.pri_latency[level] == 0) @@ -1671,8 +1671,8 @@ static u16 vlv_compute_wm_level(const struct intel_crtc_state *crtc_state, return 0; cpp = plane_state->hw.fb->format->cpp[0]; - clock = adjusted_mode->crtc_clock; - htotal = adjusted_mode->crtc_htotal; + clock = pipe_mode->crtc_clock; + htotal = pipe_mode->crtc_htotal; width = crtc_state->pipe_src_w; if (plane->id == PLANE_CURSOR) { @@ -2261,12 +2261,12 @@ static void i965_update_wm(struct intel_crtc *unused_crtc) if (crtc) { /* self-refresh has much higher latency */ static const int sr_latency_ns = 12000; - const struct drm_display_mode *adjusted_mode = - &crtc->config->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc->config->hw.pipe_mode; const struct drm_framebuffer *fb = crtc->base.primary->state->fb; - int clock = adjusted_mode->crtc_clock; - int htotal = adjusted_mode->crtc_htotal; + int clock = pipe_mode->crtc_clock; + int htotal = pipe_mode->crtc_htotal; int hdisplay = crtc->config->pipe_src_w; int cpp = fb->format->cpp[0]; int entries; @@ -2345,8 +2345,8 @@ static void i9xx_update_wm(struct intel_crtc *unused_crtc) fifo_size = dev_priv->display.get_fifo_size(dev_priv, PLANE_A); crtc = intel_get_crtc_for_plane(dev_priv, PLANE_A); if (intel_crtc_active(crtc)) { - const struct drm_display_mode *adjusted_mode = - &crtc->config->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc->config->hw.pipe_mode; const struct drm_framebuffer *fb = crtc->base.primary->state->fb; int cpp; @@ -2356,7 +2356,7 @@ static void i9xx_update_wm(struct intel_crtc *unused_crtc) else cpp = fb->format->cpp[0]; - planea_wm = intel_calculate_wm(adjusted_mode->crtc_clock, + planea_wm = intel_calculate_wm(pipe_mode->crtc_clock, wm_info, fifo_size, cpp, pessimal_latency_ns); enabled = crtc; @@ -2372,8 +2372,8 @@ static void i9xx_update_wm(struct intel_crtc *unused_crtc) fifo_size = dev_priv->display.get_fifo_size(dev_priv, PLANE_B); crtc = intel_get_crtc_for_plane(dev_priv, PLANE_B); if (intel_crtc_active(crtc)) { - const struct drm_display_mode *adjusted_mode = - &crtc->config->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc->config->hw.pipe_mode; const struct drm_framebuffer *fb = crtc->base.primary->state->fb; int cpp; @@ -2383,7 +2383,7 @@ static void i9xx_update_wm(struct intel_crtc *unused_crtc) else cpp = fb->format->cpp[0]; - planeb_wm = intel_calculate_wm(adjusted_mode->crtc_clock, + planeb_wm = intel_calculate_wm(pipe_mode->crtc_clock, wm_info, fifo_size, cpp, pessimal_latency_ns); if (enabled == NULL) @@ -2421,12 +2421,12 @@ static void i9xx_update_wm(struct intel_crtc *unused_crtc) if (HAS_FW_BLC(dev_priv) && enabled) { /* self-refresh has much higher latency */ static const int sr_latency_ns = 6000; - const struct drm_display_mode *adjusted_mode = - &enabled->config->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &enabled->config->hw.pipe_mode; const struct drm_framebuffer *fb = enabled->base.primary->state->fb; - int clock = adjusted_mode->crtc_clock; - int htotal = adjusted_mode->crtc_htotal; + int clock = pipe_mode->crtc_clock; + int htotal = pipe_mode->crtc_htotal; int hdisplay = enabled->config->pipe_src_w; int cpp; int entries; @@ -2474,7 +2474,7 @@ static void i845_update_wm(struct intel_crtc *unused_crtc) { struct drm_i915_private *dev_priv = to_i915(unused_crtc->base.dev); struct intel_crtc *crtc; - const struct drm_display_mode *adjusted_mode; + const struct drm_display_mode *pipe_mode; u32 fwater_lo; int planea_wm; @@ -2482,8 +2482,8 @@ static void i845_update_wm(struct intel_crtc *unused_crtc) if (crtc == NULL) return; - adjusted_mode = &crtc->config->hw.adjusted_mode; - planea_wm = intel_calculate_wm(adjusted_mode->crtc_clock, + pipe_mode = &crtc->config->hw.pipe_mode; + planea_wm = intel_calculate_wm(pipe_mode->crtc_clock, &i845_wm_info, dev_priv->display.get_fifo_size(dev_priv, PLANE_A), 4, pessimal_latency_ns); @@ -2573,7 +2573,7 @@ static u32 ilk_compute_pri_wm(const struct intel_crtc_state *crtc_state, return method1; method2 = ilk_wm_method2(crtc_state->pixel_rate, - crtc_state->hw.adjusted_mode.crtc_htotal, + crtc_state->hw.pipe_mode.crtc_htotal, drm_rect_width(&plane_state->uapi.dst), cpp, mem_value); @@ -2601,7 +2601,7 @@ static u32 ilk_compute_spr_wm(const struct intel_crtc_state *crtc_state, method1 = ilk_wm_method1(crtc_state->pixel_rate, cpp, mem_value); method2 = ilk_wm_method2(crtc_state->pixel_rate, - crtc_state->hw.adjusted_mode.crtc_htotal, + crtc_state->hw.pipe_mode.crtc_htotal, drm_rect_width(&plane_state->uapi.dst), cpp, mem_value); return min(method1, method2); @@ -2626,7 +2626,7 @@ static u32 ilk_compute_cur_wm(const struct intel_crtc_state *crtc_state, cpp = plane_state->hw.fb->format->cpp[0]; return ilk_wm_method2(crtc_state->pixel_rate, - crtc_state->hw.adjusted_mode.crtc_htotal, + crtc_state->hw.pipe_mode.crtc_htotal, drm_rect_width(&plane_state->uapi.dst), cpp, mem_value); } @@ -3883,7 +3883,7 @@ static bool skl_crtc_can_enable_sagv(const struct intel_crtc_state *crtc_state) if (!crtc_state->hw.active) return true; - if (crtc_state->hw.adjusted_mode.flags & DRM_MODE_FLAG_INTERLACE) + if (crtc_state->hw.pipe_mode.flags & DRM_MODE_FLAG_INTERLACE) return false; intel_atomic_crtc_state_for_each_plane_state(plane, plane_state, crtc_state) { @@ -4174,8 +4174,8 @@ skl_ddb_get_pipe_allocation_limits(struct drm_i915_private *dev_priv, */ total_slice_mask = dbuf_slice_mask; for_each_new_intel_crtc_in_state(intel_state, crtc, crtc_state, i) { - const struct drm_display_mode *adjusted_mode = - &crtc_state->hw.adjusted_mode; + const struct drm_display_mode *pipe_mode = + &crtc_state->hw.pipe_mode; enum pipe pipe = crtc->pipe; int hdisplay, vdisplay; u32 pipe_dbuf_slice_mask; @@ -4205,7 +4205,7 @@ skl_ddb_get_pipe_allocation_limits(struct drm_i915_private *dev_priv, if (dbuf_slice_mask != pipe_dbuf_slice_mask) continue; - drm_mode_get_hv_timing(adjusted_mode, &hdisplay, &vdisplay); + drm_mode_get_hv_timing(pipe_mode, &hdisplay, &vdisplay); total_width_in_range += hdisplay; @@ -5093,7 +5093,7 @@ intel_get_linetime_us(const struct intel_crtc_state *crtc_state) if (drm_WARN_ON(&dev_priv->drm, pixel_rate == 0)) return u32_to_fixed16(0); - crtc_htotal = crtc_state->hw.adjusted_mode.crtc_htotal; + crtc_htotal = crtc_state->hw.pipe_mode.crtc_htotal; linetime_us = div_fixed16(crtc_htotal * 1000, pixel_rate); return linetime_us; @@ -5282,14 +5282,14 @@ static void skl_compute_plane_wm(const struct intel_crtc_state *crtc_state, method1 = skl_wm_method1(dev_priv, wp->plane_pixel_rate, wp->cpp, latency, wp->dbuf_block_size); method2 = skl_wm_method2(wp->plane_pixel_rate, - crtc_state->hw.adjusted_mode.crtc_htotal, + crtc_state->hw.pipe_mode.crtc_htotal, latency, wp->plane_blocks_per_line); if (wp->y_tiled) { selected_result = max_fixed16(method2, wp->y_tile_minimum); } else { - if ((wp->cpp * crtc_state->hw.adjusted_mode.crtc_htotal / + if ((wp->cpp * crtc_state->hw.pipe_mode.crtc_htotal / wp->dbuf_block_size < 1) && (wp->plane_bytes_per_line / wp->dbuf_block_size < 1)) { selected_result = method2; -- 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] 18+ messages in thread
* [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Introduce crtc_state.hw.pipe_mode 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala ` (5 preceding siblings ...) 2020-11-12 19:17 ` [Intel-gfx] [PATCH 6/6] drm/i915: Add hw.pipe_mode to allow bigjoiner pipe/transcoder split Ville Syrjala @ 2020-11-12 23:45 ` Patchwork 2020-11-13 0:15 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2020-11-13 2:46 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork 8 siblings, 0 replies; 18+ messages in thread From: Patchwork @ 2020-11-12 23:45 UTC (permalink / raw) To: Ville Syrjala; +Cc: intel-gfx == Series Details == Series: drm/i915: Introduce crtc_state.hw.pipe_mode URL : https://patchwork.freedesktop.org/series/83780/ 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/gvt/mmio.c:290:23: warning: memcpy with byte count of 279040 +drivers/gpu/drm/i915/i915_perf.c:1440:15: warning: memset with byte count of 16777216 +drivers/gpu/drm/i915/i915_perf.c:1494:15: warning: memset with byte count of 16777216 +drivers/gpu/drm/i915/intel_wakeref.c:137:19: warning: context imbalance in 'wakeref_auto_timeout' - unexpected unlock +./include/linux/seqlock.h:838:24: warning: trying to copy expression type 31 +./include/linux/seqlock.h:838:24: warning: trying to copy expression type 31 +./include/linux/seqlock.h:864:16: warning: trying to copy expression type 31 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Introduce crtc_state.hw.pipe_mode 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala ` (6 preceding siblings ...) 2020-11-12 23:45 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Introduce crtc_state.hw.pipe_mode Patchwork @ 2020-11-13 0:15 ` Patchwork 2020-11-13 2:46 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork 8 siblings, 0 replies; 18+ messages in thread From: Patchwork @ 2020-11-13 0:15 UTC (permalink / raw) To: Ville Syrjala; +Cc: intel-gfx [-- Attachment #1.1: Type: text/plain, Size: 4330 bytes --] == Series Details == Series: drm/i915: Introduce crtc_state.hw.pipe_mode URL : https://patchwork.freedesktop.org/series/83780/ State : success == Summary == CI Bug Log - changes from CI_DRM_9318 -> Patchwork_18895 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/index.html New tests --------- New tests have been introduced between CI_DRM_9318 and Patchwork_18895: ### New CI tests (1) ### * boot: - Statuses : 40 pass(s) - Exec time: [0.0] s Known issues ------------ Here are the changes found in Patchwork_18895 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@i915_pm_rpm@basic-pci-d3-state: - fi-bsw-kefka: [PASS][1] -> [DMESG-WARN][2] ([i915#1982]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/fi-bsw-kefka/igt@i915_pm_rpm@basic-pci-d3-state.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/fi-bsw-kefka/igt@i915_pm_rpm@basic-pci-d3-state.html * igt@i915_pm_rpm@module-reload: - fi-byt-j1900: [PASS][3] -> [DMESG-WARN][4] ([i915#1982]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/fi-byt-j1900/igt@i915_pm_rpm@module-reload.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/fi-byt-j1900/igt@i915_pm_rpm@module-reload.html * igt@kms_chamelium@dp-crc-fast: - fi-kbl-7500u: [PASS][5] -> [DMESG-WARN][6] ([i915#1982]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy: - fi-icl-u2: [PASS][7] -> [DMESG-WARN][8] ([i915#1982]) +1 similar issue [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html #### Possible fixes #### * igt@core_hotunplug@unbind-rebind: - fi-icl-u2: [DMESG-WARN][9] ([i915#1982]) -> [PASS][10] +1 similar issue [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/fi-icl-u2/igt@core_hotunplug@unbind-rebind.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/fi-icl-u2/igt@core_hotunplug@unbind-rebind.html * igt@debugfs_test@read_all_entries: - {fi-kbl-7560u}: [INCOMPLETE][11] ([i915#2417]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/fi-kbl-7560u/igt@debugfs_test@read_all_entries.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/fi-kbl-7560u/igt@debugfs_test@read_all_entries.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2417]: https://gitlab.freedesktop.org/drm/intel/issues/2417 Participating hosts (46 -> 40) ------------------------------ Missing (6): fi-ilk-m540 fi-hsw-4200u fi-bsw-cyan fi-ctg-p8600 fi-tgl-y fi-bdw-samus Build changes ------------- * Linux: CI_DRM_9318 -> Patchwork_18895 CI-20190529: 20190529 CI_DRM_9318: f5a3bbb80f537996ecfaacb3593c0f2a290efe53 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5848: 1e2525da258aab5e0e3a7705ea8e89b521d5bf88 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_18895: dd0748ed19838d3f7eed623d1a1603f3535df4c6 @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == dd0748ed1983 drm/i915: Add hw.pipe_mode to allow bigjoiner pipe/transcoder split 3a4c38a29fd4 drm/i915: Introduce intel_crtc_readout_derived_state() 0e26d753eb5e drm/i915: s/intel_mode_from_pipe_config/intel_mode_from_crtc_timings/ 5e71b4304bf7 drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() f142f4b8aade drm/i915: Add a wrapper function around get_pipe_config 131daee89b68 drm/i915: Move encoder->get_config to a new function == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/index.html [-- Attachment #1.2: Type: text/html, Size: 5421 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] 18+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915: Introduce crtc_state.hw.pipe_mode 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala ` (7 preceding siblings ...) 2020-11-13 0:15 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork @ 2020-11-13 2:46 ` Patchwork 8 siblings, 0 replies; 18+ messages in thread From: Patchwork @ 2020-11-13 2:46 UTC (permalink / raw) To: Ville Syrjala; +Cc: intel-gfx [-- Attachment #1.1: Type: text/plain, Size: 22493 bytes --] == Series Details == Series: drm/i915: Introduce crtc_state.hw.pipe_mode URL : https://patchwork.freedesktop.org/series/83780/ State : failure == Summary == CI Bug Log - changes from CI_DRM_9318_full -> Patchwork_18895_full ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with Patchwork_18895_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_18895_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_18895_full: ### IGT changes ### #### Possible regressions #### * igt@perf_pmu@busy-no-semaphores@rcs0: - shard-snb: [PASS][1] -> [FAIL][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-snb2/igt@perf_pmu@busy-no-semaphores@rcs0.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-snb5/igt@perf_pmu@busy-no-semaphores@rcs0.html - shard-hsw: [PASS][3] -> [FAIL][4] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-hsw7/igt@perf_pmu@busy-no-semaphores@rcs0.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-hsw6/igt@perf_pmu@busy-no-semaphores@rcs0.html - shard-glk: [PASS][5] -> [FAIL][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-glk9/igt@perf_pmu@busy-no-semaphores@rcs0.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-glk1/igt@perf_pmu@busy-no-semaphores@rcs0.html ### Piglit changes ### #### Possible regressions #### * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-add-mat4x2-mat4x2 (NEW): - {pig-icl-1065g7}: NOTRUN -> [CRASH][7] +1 similar issue [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/pig-icl-1065g7/spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-add-mat4x2-mat4x2.html * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-assign-lshift-uvec3-ivec3 (NEW): - {pig-icl-1065g7}: NOTRUN -> [INCOMPLETE][8] +6 similar issues [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/pig-icl-1065g7/spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-assign-lshift-uvec3-ivec3.html New tests --------- New tests have been introduced between CI_DRM_9318_full and Patchwork_18895_full: ### New CI tests (1) ### * boot: - Statuses : 200 pass(s) - Exec time: [0.0] s ### New Piglit tests (9) ### * spec@arb_tessellation_shader@execution@built-in-functions@tcs-normalize-vec3: - Statuses : 1 incomplete(s) - Exec time: [0.0] s * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-add-mat4x2-mat4x2: - Statuses : 1 crash(s) - Exec time: [0.34] s * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-assign-div-vec3-float: - Statuses : 1 incomplete(s) - Exec time: [0.0] s * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-assign-lshift-uvec3-ivec3: - Statuses : 1 incomplete(s) - Exec time: [0.0] s * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-assign-mult-vec2-float: - Statuses : 1 crash(s) - Exec time: [0.33] s * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-div-uvec2-uint: - Statuses : 1 incomplete(s) - Exec time: [0.0] s * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-eq-bvec4-bvec4-using-if: - Statuses : 1 incomplete(s) - Exec time: [0.0] s * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-mult-mat3x2-mat3: - Statuses : 1 incomplete(s) - Exec time: [0.0] s * spec@arb_tessellation_shader@execution@built-in-functions@tcs-op-sub-mat4-mat4: - Statuses : 1 incomplete(s) - Exec time: [0.0] s Known issues ------------ Here are the changes found in Patchwork_18895_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_reloc@basic-gtt-noreloc: - shard-glk: [PASS][9] -> [DMESG-WARN][10] ([i915#1982]) +1 similar issue [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-glk9/igt@gem_exec_reloc@basic-gtt-noreloc.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-glk1/igt@gem_exec_reloc@basic-gtt-noreloc.html * igt@gem_exec_reloc@basic-many-active@rcs0: - shard-glk: [PASS][11] -> [FAIL][12] ([i915#2389]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-glk7/igt@gem_exec_reloc@basic-many-active@rcs0.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-glk6/igt@gem_exec_reloc@basic-many-active@rcs0.html * igt@gem_exec_whisper@basic-fds-priority: - shard-glk: [PASS][13] -> [DMESG-WARN][14] ([i915#118] / [i915#95]) +1 similar issue [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-glk1/igt@gem_exec_whisper@basic-fds-priority.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-glk2/igt@gem_exec_whisper@basic-fds-priority.html * igt@gen9_exec_parse@allowed-single: - shard-skl: [PASS][15] -> [DMESG-WARN][16] ([i915#1436] / [i915#716]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl7/igt@gen9_exec_parse@allowed-single.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl1/igt@gen9_exec_parse@allowed-single.html * igt@kms_cursor_crc@pipe-c-cursor-128x128-sliding: - shard-skl: [PASS][17] -> [FAIL][18] ([i915#54]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl9/igt@kms_cursor_crc@pipe-c-cursor-128x128-sliding.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl2/igt@kms_cursor_crc@pipe-c-cursor-128x128-sliding.html * igt@kms_cursor_edge_walk@pipe-a-128x128-top-edge: - shard-hsw: [PASS][19] -> [DMESG-WARN][20] ([i915#1982]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-hsw7/igt@kms_cursor_edge_walk@pipe-a-128x128-top-edge.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-hsw6/igt@kms_cursor_edge_walk@pipe-a-128x128-top-edge.html * igt@kms_flip@blocking-absolute-wf_vblank@a-dp1: - shard-apl: [PASS][21] -> [DMESG-WARN][22] ([i915#1635] / [i915#1982]) +1 similar issue [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-apl3/igt@kms_flip@blocking-absolute-wf_vblank@a-dp1.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-apl8/igt@kms_flip@blocking-absolute-wf_vblank@a-dp1.html * igt@kms_flip@dpms-vs-vblank-race@a-dp1: - shard-kbl: [PASS][23] -> [DMESG-WARN][24] ([i915#1982]) +2 similar issues [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-kbl3/igt@kms_flip@dpms-vs-vblank-race@a-dp1.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-kbl7/igt@kms_flip@dpms-vs-vblank-race@a-dp1.html * igt@kms_flip@flip-vs-suspend@b-dp1: - shard-kbl: [PASS][25] -> [DMESG-WARN][26] ([i915#180]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-kbl2/igt@kms_flip@flip-vs-suspend@b-dp1.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-kbl1/igt@kms_flip@flip-vs-suspend@b-dp1.html * igt@kms_flip@flip-vs-suspend@b-hdmi-a1: - shard-hsw: [PASS][27] -> [INCOMPLETE][28] ([i915#2055]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-hsw5/igt@kms_flip@flip-vs-suspend@b-hdmi-a1.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-hsw7/igt@kms_flip@flip-vs-suspend@b-hdmi-a1.html * igt@kms_flip@plain-flip-fb-recreate-interruptible@a-edp1: - shard-skl: [PASS][29] -> [FAIL][30] ([i915#2122]) [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl9/igt@kms_flip@plain-flip-fb-recreate-interruptible@a-edp1.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl2/igt@kms_flip@plain-flip-fb-recreate-interruptible@a-edp1.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-pwrite: - shard-skl: [PASS][31] -> [DMESG-WARN][32] ([i915#1982]) +7 similar issues [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl8/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-pwrite.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl5/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-pwrite.html * igt@kms_plane_alpha_blend@pipe-a-coverage-7efc: - shard-skl: [PASS][33] -> [FAIL][34] ([fdo#108145] / [i915#265]) [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl6/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl2/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html * igt@kms_psr@psr2_primary_page_flip: - shard-iclb: [PASS][35] -> [SKIP][36] ([fdo#109441]) +3 similar issues [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-iclb2/igt@kms_psr@psr2_primary_page_flip.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-iclb1/igt@kms_psr@psr2_primary_page_flip.html * igt@perf_pmu@module-unload: - shard-tglb: [PASS][37] -> [DMESG-WARN][38] ([i915#1982]) +2 similar issues [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-tglb3/igt@perf_pmu@module-unload.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-tglb6/igt@perf_pmu@module-unload.html #### Possible fixes #### * {igt@gem_exec_capture@pi@rcs0}: - shard-skl: [INCOMPLETE][39] ([i915#2369]) -> [PASS][40] [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl7/igt@gem_exec_capture@pi@rcs0.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl4/igt@gem_exec_capture@pi@rcs0.html * igt@i915_module_load@reload: - shard-hsw: [DMESG-WARN][41] ([i915#1982]) -> [PASS][42] +1 similar issue [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-hsw6/igt@i915_module_load@reload.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-hsw1/igt@i915_module_load@reload.html * igt@i915_pm_dc@dc6-psr: - shard-iclb: [FAIL][43] ([i915#454]) -> [PASS][44] [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-iclb4/igt@i915_pm_dc@dc6-psr.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-iclb5/igt@i915_pm_dc@dc6-psr.html * igt@i915_pm_rpm@system-suspend-modeset: - shard-skl: [INCOMPLETE][45] ([i915#151]) -> [PASS][46] [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl3/igt@i915_pm_rpm@system-suspend-modeset.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl10/igt@i915_pm_rpm@system-suspend-modeset.html * igt@kms_cursor_crc@pipe-b-cursor-256x256-sliding: - shard-skl: [FAIL][47] ([i915#54]) -> [PASS][48] +2 similar issues [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl10/igt@kms_cursor_crc@pipe-b-cursor-256x256-sliding.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl8/igt@kms_cursor_crc@pipe-b-cursor-256x256-sliding.html * igt@kms_cursor_legacy@cursor-vs-flip-toggle: - shard-hsw: [FAIL][49] ([i915#2370]) -> [PASS][50] [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-hsw6/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-hsw8/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size: - shard-skl: [FAIL][51] ([i915#2346]) -> [PASS][52] [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl10/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl8/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html * igt@kms_draw_crc@draw-method-rgb565-blt-untiled: - shard-apl: [DMESG-WARN][53] ([i915#1635] / [i915#1982]) -> [PASS][54] +2 similar issues [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-apl3/igt@kms_draw_crc@draw-method-rgb565-blt-untiled.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-apl8/igt@kms_draw_crc@draw-method-rgb565-blt-untiled.html * igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled: - shard-kbl: [DMESG-WARN][55] ([i915#1982]) -> [PASS][56] [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-kbl4/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-kbl6/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled.html * igt@kms_fbcon_fbt@psr-suspend: - shard-skl: [DMESG-WARN][57] ([i915#1982]) -> [PASS][58] +1 similar issue [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl4/igt@kms_fbcon_fbt@psr-suspend.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl9/igt@kms_fbcon_fbt@psr-suspend.html * igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-hdmi-a1: - shard-glk: [FAIL][59] ([i915#2122]) -> [PASS][60] [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-glk5/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-hdmi-a1.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-glk7/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-hdmi-a1.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1: - shard-tglb: [FAIL][61] ([i915#2598]) -> [PASS][62] [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-tglb3/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-tglb6/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html * igt@kms_flip@flip-vs-suspend@a-edp1: - shard-skl: [INCOMPLETE][63] ([i915#198]) -> [PASS][64] [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl2/igt@kms_flip@flip-vs-suspend@a-edp1.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl6/igt@kms_flip@flip-vs-suspend@a-edp1.html * igt@kms_flip@plain-flip-fb-recreate@c-edp1: - shard-skl: [FAIL][65] ([i915#2122]) -> [PASS][66] [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl6/igt@kms_flip@plain-flip-fb-recreate@c-edp1.html [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl2/igt@kms_flip@plain-flip-fb-recreate@c-edp1.html * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render: - shard-glk: [DMESG-WARN][67] ([i915#1982]) -> [PASS][68] +1 similar issue [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-glk9/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render.html [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-glk1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render.html * igt@kms_frontbuffer_tracking@psr-rgb565-draw-pwrite: - shard-tglb: [DMESG-WARN][69] ([i915#1982]) -> [PASS][70] +1 similar issue [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-tglb5/igt@kms_frontbuffer_tracking@psr-rgb565-draw-pwrite.html [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-tglb1/igt@kms_frontbuffer_tracking@psr-rgb565-draw-pwrite.html * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c: - shard-kbl: [DMESG-WARN][71] ([i915#180]) -> [PASS][72] [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-kbl6/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c.html [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-kbl2/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes: - shard-iclb: [INCOMPLETE][73] ([i915#1185] / [i915#250]) -> [PASS][74] [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-iclb3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-iclb7/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc: - shard-skl: [FAIL][75] ([fdo#108145] / [i915#265]) -> [PASS][76] +1 similar issue [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl7/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html * igt@kms_psr@psr2_cursor_mmap_cpu: - shard-iclb: [SKIP][77] ([fdo#109441]) -> [PASS][78] [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-iclb5/igt@kms_psr@psr2_cursor_mmap_cpu.html [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_cpu.html * igt@sysfs_heartbeat_interval@mixed@bcs0: - shard-skl: [FAIL][79] ([i915#1731]) -> [PASS][80] [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl5/igt@sysfs_heartbeat_interval@mixed@bcs0.html [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl10/igt@sysfs_heartbeat_interval@mixed@bcs0.html * igt@sysfs_preempt_timeout@timeout@rcs0: - shard-skl: [FAIL][81] ([i915#2060]) -> [PASS][82] [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl10/igt@sysfs_preempt_timeout@timeout@rcs0.html [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl8/igt@sysfs_preempt_timeout@timeout@rcs0.html #### Warnings #### * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1: - shard-skl: [DMESG-FAIL][83] ([i915#1982] / [i915#79]) -> [DMESG-WARN][84] ([i915#1982]) [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl10/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html [84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html * igt@perf@polling-parameterized: - shard-skl: [FAIL][85] ([i915#1542]) -> [DMESG-WARN][86] ([i915#1982]) [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl10/igt@perf@polling-parameterized.html [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl2/igt@perf@polling-parameterized.html * igt@runner@aborted: - shard-skl: ([FAIL][87], [FAIL][88]) ([i915#1611] / [i915#2439] / [i915#483]) -> ([FAIL][89], [FAIL][90]) ([i915#1436] / [i915#1611] / [i915#2439]) [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl7/igt@runner@aborted.html [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9318/shard-skl3/igt@runner@aborted.html [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl1/igt@runner@aborted.html [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18895/shard-skl1/igt@runner@aborted.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 [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118 [i915#1185]: https://gitlab.freedesktop.org/drm/intel/issues/1185 [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436 [i915#151]: https://gitlab.freedesktop.org/drm/intel/issues/151 [i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542 [i915#1611]: https://gitlab.freedesktop.org/drm/intel/issues/1611 [i915#1635]: https://gitlab.freedesktop.org/drm/intel/issues/1635 [i915#1731]: https://gitlab.freedesktop.org/drm/intel/issues/1731 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#198]: https://gitlab.freedesktop.org/drm/intel/issues/198 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2055]: https://gitlab.freedesktop.org/drm/intel/issues/2055 [i915#2060]: https://gitlab.freedesktop.org/drm/intel/issues/2060 [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122 [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346 [i915#2369]: https://gitlab.freedesktop.org/drm/intel/issues/2369 [i915#2370]: https://gitlab.freedesktop.org/drm/intel/issues/2370 [i915#2389]: https://gitlab.freedesktop.org/drm/intel/issues/2389 [i915#2439]: https://gitlab.freedesktop.org/drm/intel/issues/2439 [i915#250]: https://gitlab.freedesktop.org/drm/intel/issues/250 [i915#2521]: https://gitlab.freedesktop.org/drm/intel/issues/2521 [i915#2598]: https://gitlab.freedesktop.org/drm/intel/issues/2598 [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#483]: https://gitlab.freedesktop.org/drm/intel/issues/483 [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54 [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716 [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_9318 -> Patchwork_18895 CI-20190529: 20190529 CI_DRM_9318: f5a3bbb80f537996ecfaacb3593c0f2a290efe53 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5848: 1e2525da258aab5e0e3a7705ea8e89b521d5bf88 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_18895: dd0748ed19838d3f7eed623d1a1603f3535df4c6 @ 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_18895/index.html [-- Attachment #1.2: Type: text/html, Size: 26134 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] 18+ messages in thread
end of thread, other threads:[~2020-11-13 14:27 UTC | newest] Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-11-12 19:17 [Intel-gfx] [PATCH 0/6] drm/i915: Introduce crtc_state.hw.pipe_mode Ville Syrjala 2020-11-12 19:17 ` [Intel-gfx] [PATCH 1/6] drm/i915: Move encoder->get_config to a new function Ville Syrjala 2020-11-12 19:45 ` Navare, Manasi 2020-11-13 8:56 ` Manna, Animesh 2020-11-12 19:17 ` [Intel-gfx] [PATCH 2/6] drm/i915: Add a wrapper function around get_pipe_config Ville Syrjala 2020-11-12 19:46 ` Navare, Manasi 2020-11-13 8:58 ` Manna, Animesh 2020-11-12 19:17 ` [Intel-gfx] [PATCH 3/6] drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config() Ville Syrjala 2020-11-12 19:48 ` Navare, Manasi 2020-11-13 14:27 ` Ville Syrjälä 2020-11-12 19:17 ` [Intel-gfx] [PATCH 4/6] drm/i915: s/intel_mode_from_pipe_config/intel_mode_from_crtc_timings/ Ville Syrjala 2020-11-12 19:49 ` Navare, Manasi 2020-11-12 19:17 ` [Intel-gfx] [PATCH 5/6] drm/i915: Introduce intel_crtc_readout_derived_state() Ville Syrjala 2020-11-12 19:49 ` Navare, Manasi 2020-11-12 19:17 ` [Intel-gfx] [PATCH 6/6] drm/i915: Add hw.pipe_mode to allow bigjoiner pipe/transcoder split Ville Syrjala 2020-11-12 23:45 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Introduce crtc_state.hw.pipe_mode Patchwork 2020-11-13 0:15 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2020-11-13 2:46 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.