git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
drm: move drm vblank initialization/cleanup to driver load/unload
[safe/jmp/linux-2.6]
/
drivers
/
gpu
/
drm
/
mga
/
mga_dma.c
diff --git
a/drivers/gpu/drm/mga/mga_dma.c
b/drivers/gpu/drm/mga/mga_dma.c
index
c1d12db
..
b49c5ff
100644
(file)
--- a/
drivers/gpu/drm/mga/mga_dma.c
+++ b/
drivers/gpu/drm/mga/mga_dma.c
@@
-396,6
+396,7
@@
int mga_freelist_put(struct drm_device * dev, struct drm_buf * buf)
int mga_driver_load(struct drm_device * dev, unsigned long flags)
{
drm_mga_private_t *dev_priv;
int mga_driver_load(struct drm_device * dev, unsigned long flags)
{
drm_mga_private_t *dev_priv;
+ int ret;
dev_priv = drm_alloc(sizeof(drm_mga_private_t), DRM_MEM_DRIVER);
if (!dev_priv)
dev_priv = drm_alloc(sizeof(drm_mga_private_t), DRM_MEM_DRIVER);
if (!dev_priv)
@@
-415,6
+416,13
@@
int mga_driver_load(struct drm_device * dev, unsigned long flags)
dev->types[7] = _DRM_STAT_PRIMARY;
dev->types[8] = _DRM_STAT_SECONDARY;
dev->types[7] = _DRM_STAT_PRIMARY;
dev->types[8] = _DRM_STAT_SECONDARY;
+ ret = drm_vblank_init(dev, 1);
+
+ if (ret) {
+ (void) mga_driver_unload(dev);
+ return ret;
+ }
+
return 0;
}
return 0;
}