From 9e421181ddfc2d91859e9959487baf2df851e743 Mon Sep 17 00:00:00 2001 From: Jon Smirl Date: Mon, 27 Sep 2004 20:14:31 +0000 Subject: Fix the shared directory I accidentally stomped on --- shared/i915_dma.c | 34 +++++++++++++++++++++++++++------- 1 file changed, 27 insertions(+), 7 deletions(-) (limited to 'shared/i915_dma.c') diff --git a/shared/i915_dma.c b/shared/i915_dma.c index 1b91c60a..cf0333f6 100644 --- a/shared/i915_dma.c +++ b/shared/i915_dma.c @@ -7,6 +7,7 @@ * **************************************************************************/ +#include "i915.h" #include "drmP.h" #include "drm.h" #include "i915_drm.h" @@ -83,7 +84,7 @@ int i915_dma_cleanup(drm_device_t * dev) * is freed, it's too late. */ if (dev->irq) - drm_irq_uninstall (dev); + DRM(irq_uninstall) (dev); if (dev->dev_private) { drm_i915_private_t *dev_priv = @@ -97,7 +98,7 @@ int i915_dma_cleanup(drm_device_t * dev) #ifdef __FreeBSD__ #if __FreeBSD_version > 500000 contigfree(dev_priv->hw_status_page, PAGE_SIZE, - drm_M_DRM); + DRM(M_DRM)); #endif #else pci_free_consistent(dev->pdev, PAGE_SIZE, @@ -108,7 +109,7 @@ int i915_dma_cleanup(drm_device_t * dev) I915_WRITE(0x02080, 0x1ffff000); } - drm_free (dev->dev_private, sizeof(drm_i915_private_t), + DRM(free) (dev->dev_private, sizeof(drm_i915_private_t), DRM_MEM_DRIVER); dev->dev_private = NULL; @@ -182,7 +183,7 @@ static int i915_initialize(drm_device_t * dev, /* Program Hardware Status Page */ #ifdef __FreeBSD__ dev_priv->hw_status_page = - contigmalloc(PAGE_SIZE, drm_M_DRM, M_NOWAIT, 0ul, 0, 0, 0); + contigmalloc(PAGE_SIZE, DRM(M_DRM), M_NOWAIT, 0ul, 0, 0, 0); dev_priv->dma_status_page = vtophys(dev_priv->hw_status_page); #else dev_priv->hw_status_page = @@ -254,7 +255,7 @@ int i915_dma_init(DRM_IOCTL_ARGS) switch (init.func) { case I915_INIT_DMA: - dev_priv = drm_alloc (sizeof(drm_i915_private_t), + dev_priv = DRM(alloc) (sizeof(drm_i915_private_t), DRM_MEM_DRIVER); if (dev_priv == NULL) return DRM_ERR(ENOMEM); @@ -732,7 +733,7 @@ int i915_setparam(DRM_IOCTL_ARGS) return 0; } -void i915_driver_pretakedown(drm_device_t *dev) +static void i915_driver_pretakedown(drm_device_t *dev) { if (dev->dev_private) { drm_i915_private_t *dev_priv = dev->dev_private; @@ -741,10 +742,29 @@ void i915_driver_pretakedown(drm_device_t *dev) i915_dma_cleanup(dev); } -void i915_driver_prerelease(drm_device_t *dev, DRMFILE filp) +static void i915_driver_prerelease(drm_device_t *dev, DRMFILE filp) { if (dev->dev_private) { drm_i915_private_t *dev_priv = dev->dev_private; i915_mem_release(dev, filp, dev_priv->agp_heap); } } + +void i915_driver_register_fns(drm_device_t *dev) +{ + dev->driver_features = + DRIVER_USE_AGP | DRIVER_REQUIRE_AGP | DRIVER_USE_MTRR | + DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED; + dev->fn_tbl.pretakedown = i915_driver_pretakedown; + dev->fn_tbl.prerelease = i915_driver_prerelease; + dev->fn_tbl.irq_preinstall = i915_driver_irq_preinstall; + dev->fn_tbl.irq_postinstall = i915_driver_irq_postinstall; + dev->fn_tbl.irq_uninstall = i915_driver_irq_uninstall; + dev->fn_tbl.irq_handler = i915_driver_irq_handler; + + dev->counters += 4; + dev->types[6] = _DRM_STAT_IRQ; + dev->types[7] = _DRM_STAT_PRIMARY; + dev->types[8] = _DRM_STAT_SECONDARY; + dev->types[9] = _DRM_STAT_DMA; +} -- cgit v1.2.3