diff options
-rw-r--r-- | src/i830.h | 1 | ||||
-rw-r--r-- | src/i830_bios.c | 1 | ||||
-rw-r--r-- | src/i830_driver.c | 2 |
3 files changed, 3 insertions, 1 deletions
@@ -434,6 +434,7 @@ typedef struct _I830Rec { int PanelXRes, PanelYRes; /* The BIOS's fixed timings for the LVDS */ + int panel_fixed_clock; int panel_fixed_hactive; int panel_fixed_hblank; int panel_fixed_hsyncoff; diff --git a/src/i830_bios.c b/src/i830_bios.c index 47c39ec3..eb810fca 100644 --- a/src/i830_bios.c +++ b/src/i830_bios.c @@ -157,6 +157,7 @@ i830GetLVDSInfoFromBIOS(ScrnInfoPtr pScrn) /* Since lvds_bdb_2_fp_edid_dtd is just an EDID detailed timing * block, pull the contents out using EDID macros. */ + pI830->panel_fixed_clock = _PIXEL_CLOCK(timing_ptr) / 1000; pI830->panel_fixed_hactive = _H_ACTIVE(timing_ptr); pI830->panel_fixed_hblank = _H_BLANK(timing_ptr); pI830->panel_fixed_hsyncoff = _H_SYNC_OFF(timing_ptr); diff --git a/src/i830_driver.c b/src/i830_driver.c index c6b59708..fccef4a7 100644 --- a/src/i830_driver.c +++ b/src/i830_driver.c @@ -2043,7 +2043,7 @@ i830SetModeToPanelParameters(ScrnInfoPtr pScrn, DisplayModePtr pMode) pMode->VTotal = pI830->panel_fixed_vactive; pMode->VSyncStart = pI830->panel_fixed_vactive + pI830->panel_fixed_vsyncoff; pMode->VSyncEnd = pMode->VSyncStart + pI830->panel_fixed_vsyncwidth; - pMode->Clock = 0; /* XXX */ + pMode->Clock = pI830->panel_fixed_clock; } /** |