On Mon, Nov 14, 2016 at 12:41:01PM +0100, Daniel Vetter wrote: > With atomic nv50+ is already converted over to them, but the old > display code is still using it. Found in a 2 year old patch I have > lying around to un-export these old helpers! > > v2: Drop the hand-rolled versions from resume/suspend code. Now that > crtc callbacks do this, we don't need a special case for s/r anymore. > > v3: Remove unused variables. > > Cc: Mario Kleiner <mario.kleiner.de@xxxxxxxxx> > Cc: Ben Skeggs <bskeggs@xxxxxxxxxx> > Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx> > --- > drivers/gpu/drm/nouveau/dispnv04/crtc.c | 4 ++-- > drivers/gpu/drm/nouveau/nouveau_display.c | 11 +---------- > 2 files changed, 3 insertions(+), 12 deletions(-) > > diff --git a/drivers/gpu/drm/nouveau/dispnv04/crtc.c b/drivers/gpu/drm/nouveau/dispnv04/crtc.c > index 0cb7a18cde26..59d1d1c5de5f 100644 > --- a/drivers/gpu/drm/nouveau/dispnv04/crtc.c > +++ b/drivers/gpu/drm/nouveau/dispnv04/crtc.c > @@ -702,7 +702,7 @@ static void nv_crtc_prepare(struct drm_crtc *crtc) > if (nv_two_heads(dev)) > NVSetOwner(dev, nv_crtc->index); > > - drm_vblank_pre_modeset(dev, nv_crtc->index); > + drm_crtc_vblank_off(crtc); > funcs->dpms(crtc, DRM_MODE_DPMS_OFF); > > NVBlankScreen(dev, nv_crtc->index, true); > @@ -734,7 +734,7 @@ static void nv_crtc_commit(struct drm_crtc *crtc) > #endif > > funcs->dpms(crtc, DRM_MODE_DPMS_ON); > - drm_vblank_post_modeset(dev, nv_crtc->index); > + drm_crtc_vblank_on(crtc); > } > > static void nv_crtc_destroy(struct drm_crtc *crtc) > diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c b/drivers/gpu/drm/nouveau/nouveau_display.c > index 75c90a8da18a..76c342bf047b 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_display.c > +++ b/drivers/gpu/drm/nouveau/nouveau_display.c > @@ -380,15 +380,10 @@ nouveau_display_fini(struct drm_device *dev, bool suspend) > struct nouveau_display *disp = nouveau_display(dev); > struct nouveau_drm *drm = nouveau_drm(dev); > struct drm_connector *connector; > - int head; > > if (!suspend) > drm_crtc_force_disable_all(dev); > > - /* Make sure that drm and hw vblank irqs get properly disabled. */ > - for (head = 0; head < dev->mode_config.num_crtc; head++) > - drm_vblank_off(dev, head); > - compared with the pre-atomic-rebase patch and realized we still need this part for pre-nv50, since we don't force-disable all the crtc on suspend. Atomic otoh does that, so should be all good. With that change it again matches a patch Mario tested (except for nv50), so figured it should be safe and applied it to drm-misc. -Daniel > /* disable flip completion events */ > nvif_notify_put(&drm->flip); > > @@ -723,7 +718,7 @@ nouveau_display_resume(struct drm_device *dev, bool runtime) > struct nouveau_display *disp = nouveau_display(dev); > struct nouveau_drm *drm = nouveau_drm(dev); > struct drm_crtc *crtc; > - int ret, head; > + int ret; > > if (dev->mode_config.funcs->atomic_commit) { > nouveau_display_init(dev); > @@ -777,10 +772,6 @@ nouveau_display_resume(struct drm_device *dev, bool runtime) > > drm_helper_resume_force_mode(dev); > > - /* Make sure that drm and hw vblank irqs get resumed if needed. */ > - for (head = 0; head < dev->mode_config.num_crtc; head++) > - drm_vblank_on(dev, head); > - > list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) { > struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); > > -- > 2.10.2 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel