diff mbox series

drm/i915: Disable runtime power management during shutdown

Message ID 20210127181909.128094-1-imre.deak@intel.com (mailing list archive)
State New, archived
Headers show
Series drm/i915: Disable runtime power management during shutdown | expand

Commit Message

Imre Deak Jan. 27, 2021, 6:19 p.m. UTC
At least on some TGL platforms PUNIT wants to access some display HW
registers, but it doesn't handle display power managment (disabling DC
states as required) and so this register access will lead to a hang. To
prevent this disable runtime power management for poweroff and reboot.

Reported-and-tested-by: Khaled Almahallawy <khaled.almahallawy@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
---
 drivers/gpu/drm/i915/i915_drv.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Almahallawy, Khaled Jan. 27, 2021, 9:14 p.m. UTC | #1
On Wed, 2021-01-27 at 20:19 +0200, Imre Deak wrote:
> At least on some TGL platforms PUNIT wants to access some display HW
> registers, but it doesn't handle display power managment (disabling
> DC
> states as required) and so this register access will lead to a hang.
> To
> prevent this disable runtime power management for poweroff and
> reboot.
> 
> Reported-and-tested-by: Khaled Almahallawy <
> khaled.almahallawy@intel.com>
> Signed-off-by: Imre Deak <imre.deak@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_drv.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/i915_drv.c
> b/drivers/gpu/drm/i915/i915_drv.c
> index 0037b81d991e..6f83cca8e27b 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -1054,6 +1054,8 @@ static void intel_shutdown_encoders(struct
> drm_i915_private *dev_priv)
>  void i915_driver_shutdown(struct drm_i915_private *i915)
>  {
>  	disable_rpm_wakeref_asserts(&i915->runtime_pm);
> +	intel_runtime_pm_disable(&i915->runtime_pm);
> +	intel_power_domains_disable(i915);
>  
>  	i915_gem_suspend(i915);
>  
> @@ -1069,7 +1071,10 @@ void i915_driver_shutdown(struct
> drm_i915_private *i915)
>  	intel_suspend_encoders(i915);
>  	intel_shutdown_encoders(i915);
>  
> +	intel_power_domains_driver_remove(i915);
>  	enable_rpm_wakeref_asserts(&i915->runtime_pm);
> +
> +	intel_runtime_pm_driver_release(&i915->runtime_pm);
>  }
>  
>  static bool suspend_to_idle(struct drm_i915_private *dev_priv)

Reviewed-by: Khaled Almahallawy <khaled.almahallawy@intel.com>
Imre Deak Jan. 28, 2021, 7:13 p.m. UTC | #2
On Wed, Jan 27, 2021 at 08:19:09PM +0200, Imre Deak wrote:
> At least on some TGL platforms PUNIT wants to access some display HW
> registers, but it doesn't handle display power managment (disabling DC
> states as required) and so this register access will lead to a hang. To
> prevent this disable runtime power management for poweroff and reboot.
> 
> Reported-and-tested-by: Khaled Almahallawy <khaled.almahallawy@intel.com>
> Signed-off-by: Imre Deak <imre.deak@intel.com>

Chris or Ville, could you ack if you see no problem with this?

> ---
>  drivers/gpu/drm/i915/i915_drv.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index 0037b81d991e..6f83cca8e27b 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -1054,6 +1054,8 @@ static void intel_shutdown_encoders(struct drm_i915_private *dev_priv)
>  void i915_driver_shutdown(struct drm_i915_private *i915)
>  {
>  	disable_rpm_wakeref_asserts(&i915->runtime_pm);
> +	intel_runtime_pm_disable(&i915->runtime_pm);
> +	intel_power_domains_disable(i915);
>  
>  	i915_gem_suspend(i915);
>  
> @@ -1069,7 +1071,10 @@ void i915_driver_shutdown(struct drm_i915_private *i915)
>  	intel_suspend_encoders(i915);
>  	intel_shutdown_encoders(i915);
>  
> +	intel_power_domains_driver_remove(i915);
>  	enable_rpm_wakeref_asserts(&i915->runtime_pm);
> +
> +	intel_runtime_pm_driver_release(&i915->runtime_pm);
>  }
>  
>  static bool suspend_to_idle(struct drm_i915_private *dev_priv)
> -- 
> 2.25.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Ville Syrjälä Feb. 3, 2021, 11:40 a.m. UTC | #3
On Thu, Jan 28, 2021 at 09:13:49PM +0200, Imre Deak wrote:
> On Wed, Jan 27, 2021 at 08:19:09PM +0200, Imre Deak wrote:
> > At least on some TGL platforms PUNIT wants to access some display HW
> > registers, but it doesn't handle display power managment (disabling DC
> > states as required) and so this register access will lead to a hang. To
> > prevent this disable runtime power management for poweroff and reboot.
> > 
> > Reported-and-tested-by: Khaled Almahallawy <khaled.almahallawy@intel.com>
> > Signed-off-by: Imre Deak <imre.deak@intel.com>
> 
> Chris or Ville, could you ack if you see no problem with this?

