summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/dev/drm/radeon_cp.c18
-rw-r--r--sys/dev/drm/radeon_irq.c2
2 files changed, 12 insertions, 8 deletions
diff --git a/sys/dev/drm/radeon_cp.c b/sys/dev/drm/radeon_cp.c
index 8f723ce..3d8cf9d 100644
--- a/sys/dev/drm/radeon_cp.c
+++ b/sys/dev/drm/radeon_cp.c
@@ -2064,16 +2064,22 @@ int radeon_driver_load(struct drm_device *dev, unsigned long flags)
drm_get_resource_len(dev, 2), _DRM_REGISTERS,
_DRM_READ_ONLY | _DRM_DRIVER, &dev_priv->mmio);
if (ret != 0)
- return ret;
+ goto error;
ret = drm_vblank_init(dev, 2);
- if (ret) {
- radeon_driver_unload(dev);
- return ret;
- }
+ if (ret != 0)
+ goto error;
+
+ dev->max_vblank_count = 0x001fffff;
DRM_DEBUG("%s card detected\n",
- ((dev_priv->flags & RADEON_IS_AGP) ? "AGP" : (((dev_priv->flags & RADEON_IS_PCIE) ? "PCIE" : "PCI"))));
+ ((dev_priv->flags & RADEON_IS_AGP) ? "AGP" :
+ (((dev_priv->flags & RADEON_IS_PCIE) ? "PCIE" : "PCI"))));
+
+ return ret;
+
+error:
+ radeon_driver_unload(dev);
return ret;
}
diff --git a/sys/dev/drm/radeon_irq.c b/sys/dev/drm/radeon_irq.c
index ce301eb..7f60573 100644
--- a/sys/dev/drm/radeon_irq.c
+++ b/sys/dev/drm/radeon_irq.c
@@ -380,8 +380,6 @@ int radeon_driver_irq_postinstall(struct drm_device * dev)
atomic_set(&dev_priv->swi_emitted, 0);
DRM_INIT_WAITQUEUE(&dev_priv->swi_queue);
- dev->max_vblank_count = 0x001fffff;
-
radeon_irq_set_state(dev, RADEON_SW_INT_ENABLE, 1);
return 0;
OpenPOWER on IntegriCloud