summaryrefslogtreecommitdiff
path: root/usr/src/uts/intel/io/drm/radeon_irq.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/intel/io/drm/radeon_irq.c')
-rw-r--r--usr/src/uts/intel/io/drm/radeon_irq.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/usr/src/uts/intel/io/drm/radeon_irq.c b/usr/src/uts/intel/io/drm/radeon_irq.c
index e8843b51ed..0c7e2e8a8b 100644
--- a/usr/src/uts/intel/io/drm/radeon_irq.c
+++ b/usr/src/uts/intel/io/drm/radeon_irq.c
@@ -1,6 +1,6 @@
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
/* radeon_irq.c -- IRQ handling for radeon -*- linux-c -*- */
@@ -35,8 +35,6 @@
* Michel D�zer <michel@daenzer.net>
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include "drmP.h"
#include "radeon_drm.h"
#include "radeon_drv.h"
@@ -296,12 +294,15 @@ static void radeon_enable_interrupt(struct drm_device *dev)
/*
* drm_dma.h hooks
*/
-void
+int
radeon_driver_irq_preinstall(drm_device_t *dev)
{
drm_radeon_private_t *dev_priv =
(drm_radeon_private_t *)dev->dev_private;
+ if (!dev_priv->mmio)
+ return (EINVAL);
+
/* Disable *all* interrupts */
RADEON_WRITE(RADEON_GEN_INT_CNTL, 0);
@@ -309,6 +310,8 @@ radeon_driver_irq_preinstall(drm_device_t *dev)
(void) radeon_acknowledge_irqs(dev_priv,
(RADEON_SW_INT_TEST_ACK | RADEON_CRTC_VBLANK_STAT |
RADEON_CRTC2_VBLANK_STAT));
+
+ return (0);
}
void