aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/drm/i810_dma.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@starflyer.(none)>2005-11-10 06:16:34 -0500
committerDave Airlie <airlied@linux.ie>2005-11-10 06:16:34 -0500
commit22eae947bf76e236ba972f2f11cfd1b083b736ad (patch)
treee18a2cdfef9ac0f606eb249df4924fef5e7daebd /drivers/char/drm/i810_dma.c
parent3b44f137b9a846c5452d9e6e1271b79b1dbcc942 (diff)
drm: rename driver hooks more understandably
Rename the driver hooks in the DRM to something a little more understandable: preinit -> load postinit -> (removed) presetup -> firstopen postsetup -> (removed) open_helper -> open prerelease -> preclose free_filp_priv -> postclose pretakedown -> lastclose postcleanup -> unload release -> reclaim_buffers_locked version -> (removed) postinit and version were replaced with generic code in the Linux DRM (drivers now set their version numbers and description in the driver structure, like on BSD). postsetup wasn't used at all. Fixes the savage hooks for initializing and tearing down mappings at the right times. Testing involved at least starting X, running glxgears, killing glxgears, exiting X, and repeating. Tested on: FreeBSD (g200, g400, r200, r128) Linux (r200, savage4) From: Eric Anholt <anholt@freebsd.org> Signed-off-by: Dave Airlie <airlied@linux.ie>
Diffstat (limited to 'drivers/char/drm/i810_dma.c')
-rw-r--r--drivers/char/drm/i810_dma.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/drivers/char/drm/i810_dma.c b/drivers/char/drm/i810_dma.c
index dba502373da1..c3178a89615d 100644
--- a/drivers/char/drm/i810_dma.c
+++ b/drivers/char/drm/i810_dma.c
@@ -1319,12 +1319,24 @@ static int i810_flip_bufs(struct inode *inode, struct file *filp,
1319 return 0; 1319 return 0;
1320} 1320}
1321 1321
1322void i810_driver_pretakedown(drm_device_t * dev) 1322int i810_driver_load(drm_device_t *dev, unsigned long flags)
1323{
1324 /* i810 has 4 more counters */
1325 dev->counters += 4;
1326 dev->types[6] = _DRM_STAT_IRQ;
1327 dev->types[7] = _DRM_STAT_PRIMARY;
1328 dev->types[8] = _DRM_STAT_SECONDARY;
1329 dev->types[9] = _DRM_STAT_DMA;
1330
1331 return 0;
1332}
1333
1334void i810_driver_lastclose(drm_device_t * dev)
1323{ 1335{
1324 i810_dma_cleanup(dev); 1336 i810_dma_cleanup(dev);
1325} 1337}
1326 1338
1327void i810_driver_prerelease(drm_device_t * dev, DRMFILE filp) 1339void i810_driver_preclose(drm_device_t * dev, DRMFILE filp)
1328{ 1340{
1329 if (dev->dev_private) { 1341 if (dev->dev_private) {
1330 drm_i810_private_t *dev_priv = dev->dev_private; 1342 drm_i810_private_t *dev_priv = dev->dev_private;
@@ -1334,7 +1346,7 @@ void i810_driver_prerelease(drm_device_t * dev, DRMFILE filp)
1334 } 1346 }
1335} 1347}
1336 1348
1337void i810_driver_release(drm_device_t * dev, struct file *filp) 1349void i810_driver_reclaim_buffers_locked(drm_device_t * dev, struct file *filp)
1338{ 1350{
1339 i810_reclaim_buffers(dev, filp); 1351 i810_reclaim_buffers(dev, filp);
1340} 1352}