[prev in list] [next in list] [prev in thread] [next in thread] 

List:       dri-patches
Subject:    drm: Branch 'nouveau-1' - 2 commits
From:       darktama () kemper ! freedesktop ! org (Ben Skeggs)
Date:       2006-10-17 12:44:18
Message-ID: 20061017124418.4D79D10078 () kemper ! freedesktop ! org
[Download RAW message or body]

 shared-core/nouveau_irq.c    |   19 ++++++++++++++++++-
 shared-core/nouveau_object.c |    1 -
 shared-core/nouveau_reg.h    |    5 +++++
 3 files changed, 23 insertions(+), 2 deletions(-)

New commits:
diff-tree 55de3f763f0de66b99f1afde9872f0072a84a9e3 (from \
                07059f427819755e13b051e1422c6e8671c70f92)
Author: Ben Skeggs <darktama@iinet.net.au>
Date:   Tue Oct 17 23:44:05 2006 +1100

    Useful output on a FIFO error interrupt.

diff --git a/shared-core/nouveau_irq.c b/shared-core/nouveau_irq.c
index 086c064..af6109e 100644
--- a/shared-core/nouveau_irq.c
+++ b/shared-core/nouveau_irq.c
@@ -146,8 +146,25 @@ static void nouveau_fifo_irq_handler(drm
 	DRM_DEBUG("NV: PFIFO interrupt! Channel=%d, \
INTSTAT=0x%08x/MODE=0x%08x/PEND=0x%08x\n", channel, status, chmode, chstat);  
 	if (status & NV_PFIFO_INTR_CACHE_ERROR) {
+		uint32_t c1get, c1method, c1data;
+
 		DRM_ERROR("NV: PFIFO error interrupt\n");
 
+		c1get = NV_READ(NV_PFIFO_CACH1_GET) >> 2;
+		if (dev_priv->card_type < NV_40) {
+			/* Untested, so it may not work.. */
+			c1method = NV_READ(NV_PFIFO_CACH1_METHOD(c1get));
+			c1data   = NV_READ(NV_PFIFO_CACH1_DATA(c1get));
+		} else {
+			c1method = NV_READ(NV40_PFIFO_CACH1_METHOD(c1get));
+			c1data   = NV_READ(NV40_PFIFO_CACH1_DATA(c1get));
+		}
+
+		DRM_ERROR("NV: Channel %d/%d - Method 0x%04x, Data 0x%08x\n",
+				channel, (c1method >> 13) & 3,
+				c1method & 0x1ffc, c1data
+			 );
+
 		status &= ~NV_PFIFO_INTR_CACHE_ERROR;
 		NV_WRITE(NV_PFIFO_INTSTAT, NV_PFIFO_INTR_CACHE_ERROR);
 	}
diff --git a/shared-core/nouveau_object.c b/shared-core/nouveau_object.c
index 18c5076..78a4b78 100644
--- a/shared-core/nouveau_object.c
+++ b/shared-core/nouveau_object.c
@@ -290,7 +290,6 @@ static void nouveau_object_instance_free
 void nouveau_hash_table_init(drm_device_t* dev)
 {
 	drm_nouveau_private_t *dev_priv=dev->dev_private;
-	int ht_start, ht_end;
 	int i;
 
 	dev_priv->objs.ht_bits = 9;
diff --git a/shared-core/nouveau_reg.h b/shared-core/nouveau_reg.h
index 7a0f429..b393e87 100644
--- a/shared-core/nouveau_reg.h
+++ b/shared-core/nouveau_reg.h
@@ -165,7 +165,12 @@
 #define NV_PFIFO_CACH1_PUL0                                0x00003250
 #define NV_PFIFO_CACH1_PUL1                                0x00003254
 #define NV_PFIFO_CACH1_HASH                                0x00003258
+#define NV_PFIFO_CACH1_GET                                 0x00003270
 #define NV_PFIFO_CACH1_ENG                                 0x00003280
+#define NV_PFIFO_CACH1_METHOD(i)                   (0x00003800+(i*8))
+#define NV_PFIFO_CACH1_DATA(i)                     (0x00003804+(i*8))
+#define NV40_PFIFO_CACH1_METHOD(i)                 (0x00090000+(i*8))
+#define NV40_PFIFO_CACH1_DATA(i)                   (0x00090004+(i*8))
 
 #define NV_CRTC0_INTSTAT                                   0x00600100
 #define NV_CRTC0_INTEN                                     0x00600140
diff-tree 07059f427819755e13b051e1422c6e8671c70f92 (from \
                4b43ee63f90c93701c9f1cdf7fefd1816b316d33)
Author: Ben Skeggs <darktama@iinet.net.au>
Date:   Tue Oct 17 23:08:03 2006 +1100

    typo

diff --git a/shared-core/nouveau_irq.c b/shared-core/nouveau_irq.c
index cff6bbb..086c064 100644
--- a/shared-core/nouveau_irq.c
+++ b/shared-core/nouveau_irq.c
@@ -275,7 +275,7 @@ static void nouveau_pgraph_irq_handler(d
 
 		instance = NV_READ(0x00400158);
 		notify   = NV_READ(0x00400150) >> 16;
-		DRM_DEBUG("instance:0x%08x\tnotify:0x%08x\n", nsource, nstatus);
+		DRM_DEBUG("instance:0x%08x\tnotify:0x%08x\n", instance, notify);
 
 		status &= ~NV_PGRAPH_INTR_BUFFER_NOTIFY;
 		NV_WRITE(NV_PGRAPH_INTSTAT, NV_PGRAPH_INTR_BUFFER_NOTIFY);

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
--
_______________________________________________
Dri-patches mailing list
Dri-patches@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-patches


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic