summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@linux.ie>2006-10-23 16:52:07 +1000
committerDave Airlie <airlied@linux.ie>2006-10-24 11:50:55 +1000
commit9cd78af1d06f753e7bd7e1acaff25398bde45f6e (patch)
tree79ef11b73bdf8d23515df756f776a8b23921bf2b
parent914a5f0117ccb76292bdd81ea4a2a79d33319550 (diff)
radeon: set preferred modes
-rw-r--r--src/radeon_driver.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index 28a16723..163d19c7 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -2088,7 +2088,10 @@ static DisplayModePtr RADEONDDCModes(ScrnInfoPtr pScrn)
new->Clock = d_timings->clock / 1000;
new->Flags = (d_timings->interlaced ? V_INTERLACE : 0);
new->status = MODE_OK;
- new->type = M_T_DEFAULT;
+ if (PREFERRED_TIMING_MODE(ddc->features.msc))
+ new->type = M_T_PREFERRED;
+ else
+ new->type = M_T_DEFAULT;
if (d_timings->sync == 3) {
switch (d_timings->misc) {
@@ -2444,6 +2447,9 @@ static int RADEONValidateFPModes(ScrnInfoPtr pScrn, char **ppModeName)
new->Clock = info->DotClock;
new->Flags |= RADEON_USE_RMX;
+ if (width == info->PanelXRes && height == info->PanelYRes)
+ new->type |= M_T_PREFERRED;
+
new->type |= M_T_USERDEF;
new->next = NULL;