Looks consistent enough with the other paths.

I guess we're now powering on pretty much everything before
reboot shutdown due to the INIT domain? Hopefully no harm in
that.

Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

> > ---
> >  drivers/gpu/drm/i915/i915_drv.c | 5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> > index 0037b81d991e..6f83cca8e27b 100644
> > --- a/drivers/gpu/drm/i915/i915_drv.c
> > +++ b/drivers/gpu/drm/i915/i915_drv.c
> > @@ -1054,6 +1054,8 @@ static void intel_shutdown_encoders(struct drm_i915_private *dev_priv)
> >  void i915_driver_shutdown(struct drm_i915_private *i915)
> >  {
> >  	disable_rpm_wakeref_asserts(&i915->runtime_pm);
> > +	intel_runtime_pm_disable(&i915->runtime_pm);
> > +	intel_power_domains_disable(i915);
> >  
> >  	i915_gem_suspend(i915);
> >  
> > @@ -1069,7 +1071,10 @@ void i915_driver_shutdown(struct drm_i915_private *i915)
> >  	intel_suspend_encoders(i915);
> >  	intel_shutdown_encoders(i915);
> >  
> > +	intel_power_domains_driver_remove(i915);
> >  	enable_rpm_wakeref_asserts(&i915->runtime_pm);
> > +
> > +	intel_runtime_pm_driver_release(&i915->runtime_pm);
> >  }
> >  
> >  static bool suspend_to_idle(struct drm_i915_private *dev_priv)
> > -- 
> > 2.25.1
> > 
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Imre Deak Feb. 3, 2021, 3:39 p.m. UTC | #4
On Wed, Feb 03, 2021 at 01:40:05PM +0200, Ville Syrjälä wrote:
> On Thu, Jan 28, 2021 at 09:13:49PM +0200, Imre Deak wrote:
> > On Wed, Jan 27, 2021 at 08:19:09PM +0200, Imre Deak wrote:
> > > At least on some TGL platforms PUNIT wants to access some display HW
> > > registers, but it doesn't handle display power managment (disabling DC
> > > states as required) and so this register access will lead to a hang. To
> > > prevent this disable runtime power management for poweroff and reboot.
> > > 
> > > Reported-and-tested-by: Khaled Almahallawy <khaled.almahallawy@intel.com>
> > > Signed-off-by: Imre Deak <imre.deak@intel.com>
> > 
> > Chris or Ville, could you ack if you see no problem with this?
> 
> Looks consistent enough with the other paths.
> 
> I guess we're now powering on pretty much everything before
> reboot shutdown due to the INIT domain?

Yes all, except for GLK+ DDI_IO and ICL+ AUX since the enabling of those
has a restriction wrt. other modeset sequence steps.

> Hopefully no harm in that.

The only requirement is to disable DC states and all/most power wells
should be eventually removed from the INIT domain. For now I wanted to
get this sequence closer to the module reload one. I can add a code
comment about these details.

> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> > > ---
> > >  drivers/gpu/drm/i915/i915_drv.c | 5 +++++
> > >  1 file changed, 5 insertions(+)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> > > index 0037b81d991e..6f83cca8e27b 100644
> > > --- a/drivers/gpu/drm/i915/i915_drv.c
> > > +++ b/drivers/gpu/drm/i915/i915_drv.c
> > > @@ -1054,6 +1054,8 @@ static void intel_shutdown_encoders(struct drm_i915_private *dev_priv)
> > >  void i915_driver_shutdown(struct drm_i915_private *i915)
> > >  {
> > >  	disable_rpm_wakeref_asserts(&i915->runtime_pm);
> > > +	intel_runtime_pm_disable(&i915->runtime_pm);
> > > +	intel_power_domains_disable(i915);
> > >  
> > >  	i915_gem_suspend(i915);
> > >  
> > > @@ -1069,7 +1071,10 @@ void i915_driver_shutdown(struct drm_i915_private *i915)
> > >  	intel_suspend_encoders(i915);
> > >  	intel_shutdown_encoders(i915);
> > >  
> > > +	intel_power_domains_driver_remove(i915);
> > >  	enable_rpm_wakeref_asserts(&i915->runtime_pm);
> > > +
> > > +	intel_runtime_pm_driver_release(&i915->runtime_pm);
> > >  }
> > >  
> > >  static bool suspend_to_idle(struct drm_i915_private *dev_priv)
> > > -- 
> > > 2.25.1
> > > 
> > > _______________________________________________
> > > Intel-gfx mailing list
> > > Intel-gfx@lists.freedesktop.org
> > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
> 
> -- 
> Ville Syrjälä
> Intel
Imre Deak Feb. 4, 2021, 6:23 p.m. UTC | #5
On Thu, Jan 28, 2021 at 12:31:38AM +0000, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915: Disable runtime power management during shutdown
> URL   : https://patchwork.freedesktop.org/series/86362/
> State : success

