Commit 01172772 authored by Dave Airlie's avatar Dave Airlie Committed by Dave Airlie

drm/nouveau: fix oops on runtime suspend/resume

if we have no crtcs we need to not call the display resume code.
Reported-by: default avatarTobias Klausmann <tobias.johannes.klausmann@mni.thm.de>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent 48016851
...@@ -636,7 +636,8 @@ int nouveau_pmops_resume(struct device *dev) ...@@ -636,7 +636,8 @@ int nouveau_pmops_resume(struct device *dev)
nouveau_fbcon_set_suspend(drm_dev, 0); nouveau_fbcon_set_suspend(drm_dev, 0);
nouveau_fbcon_zfill_all(drm_dev); nouveau_fbcon_zfill_all(drm_dev);
nouveau_display_resume(drm_dev); if (drm_dev->mode_config.num_crtc)
nouveau_display_resume(drm_dev);
nv_suspend_set_printk_level(NV_DBG_DEBUG); nv_suspend_set_printk_level(NV_DBG_DEBUG);
return 0; return 0;
} }
...@@ -671,7 +672,8 @@ static int nouveau_pmops_thaw(struct device *dev) ...@@ -671,7 +672,8 @@ static int nouveau_pmops_thaw(struct device *dev)
if (drm_dev->mode_config.num_crtc) if (drm_dev->mode_config.num_crtc)
nouveau_fbcon_set_suspend(drm_dev, 0); nouveau_fbcon_set_suspend(drm_dev, 0);
nouveau_fbcon_zfill_all(drm_dev); nouveau_fbcon_zfill_all(drm_dev);
nouveau_display_resume(drm_dev); if (drm_dev->mode_config.num_crtc)
nouveau_display_resume(drm_dev);
nv_suspend_set_printk_level(NV_DBG_DEBUG); nv_suspend_set_printk_level(NV_DBG_DEBUG);
return 0; return 0;
} }
...@@ -906,7 +908,8 @@ static int nouveau_pmops_runtime_resume(struct device *dev) ...@@ -906,7 +908,8 @@ static int nouveau_pmops_runtime_resume(struct device *dev)
pci_set_master(pdev); pci_set_master(pdev);
ret = nouveau_do_resume(drm_dev); ret = nouveau_do_resume(drm_dev);
nouveau_display_resume(drm_dev); if (drm_dev->mode_config.num_crtc)
nouveau_display_resume(drm_dev);
drm_kms_helper_poll_enable(drm_dev); drm_kms_helper_poll_enable(drm_dev);
/* do magic */ /* do magic */
nv_mask(device, 0x88488, (1 << 25), (1 << 25)); nv_mask(device, 0x88488, (1 << 25), (1 << 25));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment