diff options
| author | David Woodhouse <dwmw2@infradead.org> | 2006-10-01 17:55:53 +0100 |
|---|---|---|
| committer | David Woodhouse <dwmw2@infradead.org> | 2006-10-01 17:55:53 +0100 |
| commit | 8a84fc15ae5cafcc366dd85cf8e1ab2040679abc (patch) | |
| tree | 5d8dce194c9667fa92e9ec9f545cec867a9a1e0d /drivers/char/drm/sis_drv.c | |
| parent | 28b79ff9661b22e4c41c0d00d4ab8503e810f13d (diff) | |
| parent | 82965addad66fce61a92c5f03104ea90b0b87124 (diff) | |
| download | linux-next-8a84fc15ae5cafcc366dd85cf8e1ab2040679abc.tar.gz linux-next-8a84fc15ae5cafcc366dd85cf8e1ab2040679abc.zip | |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Manually resolve conflict in include/mtd/Kbuild
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Diffstat (limited to 'drivers/char/drm/sis_drv.c')
| -rw-r--r-- | drivers/char/drm/sis_drv.c | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/drivers/char/drm/sis_drv.c b/drivers/char/drm/sis_drv.c index 5e9dc86f2956..3d5b3218b6ff 100644 --- a/drivers/char/drm/sis_drv.c +++ b/drivers/char/drm/sis_drv.c @@ -35,11 +35,44 @@ static struct pci_device_id pciidlist[] = { sisdrv_PCI_IDS }; +static int sis_driver_load(drm_device_t *dev, unsigned long chipset) +{ + drm_sis_private_t *dev_priv; + int ret; + + dev_priv = drm_calloc(1, sizeof(drm_sis_private_t), DRM_MEM_DRIVER); + if (dev_priv == NULL) + return DRM_ERR(ENOMEM); + + dev->dev_private = (void *)dev_priv; + dev_priv->chipset = chipset; + ret = drm_sman_init(&dev_priv->sman, 2, 12, 8); + if (ret) { + drm_free(dev_priv, sizeof(dev_priv), DRM_MEM_DRIVER); + } + + return ret; +} + +static int sis_driver_unload(drm_device_t *dev) +{ + drm_sis_private_t *dev_priv = dev->dev_private; + + drm_sman_takedown(&dev_priv->sman); + drm_free(dev_priv, sizeof(*dev_priv), DRM_MEM_DRIVER); + + return 0; +} + static struct drm_driver driver = { .driver_features = DRIVER_USE_AGP | DRIVER_USE_MTRR, - .context_ctor = sis_init_context, - .context_dtor = sis_final_context, - .reclaim_buffers = drm_core_reclaim_buffers, + .load = sis_driver_load, + .unload = sis_driver_unload, + .context_dtor = NULL, + .dma_quiescent = sis_idle, + .reclaim_buffers = NULL, + .reclaim_buffers_locked = sis_reclaim_buffers_locked, + .lastclose = sis_lastclose, .get_map_ofs = drm_core_get_map_ofs, .get_reg_ofs = drm_core_get_reg_ofs, .ioctls = sis_ioctls, |
