xf86-video-ati: Branch 'master'

Alex Deucher agd5f at kemper.freedesktop.org
Sat Jan 19 11:08:34 PST 2008


 src/radeon_modes.c |   20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

New commits:
commit 9a0947c812d0d38d1bca6a91140ac210831a6cb4
Author: Alex Deucher <alex at botch2.(none)>
Date:   Sat Jan 19 13:57:50 2008 -0500

    ATOM: Use LVDS edid from bios if available

diff --git a/src/radeon_modes.c b/src/radeon_modes.c
index 099a5e9..2c72395 100644
--- a/src/radeon_modes.c
+++ b/src/radeon_modes.c
@@ -285,10 +285,22 @@ RADEONProbeOutputModes(xf86OutputPtr output)
 	    if (output->MonInfo)
 		modes = xf86OutputGetEDIDModes (output);
 	    if (modes == NULL) {
-		if (radeon_output->type == OUTPUT_LVDS)
-		    modes = RADEONFPNativeMode(output);
-		/* add the screen modes */
-		RADEONAddScreenModes(output, &modes);
+		if ((radeon_output->type == OUTPUT_LVDS) && info->IsAtomBios) {
+		    atomBiosResult = RHDAtomBiosFunc(pScrn->scrnIndex,
+						     info->atomBIOS,
+						     ATOMBIOS_GET_PANEL_EDID, &atomBiosArg);
+		    if (atomBiosResult == ATOM_SUCCESS) {
+			output->MonInfo = xf86InterpretEDID(pScrn->scrnIndex,
+							    atomBiosArg.EDIDBlock);
+			modes = xf86OutputGetEDIDModes(output);
+		    }
+		}
+		if (modes == NULL) {
+		    if (radeon_output->type == OUTPUT_LVDS)
+			modes = RADEONFPNativeMode(output);
+		    /* add the screen modes */
+		    RADEONAddScreenModes(output, &modes);
+		}
 	    }
 	}
     }


More information about the xorg-commit mailing list