[RESEND PATCH 03/14] drm: qxl: Don't initialize vblank support
Gabriel Krisman Bertazi
krisman at collabora.co.uk
Mon Feb 27 20:43:17 UTC 2017
qxl don't have support for hardware vblanks so we can't initialize it
here, otherwise we risk getting stuck in drm_wait_one_vblank.
Signed-off-by: Gabriel Krisman Bertazi <krisman at collabora.co.uk>
---
drivers/gpu/drm/qxl/qxl_display.c | 20 --------------------
drivers/gpu/drm/qxl/qxl_drv.c | 8 +-------
2 files changed, 1 insertion(+), 27 deletions(-)
diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c
index 0957db17de4d..a82fc3678b8e 100644
--- a/drivers/gpu/drm/qxl/qxl_display.c
+++ b/drivers/gpu/drm/qxl/qxl_display.c
@@ -293,14 +293,11 @@ static int qxl_crtc_page_flip(struct drm_crtc *crtc,
qxl_draw_dirty_fb(qdev, qfb_src, bo, 0, 0,
&norect, one_clip_rect, inc);
- drm_crtc_vblank_get(crtc);
-
if (event) {
spin_lock_irqsave(&dev->event_lock, flags);
drm_crtc_send_vblank_event(crtc, event);
spin_unlock_irqrestore(&dev->event_lock, flags);
}
- drm_crtc_vblank_put(crtc);
qxl_bo_unpin(bo);
@@ -532,29 +529,12 @@ static int qxl_crtc_cursor_move(struct drm_crtc *crtc,
return 0;
}
-static u32 qxl_noop_get_vblank_counter(struct drm_crtc *crtc)
-{
- return 0;
-}
-
-static int qxl_noop_enable_vblank(struct drm_crtc *crtc)
-{
- return 0;
-}
-
-static void qxl_noop_disable_vblank(struct drm_crtc *crtc)
-{
-}
-
static const struct drm_crtc_funcs qxl_crtc_funcs = {
.cursor_set2 = qxl_crtc_cursor_set2,
.cursor_move = qxl_crtc_cursor_move,
.set_config = drm_crtc_helper_set_config,
.destroy = qxl_crtc_destroy,
.page_flip = qxl_crtc_page_flip,
- .get_vblank_counter = qxl_noop_get_vblank_counter,
- .enable_vblank = qxl_noop_enable_vblank,
- .disable_vblank = qxl_noop_disable_vblank,
};
void qxl_user_framebuffer_destroy(struct drm_framebuffer *fb)
diff --git a/drivers/gpu/drm/qxl/qxl_drv.c b/drivers/gpu/drm/qxl/qxl_drv.c
index e141db9c6211..67e94f4f3ce8 100644
--- a/drivers/gpu/drm/qxl/qxl_drv.c
+++ b/drivers/gpu/drm/qxl/qxl_drv.c
@@ -83,13 +83,9 @@ qxl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if (ret)
goto disable_pci;
- ret = drm_vblank_init(&qdev->ddev, 1);
- if (ret)
- goto unload;
-
ret = qxl_modeset_init(qdev);
if (ret)
- goto vblank_cleanup;
+ goto unload;
drm_kms_helper_poll_init(&qdev->ddev);
@@ -102,8 +98,6 @@ qxl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
modeset_cleanup:
qxl_modeset_fini(qdev);
-vblank_cleanup:
- drm_vblank_cleanup(&qdev->ddev);
unload:
qxl_device_fini(qdev);
disable_pci:
--
2.11.0
More information about the dri-devel
mailing list