Skip to content

Commit 0fbe02b

Browse files
committed
drm/i915: Keep display IRQs enabled for encoder suspend/shutdown
Signed-off-by: Imre Deak <imre.deak@intel.com>
1 parent 91b1453 commit 0fbe02b

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

drivers/gpu/drm/i915/i915_driver.c

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -986,7 +986,8 @@ void i915_driver_shutdown(struct drm_i915_private *i915)
986986

987987
intel_dp_mst_suspend(display);
988988

989-
intel_irq_suspend(i915);
989+
intel_encoder_block_all_hpds(display);
990+
990991
intel_hpd_cancel_work(display);
991992

992993
if (HAS_DISPLAY(i915))
@@ -995,6 +996,8 @@ void i915_driver_shutdown(struct drm_i915_private *i915)
995996
intel_encoder_suspend_all(display);
996997
intel_encoder_shutdown_all(display);
997998

999+
intel_irq_suspend(i915);
1000+
9981001
intel_dmc_suspend(display);
9991002

10001003
i915_gem_suspend(i915);
@@ -1069,14 +1072,17 @@ static int i915_drm_suspend(struct drm_device *dev)
10691072

10701073
intel_display_driver_suspend(display);
10711074

1072-
intel_irq_suspend(dev_priv);
1075+
intel_encoder_block_all_hpds(display);
1076+
10731077
intel_hpd_cancel_work(display);
10741078

10751079
if (HAS_DISPLAY(dev_priv))
10761080
intel_display_driver_suspend_access(display);
10771081

10781082
intel_encoder_suspend_all(display);
10791083

1084+
intel_irq_suspend(dev_priv);
1085+
10801086
/* Must be called before GGTT is suspended. */
10811087
intel_dpt_suspend(display);
10821088
i915_ggtt_suspend(to_gt(dev_priv)->ggtt);
@@ -1233,6 +1239,8 @@ static int i915_drm_resume(struct drm_device *dev)
12331239

12341240
intel_hpd_init(display);
12351241

1242+
intel_encoder_unblock_all_hpds(display);
1243+
12361244
intel_display_driver_resume(display);
12371245

12381246
if (HAS_DISPLAY(dev_priv)) {

0 commit comments

Comments
 (0)