aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/drm/sis_drv.h
diff options
context:
space:
mode:
authorThomas Hellstrom <thomas@tungstengraphics.com>2006-08-07 08:03:22 -0400
committerDave Airlie <airlied@linux.ie>2006-09-21 15:32:31 -0400
commitce65a44de07f73ceda1749812b75086b7add408d (patch)
tree9656065df50d0125b834e100aa2f5038c8d207e7 /drivers/char/drm/sis_drv.h
parent3a1bd924f36da202e480a0e0174b2878c0924a05 (diff)
drm: add drm simple memory manager support for SiS and VIA drivers
This add support to the SiS and VIA drivers for the simple memory manager. This fixes a lot of problems with the current simple code these drivers used, including locking and SMP issues. Signed-off-by: Dave Airlie <airlied@linux.ie>
Diffstat (limited to 'drivers/char/drm/sis_drv.h')
-rw-r--r--drivers/char/drm/sis_drv.h24
1 files changed, 15 insertions, 9 deletions
diff --git a/drivers/char/drm/sis_drv.h b/drivers/char/drm/sis_drv.h
index e218e5269503..330a2c4eade2 100644
--- a/drivers/char/drm/sis_drv.h
+++ b/drivers/char/drm/sis_drv.h
@@ -31,23 +31,29 @@
31/* General customization: 31/* General customization:
32 */ 32 */
33 33
34#define DRIVER_AUTHOR "SIS" 34#define DRIVER_AUTHOR "SIS, Tungsten Graphics"
35#define DRIVER_NAME "sis" 35#define DRIVER_NAME "sis"
36#define DRIVER_DESC "SIS 300/630/540" 36#define DRIVER_DESC "SIS 300/630/540"
37#define DRIVER_DATE "20030826" 37#define DRIVER_DATE "20060529"
38#define DRIVER_MAJOR 1 38#define DRIVER_MAJOR 1
39#define DRIVER_MINOR 1 39#define DRIVER_MINOR 2
40#define DRIVER_PATCHLEVEL 0 40#define DRIVER_PATCHLEVEL 1
41 41
42#include "sis_ds.h" 42#include "drm_sman.h"
43 43
44typedef struct drm_sis_private { 44typedef struct drm_sis_private {
45 memHeap_t *AGPHeap; 45 drm_local_map_t *mmio;
46 memHeap_t *FBHeap; 46 unsigned int idle_fault;
47 drm_sman_t sman;
48 unsigned int chipset;
49 int vram_initialized;
50 int agp_initialized;
51 unsigned long vram_offset;
52 unsigned long agp_offset;
47} drm_sis_private_t; 53} drm_sis_private_t;
48 54
49extern int sis_init_context(drm_device_t * dev, int context); 55extern void sis_reclaim_buffers_locked(drm_device_t *dev, struct file *filp);
50extern int sis_final_context(drm_device_t * dev, int context); 56extern void sis_lastclose(drm_device_t *dev);
51 57
52extern drm_ioctl_desc_t sis_ioctls[]; 58extern drm_ioctl_desc_t sis_ioctls[];
53extern int sis_max_ioctl; 59extern int sis_max_ioctl;