intel_extreme: sanitize BIOS mode.

* For LVDS output, the sync parameters aren't really used which is why the mode
  set from the BIOS might not be valid if the PLL hardware would actually be
  used.
* Therefore, we sanitize this mode to make sure it's within allowed parameters
  so that intel_set_mode() will accept it.
* This should fix at least #8132, and #8796.
* Sorry for looking into this so late! I obviously messed up testing this
  before, as my EeePC 900 was actually affected by this, too.
This commit is contained in:
Axel Dörfler 2013-03-10 16:54:09 +01:00
parent 087341fcfb
commit e43a7e3db6

View File

@ -632,6 +632,11 @@ save_lvds_mode(void)
// dump currently programmed mode.
display_mode biosMode;
retrieve_current_mode(biosMode, INTEL_DISPLAY_B_PLL);
sanitize_display_mode(biosMode);
// The BIOS mode may not be a valid mode, as LVDS output does not
// really care about the sync values
gInfo->lvds_panel_mode = biosMode;
}