Jamie.. 32bit or 64bit?

(EE) intel(0): Non-contiguous GTT entries: (6295552,0x163ffbe000) vs (131072,0x 
3f820000)
                                                                                
             ^ Greater than 32 bits... (ok, a 32bit processor can do this math, 
but it is an interesting result given the code)

The code operates using the uint64_t type, however on anything but G33
class and 965 HW, the page table bits which correspond to an address
space > 32bits are masked out. Something "strange" is going on with the
above message. By my reading of the code, this shouldn't happen if
you've got a 945GM

This commit looks generally interesting...

commit f3168e3b0c5664a322ca6bb1c81fc94844cb30ab
Author: Eric Anholt <[EMAIL PROTECTED]>
Date:   Wed May 2 14:08:30 2007 -0700

    Disable non-working GTT decoding on i830, and fix map/unmap of GTT.


Specifically the latter part, which adds these lines (I'm ignoring the 830 
changes since this bug is hitting 945 hardware):

@@ -584,6 +587,15 @@ I830UnmapMMIO(ScrnInfoPtr pScrn)
    xf86UnMapVidMem(pScrn->scrnIndex, (pointer) pI830->MMIOBase,
                   I810_REG_SIZE);
    pI830->MMIOBase = NULL;
+
+   if (IS_I9XX(pI830)) {
+      if (IS_I965G(pI830))
+        xf86UnMapVidMem(pScrn->scrnIndex, pI830->GTTBase, 512 * 1024);
+      else {
+        xf86UnMapVidMem(pScrn->scrnIndex, pI830->GTTBase,
+                        pI830->FbMapSize / 1024);
+      }
+   }
 }
 
 static Bool
@@ -2279,6 +2291,9 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int 
argc, char **argv)
       pI830->used3D = pI8301->used3D;
    }
 
+   /* Need MMIO mapped to do GTT lookups during memory allocation. */
+   I830MapMMIO(pScrn);
+
 #if defined(XF86DRI)
    /*
     * If DRI is potentially usable, check if there is enough memory available
@@ -2419,6 +2434,8 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int 
argc, char **argv)
       allocation_done = TRUE;
    }
 
+   I830UnmapMMIO(pScrn);
+
    i830_describe_allocations(pScrn, 1, "");
 
    if (!IS_I965G(pI830) && pScrn->displayWidth > 2048) {

-- 
screen artifacts after resume, part row of pixels in error (945GM)
https://bugs.launchpad.net/bugs/91966
You received this bug notification because you are a member of Ubuntu
Bugs, which is the bug contact for Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to