diff options
Diffstat (limited to 'linux-core')
-rw-r--r-- | linux-core/drm_drv.c | 58 | ||||
-rw-r--r-- | linux-core/i810_dma.c | 7 | ||||
-rw-r--r-- | linux-core/i830_dma.c | 5 | ||||
-rw-r--r-- | linux-core/savage_drv.c | 5 |
4 files changed, 26 insertions, 49 deletions
diff --git a/linux-core/drm_drv.c b/linux-core/drm_drv.c index f0485ea7..0e5524f4 100644 --- a/linux-core/drm_drv.c +++ b/linux-core/drm_drv.c @@ -52,10 +52,6 @@ * OTHER DEALINGS IN THE SOFTWARE. */ -#ifndef __HAVE_COUNTERS -#define __HAVE_COUNTERS 0 -#endif - #ifndef DRIVER_IOCTLS #define DRIVER_IOCTLS #endif @@ -180,42 +176,7 @@ static int DRM(setup)( drm_device_t *dev ) if ( i < 0 ) return i; } - - dev->counters = 6 + __HAVE_COUNTERS; - dev->types[0] = _DRM_STAT_LOCK; - dev->types[1] = _DRM_STAT_OPENS; - dev->types[2] = _DRM_STAT_CLOSES; - dev->types[3] = _DRM_STAT_IOCTLS; - dev->types[4] = _DRM_STAT_LOCKS; - dev->types[5] = _DRM_STAT_UNLOCKS; -#ifdef __HAVE_COUNTER6 - dev->types[6] = __HAVE_COUNTER6; -#endif -#ifdef __HAVE_COUNTER7 - dev->types[7] = __HAVE_COUNTER7; -#endif -#ifdef __HAVE_COUNTER8 - dev->types[8] = __HAVE_COUNTER8; -#endif -#ifdef __HAVE_COUNTER9 - dev->types[9] = __HAVE_COUNTER9; -#endif -#ifdef __HAVE_COUNTER10 - dev->types[10] = __HAVE_COUNTER10; -#endif -#ifdef __HAVE_COUNTER11 - dev->types[11] = __HAVE_COUNTER11; -#endif -#ifdef __HAVE_COUNTER12 - dev->types[12] = __HAVE_COUNTER12; -#endif -#ifdef __HAVE_COUNTER13 - dev->types[13] = __HAVE_COUNTER13; -#endif -#ifdef __HAVE_COUNTER14 - dev->types[14] = __HAVE_COUNTER14; -#endif - + for ( i = 0 ; i < DRM_ARRAY_SIZE(dev->counts) ; i++ ) atomic_set( &dev->counts[i], 0 ); @@ -461,7 +422,16 @@ int DRM(fill_in_dev)(drm_device_t *dev, struct pci_dev *pdev, const struct pci_d /* dev_priv_size can be changed by a driver in driver_register_fns */ dev->dev_priv_size = sizeof(u32); - DRM(init_fn_table)(dev); + /* the DRM has 6 counters */ + dev->counters = 6; + dev->types[0] = _DRM_STAT_LOCK; + dev->types[1] = _DRM_STAT_OPENS; + dev->types[2] = _DRM_STAT_CLOSES; + dev->types[3] = _DRM_STAT_IOCTLS; + dev->types[4] = _DRM_STAT_LOCKS; + dev->types[5] = _DRM_STAT_UNLOCKS; + + DRM(init_fn_table)(dev); DRM(driver_register_fns)(dev); @@ -489,8 +459,8 @@ int DRM(fill_in_dev)(drm_device_t *dev, struct pci_dev *pdev, const struct pci_d retcode = DRM(ctxbitmap_init)( dev ); if( retcode ) { - DRM_ERROR( "Cannot allocate memory for context bitmap.\n" ); - goto error_out_unreg; + DRM_ERROR( "Cannot allocate memory for context bitmap.\n" ); + goto error_out_unreg; } dev->device = MKDEV(DRM_MAJOR, dev->minor ); @@ -905,7 +875,7 @@ int DRM(release)( struct inode *inode, struct file *filp ) list_del( &pos->head ); DRM(free)( pos, sizeof(*pos), DRM_MEM_CTXLIST ); - --dev->ctx_count; + --dev->ctx_count; } } } diff --git a/linux-core/i810_dma.c b/linux-core/i810_dma.c index 43c044c0..0c828850 100644 --- a/linux-core/i810_dma.c +++ b/linux-core/i810_dma.c @@ -1417,5 +1417,12 @@ void i810_driver_register_fns(drm_device_t *dev) dev->fn_tbl.release = i810_driver_release; dev->fn_tbl.dma_quiescent = i810_driver_dma_quiescent; dev->fn_tbl.reclaim_buffers = i810_reclaim_buffers; + + /* i810 has 4 more counters */ + 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; } diff --git a/linux-core/i830_dma.c b/linux-core/i830_dma.c index ac12b6dd..f39611c0 100644 --- a/linux-core/i830_dma.c +++ b/linux-core/i830_dma.c @@ -1621,5 +1621,10 @@ void i830_driver_register_fns(drm_device_t *dev) dev->fn_tbl.irq_uninstall = i830_driver_irq_uninstall; dev->fn_tbl.irq_handler = i830_driver_irq_handler; #endif + 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; } diff --git a/linux-core/savage_drv.c b/linux-core/savage_drv.c index 481a3886..5d19682c 100644 --- a/linux-core/savage_drv.c +++ b/linux-core/savage_drv.c @@ -248,11 +248,6 @@ int savage_free_cont_mem(struct inode *inode, struct file *filp, [DRM_IOCTL_NR(DRM_IOCTL_MGA_BLIT)] = { mga_dma_blit, 1, 0 }, -#define __HAVE_COUNTERS 3 -#define __HAVE_COUNTER6 _DRM_STAT_IRQ -#define __HAVE_COUNTER7 _DRM_STAT_PRIMARY -#define __HAVE_COUNTER8 _DRM_STAT_SECONDARY - #endif /* end #if 0 */ #include "drm_agpsupport.h" |