summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin E Martin <kem@kem.org>2001-01-03 19:53:06 +0000
committerKevin E Martin <kem@kem.org>2001-01-03 19:53:06 +0000
commitba08f7f687d386558147395b7bd2726c86021518 (patch)
tree5a020d72a0ffe6de06adc562050b05b52b3670fa
parent9649e63ba25982d1605aef2b6cf3547dab727100 (diff)
- Remove UseCPfor2D option since it is no longer needed/used
- Disable in-memory scratch register shadows since they do not always work - Fix r128_do_wait_for_idle to wait for the gui to become idle after fifo has been drained (apply same fix as I made yesterday to radeon code)
-rw-r--r--linux/r128_cce.c2
-rw-r--r--linux/radeon_cp.c11
2 files changed, 11 insertions, 2 deletions
diff --git a/linux/r128_cce.c b/linux/r128_cce.c
index d2afabe9..6df2b45a 100644
--- a/linux/r128_cce.c
+++ b/linux/r128_cce.c
@@ -174,7 +174,7 @@ static int r128_do_wait_for_idle( drm_r128_private_t *dev_priv )
int i, ret;
ret = r128_do_wait_for_fifo( dev_priv, 64 );
- if ( !ret ) return ret;
+ if ( ret < 0 ) return ret;
for ( i = 0 ; i < dev_priv->usec_timeout ; i++ ) {
if ( !(R128_READ( R128_GUI_STAT ) & R128_GUI_ACTIVE) ) {
diff --git a/linux/radeon_cp.c b/linux/radeon_cp.c
index ef7a946e..0df883c6 100644
--- a/linux/radeon_cp.c
+++ b/linux/radeon_cp.c
@@ -394,7 +394,7 @@ static int radeon_do_wait_for_idle( drm_radeon_private_t *dev_priv )
int i, ret;
ret = radeon_do_wait_for_fifo( dev_priv, 64 );
- if ( ret ) return ret;
+ if ( ret < 0 ) return ret;
for ( i = 0 ; i < dev_priv->usec_timeout ; i++ ) {
if ( !(RADEON_READ( RADEON_RBBM_STATUS )
@@ -736,13 +736,17 @@ static int radeon_do_init_cp( drm_device_t *dev, drm_radeon_init_t *init )
dev_priv->ring.tail_mask =
(dev_priv->ring.size / sizeof(u32)) - 1;
+#if 0
/* Initialize the scratch register pointer. This will cause
* the scratch register values to be written out to memory
* whenever they are updated.
+ * FIXME: This doesn't quite work yet, so we're disabling it
+ * for the release.
*/
RADEON_WRITE( RADEON_SCRATCH_ADDR, (dev_priv->ring_rptr->offset +
RADEON_SCRATCH_REG_OFFSET) );
RADEON_WRITE( RADEON_SCRATCH_UMSK, 0x7 );
+#endif
dev_priv->scratch = ((__volatile__ u32 *)
dev_priv->ring_rptr->handle +
@@ -1102,7 +1106,12 @@ drm_buf_t *radeon_freelist_get( drm_device_t *dev )
start = dev_priv->last_buf;
#endif
for ( t = 0 ; t < dev_priv->usec_timeout ; t++ ) {
+#if 0
+ /* FIXME: Disable this for now */
u32 done_age = dev_priv->scratch[RADEON_LAST_DISPATCH];
+#else
+ u32 done_age = RADEON_READ( RADEON_LAST_DISPATCH_REG );
+#endif
#if ROTATE_BUFS
for ( i = start ; i < dma->buf_count ; i++ ) {
#else