xf86-video-ati: Branch 'master' - 2 commits

Alex Deucher agd5f at kemper.freedesktop.org
Tue Aug 28 20:46:50 PDT 2007


 src/radeon.h        |    3 ++-
 src/radeon_driver.c |    1 +
 src/radeon_output.c |   23 ++++++++---------------
 src/radeon_probe.h  |    7 -------
 4 files changed, 11 insertions(+), 23 deletions(-)

New commits:
diff-tree 61c1fdaa8553581944f78a11e6f9aa76163a468a (from 0d9087bc60bb95c770b899cfed29699c02bdac49)
Author: Alex Deucher <alex at botch2.(none)>
Date:   Tue Aug 28 23:47:19 2007 -0400

    RADEON: add option to force tmds pll to default table
    
    Also rework the tmds pll output attribute handling a bit

diff --git a/src/radeon.h b/src/radeon.h
index fa2bccd..b7a69bd 100644
--- a/src/radeon.h
+++ b/src/radeon.h
@@ -152,7 +152,8 @@ typedef enum {
     OPTION_CONSTANTDPI,
     OPTION_CONNECTORTABLE,
     OPTION_DRI,
-    OPTION_DEFAULT_CONNECTOR_TABLE
+    OPTION_DEFAULT_CONNECTOR_TABLE,
+    OPTION_DEFAULT_TMDS_PLL
 } RADEONOpts;
 
 
diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index 158e1e4..fc0f40b 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -187,6 +187,7 @@ static const OptionInfoRec RADEONOptions
     { OPTION_DRI,            "DRI",       	 OPTV_BOOLEAN, {0}, FALSE },
     { OPTION_CONNECTORTABLE, "ConnectorTable",   OPTV_STRING,  {0}, FALSE },
     { OPTION_DEFAULT_CONNECTOR_TABLE, "DefaultConnectorTable", OPTV_BOOLEAN, {0}, FALSE },
+    { OPTION_DEFAULT_TMDS_PLL, "DefaultTMDSPLL", OPTV_BOOLEAN, {0}, FALSE },
     { -1,                    NULL,               OPTV_NONE,    {0}, FALSE }
 };
 
diff --git a/src/radeon_output.c b/src/radeon_output.c
index c9b2ec7..168eab4 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -1018,15 +1018,6 @@ radeon_mode_set(xf86OutputPtr output, Di
     xf86CrtcPtr	crtc = output->crtc;
     RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private;
 
-    if (radeon_output->type == OUTPUT_DVI &&
-	radeon_output->TMDSType == TMDS_INT) {
-	if (radeon_output->tmds_pll_table == TMDS_PLL_BIOS) {
-	    if (!RADEONGetTMDSInfoFromBIOS(output))
-		RADEONGetTMDSInfoFromTable(output);
-	} else
-	    RADEONGetTMDSInfoFromTable(output);
-    }
-
     RADEONInitOutputRegisters(pScrn, &info->ModeReg, adjusted_mode, output, radeon_crtc->crtc_id);
 
     if (radeon_crtc->crtc_id == 0)
@@ -1672,6 +1663,10 @@ radeon_create_resources(xf86OutputPtr ou
 #else
 	s = "bios";
 #endif
+	if (xf86ReturnOptValBool(info->Options, OPTION_DEFAULT_TMDS_PLL, FALSE)) {
+	    s = "driver";
+	}
+
 	err = RRChangeOutputProperty(output->randr_output, tmds_pll_atom,
 				     XA_STRING, 8, PropModeReplace, strlen(s), (pointer)s,
 				     FALSE, FALSE);
@@ -1900,10 +1895,11 @@ radeon_set_property(xf86OutputPtr output
 	    return FALSE;
 	s = (char*)value->data;
 	if (value->size == strlen("bios") && !strncmp("bios", s, strlen("bios"))) {
-	    radeon_output->tmds_pll_table = TMDS_PLL_BIOS;
+	    if (!RADEONGetTMDSInfoFromBIOS(output))
+		RADEONGetTMDSInfoFromTable(output);
 	    return TRUE;
 	} else if (value->size == strlen("driver") && !strncmp("driver", s, strlen("driver"))) {
-	    radeon_output->tmds_pll_table = TMDS_PLL_DRIVER;
+	    RADEONGetTMDSInfoFromTable(output);
 	    return TRUE;
 	}
 	return FALSE;
diff --git a/src/radeon_probe.h b/src/radeon_probe.h
index b6ef59d..bc6f0b9 100644
--- a/src/radeon_probe.h
+++ b/src/radeon_probe.h
@@ -122,12 +122,6 @@ typedef enum
     DVI_ANALOG
 } RADEONDviType;
 
-typedef enum
-{
-    TMDS_PLL_BIOS,
-    TMDS_PLL_DRIVER
-} RADEONTMDSPllType;
-
 typedef struct {
     CARD32 freq;
     CARD32 value;
@@ -202,7 +196,6 @@ typedef struct _RADEONOutputPrivateRec {
     int               PanelPwrDly;
     int               DotClock;
     RADEONTMDSPll     tmds_pll[4];
-    RADEONTMDSPllType tmds_pll_table;
     /* TV out */
     TVStd             default_tvStd;
     TVStd             tvStd;
diff-tree 0d9087bc60bb95c770b899cfed29699c02bdac49 (from 673f799729824f4439dd5f681f75dd5aab50947f)
Author: Alex Deucher <alex at botch2.(none)>
Date:   Tue Aug 28 23:08:20 2007 -0400

    RADEON: remove some cruft forgotten in a previous commit

diff --git a/src/radeon_output.c b/src/radeon_output.c
index 4df2597..c9b2ec7 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -1973,10 +1973,7 @@ radeon_set_property(xf86OutputPtr output
 	if (value->type != XA_STRING || value->format != 8)
 	    return FALSE;
 	s = (char*)value->data;
-	if (value->size == strlen("default") && !strncmp("default", s, strlen("default"))) {
-	    radeon_output->tvStd = radeon_output->default_tvStd;
-	    return TRUE;
-	} else if (value->size == strlen("ntsc") && !strncmp("ntsc", s, strlen("ntsc"))) {
+	if (value->size == strlen("ntsc") && !strncmp("ntsc", s, strlen("ntsc"))) {
 	    if (radeon_output->SupportedTVStds & TV_STD_NTSC) {
 		radeon_output->tvStd = TV_STD_NTSC;
 		return TRUE;


More information about the xorg-commit mailing list