From: Michel Dänzer Date: Fri, 15 Jun 2007 09:01:51 +0000 (+0200) Subject: Remove DRIVER_IRQ_VBL(2). X-Git-Tag: libdrm-2.3.1~196 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0f5334be2bc6ceca971a7a6ab3ca1c23a707867c;p=platform%2Fupstream%2Flibdrm.git Remove DRIVER_IRQ_VBL(2). If the driver doesn't support vertical blank interrupts, it won't call drm_vblank_init(), and dev->num_crtcs will be 0. Also fix an off-by-one test against dev->num_crtcs. --- diff --git a/linux-core/drmP.h b/linux-core/drmP.h index 5bc8a6c..cf1c0fd 100644 --- a/linux-core/drmP.h +++ b/linux-core/drmP.h @@ -100,10 +100,8 @@ #define DRIVER_HAVE_DMA 0x20 #define DRIVER_HAVE_IRQ 0x40 #define DRIVER_IRQ_SHARED 0x80 -#define DRIVER_IRQ_VBL 0x100 -#define DRIVER_DMA_QUEUE 0x200 -#define DRIVER_FB_DMA 0x400 -#define DRIVER_IRQ_VBL2 0x800 +#define DRIVER_DMA_QUEUE 0x100 +#define DRIVER_FB_DMA 0x200 /*@}*/ diff --git a/linux-core/drm_irq.c b/linux-core/drm_irq.c index f673a97..c9d1c0d 100644 --- a/linux-core/drm_irq.c +++ b/linux-core/drm_irq.c @@ -405,7 +405,7 @@ int drm_modeset_ctl(DRM_IOCTL_ARGS) } crtc = modeset.arg; - if (crtc > dev->num_crtcs) { + if (crtc >= dev->num_crtcs) { ret = -EINVAL; goto out; } @@ -474,8 +474,7 @@ int drm_wait_vblank(DRM_IOCTL_ARGS) flags = vblwait.request.type & _DRM_VBLANK_FLAGS_MASK; crtc = flags & _DRM_VBLANK_SECONDARY ? 1 : 0; - if (!drm_core_check_feature(dev, (flags & _DRM_VBLANK_SECONDARY) ? - DRIVER_IRQ_VBL2 : DRIVER_IRQ_VBL)) + if (crtc >= dev->num_crtcs) return -EINVAL; drm_update_vblank_count(dev, crtc); diff --git a/linux-core/i915_drv.c b/linux-core/i915_drv.c index e7a9bfd..e7f69e6 100644 --- a/linux-core/i915_drv.c +++ b/linux-core/i915_drv.c @@ -76,8 +76,7 @@ static struct drm_driver driver = { */ .driver_features = DRIVER_USE_AGP | DRIVER_REQUIRE_AGP | /* DRIVER_USE_MTRR | */ - DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED | DRIVER_IRQ_VBL | - DRIVER_IRQ_VBL2, + DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED, .load = i915_driver_load, .firstopen = i915_driver_firstopen, .lastclose = i915_driver_lastclose,