Thanks for the review, pushed to -din with a code comment addition.

> 
> == Summary ==
> 
> CI Bug Log - changes from CI_DRM_9688_full -> Patchwork_19524_full
> ====================================================
> 
> Summary
> -------
> 
>   **SUCCESS**
> 
>   No regressions found.
> 
>   
> 
> Known issues
> ------------
> 
>   Here are the changes found in Patchwork_19524_full that come from known issues:
> 
> ### IGT changes ###
> 
> #### Issues hit ####
> 
>   * igt@gem_ctx_persistence@close-replace-race:
>     - shard-glk:          [PASS][1] -> [TIMEOUT][2] ([i915#2918])
>    [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-glk6/igt@gem_ctx_persistence@close-replace-race.html
>    [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-glk7/igt@gem_ctx_persistence@close-replace-race.html
> 
>   * igt@gem_exec_fair@basic-deadline:
>     - shard-tglb:         [PASS][3] -> [FAIL][4] ([i915#2846])
>    [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-tglb5/igt@gem_exec_fair@basic-deadline.html
>    [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-tglb6/igt@gem_exec_fair@basic-deadline.html
>     - shard-glk:          [PASS][5] -> [FAIL][6] ([i915#2846])
>    [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-glk7/igt@gem_exec_fair@basic-deadline.html
>    [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-glk1/igt@gem_exec_fair@basic-deadline.html
> 
>   * igt@gem_exec_fair@basic-none-solo@rcs0:
>     - shard-apl:          [PASS][7] -> [FAIL][8] ([i915#2842])
>    [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-apl7/igt@gem_exec_fair@basic-none-solo@rcs0.html
>    [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-apl4/igt@gem_exec_fair@basic-none-solo@rcs0.html
> 
>   * igt@gem_exec_fair@basic-pace-share@rcs0:
>     - shard-tglb:         [PASS][9] -> [FAIL][10] ([i915#2842]) +1 similar issue
>    [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-tglb8/igt@gem_exec_fair@basic-pace-share@rcs0.html
>    [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-tglb2/igt@gem_exec_fair@basic-pace-share@rcs0.html
> 
>   * igt@gem_exec_fair@basic-throttle@rcs0:
>     - shard-glk:          [PASS][11] -> [FAIL][12] ([i915#2842])
>    [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-glk6/igt@gem_exec_fair@basic-throttle@rcs0.html
>    [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-glk7/igt@gem_exec_fair@basic-throttle@rcs0.html
>     - shard-iclb:         [PASS][13] -> [FAIL][14] ([i915#2849])
>    [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb4/igt@gem_exec_fair@basic-throttle@rcs0.html
>    [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb2/igt@gem_exec_fair@basic-throttle@rcs0.html
> 
>   * igt@gem_exec_params@no-vebox:
>     - shard-iclb:         NOTRUN -> [SKIP][15] ([fdo#109283])
>    [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb7/igt@gem_exec_params@no-vebox.html
> 
>   * igt@gen7_exec_parse@basic-allowed:
>     - shard-skl:          NOTRUN -> [SKIP][16] ([fdo#109271]) +9 similar issues
>    [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl8/igt@gen7_exec_parse@basic-allowed.html
> 
>   * igt@i915_pm_dc@dc6-psr:
>     - shard-iclb:         [PASS][17] -> [FAIL][18] ([i915#454])
>    [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb5/igt@i915_pm_dc@dc6-psr.html
>    [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb2/igt@i915_pm_dc@dc6-psr.html
> 
>   * igt@i915_pm_rpm@system-suspend-modeset:
>     - shard-kbl:          [PASS][19] -> [INCOMPLETE][20] ([i915#151])
>    [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-kbl7/igt@i915_pm_rpm@system-suspend-modeset.html
>    [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-kbl3/igt@i915_pm_rpm@system-suspend-modeset.html
> 
>   * igt@kms_chamelium@hdmi-cmp-planar-formats:
>     - shard-glk:          NOTRUN -> [SKIP][21] ([fdo#109271] / [fdo#111827]) +1 similar issue
>    [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-glk1/igt@kms_chamelium@hdmi-cmp-planar-formats.html
> 
>   * igt@kms_color_chamelium@pipe-invalid-ctm-matrix-sizes:
>     - shard-skl:          NOTRUN -> [SKIP][22] ([fdo#109271] / [fdo#111827]) +2 similar issues
>    [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl8/igt@kms_color_chamelium@pipe-invalid-ctm-matrix-sizes.html
> 
>   * igt@kms_cursor_crc@pipe-a-cursor-256x85-onscreen:
>     - shard-skl:          [PASS][23] -> [FAIL][24] ([i915#54]) +9 similar issues
>    [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl9/igt@kms_cursor_crc@pipe-a-cursor-256x85-onscreen.html
>    [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl2/igt@kms_cursor_crc@pipe-a-cursor-256x85-onscreen.html
> 
>   * igt@kms_cursor_crc@pipe-b-cursor-suspend:
>     - shard-skl:          [PASS][25] -> [INCOMPLETE][26] ([i915#2405] / [i915#300])
>    [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl7/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
>    [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl2/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
> 
>   * igt@kms_cursor_crc@pipe-d-cursor-128x42-random:
>     - shard-glk:          NOTRUN -> [SKIP][27] ([fdo#109271]) +3 similar issues
>    [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-glk1/igt@kms_cursor_crc@pipe-d-cursor-128x42-random.html
> 
>   * igt@kms_cursor_legacy@cursor-vs-flip-toggle:
>     - shard-hsw:          [PASS][28] -> [FAIL][29] ([i915#2370])
>    [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-hsw4/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html
>    [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-hsw1/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html
> 
>   * igt@kms_draw_crc@draw-method-xrgb2101010-blt-xtiled:
>     - shard-skl:          [PASS][30] -> [FAIL][31] ([i915#52] / [i915#54])
>    [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl7/igt@kms_draw_crc@draw-method-xrgb2101010-blt-xtiled.html
>    [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl2/igt@kms_draw_crc@draw-method-xrgb2101010-blt-xtiled.html
> 
>   * igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-untiled:
>     - shard-skl:          [PASS][32] -> [FAIL][33] ([i915#177] / [i915#52] / [i915#54])
>    [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl4/igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-untiled.html
>    [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl2/igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-untiled.html
> 
>   * igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1:
>     - shard-skl:          [PASS][34] -> [FAIL][35] ([i915#2122]) +1 similar issue
>    [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl8/igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1.html
>    [35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl8/igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1.html
> 
>   * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-msflip-blt:
>     - shard-iclb:         NOTRUN -> [SKIP][36] ([fdo#109280]) +1 similar issue
>    [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-msflip-blt.html
> 
>   * igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-render:
>     - shard-skl:          [PASS][37] -> [DMESG-WARN][38] ([i915#1982])
>    [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl2/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-render.html
>    [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-render.html
> 
>   * igt@kms_plane_alpha_blend@pipe-a-alpha-7efc:
>     - shard-skl:          NOTRUN -> [FAIL][39] ([fdo#108145] / [i915#265])
>    [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl8/igt@kms_plane_alpha_blend@pipe-a-alpha-7efc.html
> 
>   * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
>     - shard-skl:          [PASS][40] -> [FAIL][41] ([fdo#108145] / [i915#265]) +1 similar issue
>    [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl7/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
>    [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl5/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
> 
>   * igt@kms_psr@psr2_basic:
>     - shard-iclb:         [PASS][42] -> [SKIP][43] ([fdo#109441]) +4 similar issues
>    [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb2/igt@kms_psr@psr2_basic.html
>    [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb5/igt@kms_psr@psr2_basic.html
> 
>   * igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend:
>     - shard-skl:          [PASS][44] -> [INCOMPLETE][45] ([i915#198])
>    [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl5/igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend.html
>    [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl7/igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend.html
> 
>   
> #### Possible fixes ####
> 
>   * igt@gem_exec_fair@basic-deadline:
>     - shard-kbl:          [FAIL][46] ([i915#2846]) -> [PASS][47]
>    [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-kbl4/igt@gem_exec_fair@basic-deadline.html
>    [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-kbl3/igt@gem_exec_fair@basic-deadline.html
> 
>   * igt@gem_exec_fair@basic-none@vcs0:
>     - shard-kbl:          [FAIL][48] ([i915#2842]) -> [PASS][49]
>    [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-kbl7/igt@gem_exec_fair@basic-none@vcs0.html
>    [49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-kbl3/igt@gem_exec_fair@basic-none@vcs0.html
> 
>   * igt@gem_exec_fair@basic-pace-solo@rcs0:
>     - shard-glk:          [FAIL][50] ([i915#2842]) -> [PASS][51] +2 similar issues
>    [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-glk9/igt@gem_exec_fair@basic-pace-solo@rcs0.html
>    [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-glk8/igt@gem_exec_fair@basic-pace-solo@rcs0.html
> 
>   * igt@gem_shrink@reclaim:
>     - shard-iclb:         [INCOMPLETE][52] -> [PASS][53]
>    [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb4/igt@gem_shrink@reclaim.html
>    [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb7/igt@gem_shrink@reclaim.html
> 
>   * igt@gen9_exec_parse@allowed-all:
>     - shard-glk:          [DMESG-WARN][54] ([i915#1436] / [i915#716]) -> [PASS][55]
>    [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-glk7/igt@gen9_exec_parse@allowed-all.html
>    [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-glk1/igt@gen9_exec_parse@allowed-all.html
> 
>   * igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding:
>     - shard-skl:          [FAIL][56] ([i915#54]) -> [PASS][57] +4 similar issues
>    [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl1/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html
>    [57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl6/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html
> 
>   * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy:
>     - shard-hsw:          [FAIL][58] ([i915#96]) -> [PASS][59]
>    [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-hsw1/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy.html
>    [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-hsw2/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy.html
> 
>   * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
>     - shard-tglb:         [FAIL][60] ([i915#2346]) -> [PASS][61]
>    [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-tglb6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
>    [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-tglb5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
> 
>   * igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-ytiled:
>     - shard-skl:          [DMESG-WARN][62] ([i915#1982]) -> [PASS][63] +1 similar issue
>    [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl4/igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-ytiled.html
>    [63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl5/igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-ytiled.html
> 
>   * igt@kms_flip@flip-vs-expired-vblank@a-edp1:
>     - shard-tglb:         [FAIL][64] ([i915#2598]) -> [PASS][65]
>    [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-tglb6/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
>    [65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-tglb6/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
> 
>   * igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1:
>     - shard-skl:          [FAIL][66] ([i915#2122]) -> [PASS][67]
>    [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl8/igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1.html
>    [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl8/igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1.html
> 
>   * igt@kms_hdr@bpc-switch-dpms:
>     - shard-skl:          [FAIL][68] ([i915#1188]) -> [PASS][69]
>    [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl5/igt@kms_hdr@bpc-switch-dpms.html
>    [69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl1/igt@kms_hdr@bpc-switch-dpms.html
> 
>   * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc:
>     - shard-skl:          [FAIL][70] ([fdo#108145] / [i915#265]) -> [PASS][71]
>    [70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl8/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
>    [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl3/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
> 
>   * igt@kms_psr@psr2_no_drrs:
>     - shard-iclb:         [SKIP][72] ([fdo#109441]) -> [PASS][73] +2 similar issues
>    [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb5/igt@kms_psr@psr2_no_drrs.html
>    [73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb2/igt@kms_psr@psr2_no_drrs.html
> 
>   * {igt@sysfs_clients@busy@bcs0}:
>     - shard-skl:          [FAIL][74] -> [PASS][75]
>    [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-skl6/igt@sysfs_clients@busy@bcs0.html
>    [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-skl1/igt@sysfs_clients@busy@bcs0.html
> 
>   
> #### Warnings ####
> 
>   * igt@i915_pm_rc6_residency@rc6-fence:
>     - shard-iclb:         [WARN][76] ([i915#1804] / [i915#2684]) -> [WARN][77] ([i915#2681] / [i915#2684])
>    [76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb4/igt@i915_pm_rc6_residency@rc6-fence.html
>    [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb8/igt@i915_pm_rc6_residency@rc6-fence.html
> 
>   * igt@i915_pm_rc6_residency@rc6-idle:
>     - shard-iclb:         [WARN][78] ([i915#2684]) -> [WARN][79] ([i915#2681] / [i915#2684])
>    [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb5/igt@i915_pm_rc6_residency@rc6-idle.html
>    [79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb1/igt@i915_pm_rc6_residency@rc6-idle.html
> 
>   * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4:
>     - shard-iclb:         [SKIP][80] ([i915#2920]) -> [SKIP][81] ([i915#658]) +2 similar issues
>    [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb2/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4.html
>    [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb5/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4.html
> 
>   * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3:
>     - shard-iclb:         [SKIP][82] ([i915#658]) -> [SKIP][83] ([i915#2920]) +1 similar issue
>    [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-iclb4/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3.html
>    [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-iclb2/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3.html
> 
>   * igt@runner@aborted:
>     - shard-kbl:          ([FAIL][84], [FAIL][85], [FAIL][86]) ([i915#2295] / [i915#2505]) -> ([FAIL][87], [FAIL][88], [FAIL][89]) ([i915#2295])
>    [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-kbl6/igt@runner@aborted.html
>    [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-kbl1/igt@runner@aborted.html
>    [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9688/shard-kbl6/igt@runner@aborted.html
>    [87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-kbl1/igt@runner@aborted.html
>    [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-kbl7/igt@runner@aborted.html
>    [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19524/shard-kbl4/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#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
>   [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
>   [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
>   [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
>   [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
>   [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
>   [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436
>   [i915#151]: https://gitlab.freedesktop.org/drm/intel/issues/151
>   [i915#177]: https://gitlab.freedesktop.org/drm/intel/issues/177
>   [i915#1804]: https://gitlab.freedesktop.org/drm/intel/issues/1804
>   [i915#198]: https://gitlab.freedesktop.org/drm/intel/issues/198
>   [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
>   [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
>   [i915#2295]: https://gitlab.freedesktop.org/drm/intel/issues/2295
>   [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
>   [i915#2370]: https://gitlab.freedesktop.org/drm/intel/issues/2370
>   [i915#2405]: https://gitlab.freedesktop.org/drm/intel/issues/2405
>   [i915#2505]: https://gitlab.freedesktop.org/drm/intel/issues/2505
>   [i915#2598]: https://gitlab.freedesktop.org/drm/intel/issues/2598
>   [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
>   [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
>   [i915#2684]: https://gitlab.freedesktop.org/drm/intel/issues/2684
>   [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
>   [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
>   [i915#2849]: https://gitlab.freedesktop.org/drm/intel/issues/2849
>   [i915#2918]: https://gitlab.freedesktop.org/drm/intel/issues/2918
>   [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
>   [i915#300]: https://gitlab.freedesktop.org/drm/intel/issues/300
>   [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
>   [i915#52]: https://gitlab.freedesktop.org/drm/intel/issues/52
>   [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
>   [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
>   [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
>   [i915#96]: https://gitlab.freedesktop.org/drm/intel/issues/96
> 
> 
> Participating hosts (10 -> 10)
> ------------------------------
> 
>   No changes in participating hosts
> 
> 
> Build changes
> -------------
> 
>   * Linux: CI_DRM_9688 -> Patchwork_19524
> 
>   CI-20190529: 20190529
>   CI_DRM_9688: 43295c2b7bc37446a480bb5d42b03675baed171a @ git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_5974: a85398dcae50930c0e27548cf8c9575ad0bf69d1 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>   Patchwork_19524: 207a500f0a86f5a8bc5ceff6b57a86f07f606cbe @ 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_19524/index.html
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 0037b81d991e..6f83cca8e27b 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -1054,6 +1054,8 @@  static void intel_shutdown_encoders(struct drm_i915_private *dev_priv)
 void i915_driver_shutdown(struct drm_i915_private *i915)
 {
 	disable_rpm_wakeref_asserts(&i915->runtime_pm);
+	intel_runtime_pm_disable(&i915->runtime_pm);
+	intel_power_domains_disable(i915);
 
 	i915_gem_suspend(i915);
 
@@ -1069,7 +1071,10 @@  void i915_driver_shutdown(struct drm_i915_private *i915)
 	intel_suspend_encoders(i915);
 	intel_shutdown_encoders(i915);
 
+	intel_power_domains_driver_remove(i915);
 	enable_rpm_wakeref_asserts(&i915->runtime_pm);
+
+	intel_runtime_pm_driver_release(&i915->runtime_pm);
 }
 
 static bool suspend_to_idle(struct drm_i915_private *dev_priv)