aboutsummaryrefslogtreecommitdiff
path: root/shared-core/savage_drv.h
diff options
context:
space:
mode:
authorFelix Kuehling <fxkuehl@gmx.de>2005-01-09 19:49:21 +0000
committerFelix Kuehling <fxkuehl@gmx.de>2005-01-09 19:49:21 +0000
commitd6af902ff74d4a384c2dd9acb9540d637f588bc6 (patch)
tree4a11147e9274649e91f640778f586219339b0813 /shared-core/savage_drv.h
parent6e38fd357625ef002cf1f4570296dc66ba2631c6 (diff)
Improved workaround for Savage3D DMA lockup to emit NOPs only before the
first indexed drawing command of a cmdbuf or if a wait command was emitted since the last indexed drawing command.
Diffstat (limited to 'shared-core/savage_drv.h')
-rw-r--r--shared-core/savage_drv.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/shared-core/savage_drv.h b/shared-core/savage_drv.h
index 9af12472..726c54fc 100644
--- a/shared-core/savage_drv.h
+++ b/shared-core/savage_drv.h
@@ -30,11 +30,11 @@
#define DRIVER_NAME "savage"
#define DRIVER_DESC "Savage3D/MX/IX, Savage4, SuperSavage, Twister, ProSavage[DDR]"
-#define DRIVER_DATE "20050106"
+#define DRIVER_DATE "20050109"
#define DRIVER_MAJOR 2
#define DRIVER_MINOR 1
-#define DRIVER_PATCHLEVEL 0
+#define DRIVER_PATCHLEVEL 1
/* Interface history:
*
* 1.x The DRM driver from the VIA/S3 code drop, basically a dummy
@@ -153,6 +153,9 @@ typedef struct drm_savage_private {
drm_savage_state_t state;
+ /* after emitting a wait cmd Savage3D needs 63 nops before next DMA */
+ unsigned int waiting;
+
/* config/hardware-dependent function pointers */
int (*wait_fifo)(struct drm_savage_private *dev_priv, unsigned int n);
int (*wait_evnt)(struct drm_savage_private *dev_priv, uint16_t e);