Bug#524280: Display broken beyond recognition after upgrade to 1:6.12.2-1

Alex Deucher alexdeucher at gmail.com
Thu May 14 11:49:56 PDT 2009


2009/5/14 Jacek Politowski <jp at jp.pl.eu.org>:
> On Thu, May 14, 2009 at 09:47:26AM +0200, Michel Dänzer wrote:
>>On Wed, 2009-05-13 at 13:13 +0200, Jacek Politowski wrote:
>
>>> I started git bisect between revisions
>>> a6561f2ec673b38907f7181235386f32e60c32ba and
>>> da021c36bbdf3bca31ee50ebe01cdb9495c09b36
>>> (...) (the same error for every tested build).
>
>>I think commit da021c36bbdf3bca31ee50ebe01cdb9495c09b36 fixed this,
>>so
>>something like
>
>>git show da021c36bbdf3bca31ee50ebe01cdb9495c09b36 | patch -p1
>
> Ok, I've applied this patch and continued git bisect session.
>
> Driver builds correctly, so I was able to finish the search.
>
> Result follows:
> $ git bisect visualize
> commit b01e35168de40d192fd7a9ce6884b9c7419afbd4
> Author: Alex Deucher <alexdeucher at gmail.com>
> Date:   Mon Nov 24 21:06:42 2008 -0500
>
>    Fix up posted logic
>
>    noticed by benh on IRC
>
>
> This is the first revision that shows symptoms from my initial
> bug report.

Does this patch (against master) fix it?

Alex
-------------- next part --------------
diff --git a/src/radeon_bios.c b/src/radeon_bios.c
index 9907e09..ecf5403 100644
--- a/src/radeon_bios.c
+++ b/src/radeon_bios.c
@@ -328,6 +328,7 @@ radeon_card_posted(ScrnInfoPtr pScrn)
     unsigned char *RADEONMMIO = info->MMIO;
     uint32_t reg;
 
+    /* first check CRTCs */
     if (IS_AVIVO_VARIANT) {
 	reg = INREG(AVIVO_D1CRTC_CONTROL) | INREG(AVIVO_D2CRTC_CONTROL);
 	if (reg & AVIVO_CRTC_EN)
@@ -338,6 +339,15 @@ radeon_card_posted(ScrnInfoPtr pScrn)
 	    return TRUE;
     }
 
+    /* then check MEM_SIZE, in case something turned the crtcs off */
+    if (info->ChipFamily >= CHIP_FAMILY_R600)
+	reg = INREG(R600_CONFIG_MEMSIZE);
+    else
+	reg = INREG(RADEON_CONFIG_MEMSIZE);
+
+    if (reg)
+	return TRUE;
+
     return FALSE;
 }
 


More information about the xorg-driver-ati mailing list