Hi:
         You would use GraphicsOutputProtocol->QueryMode to get all the 
resolutions at first, these resolutions returned  has been supported by both 
monitor and video controller, then you can do like GraphicsConsole.c does to 
find the highest resolution:
      MaxMode = Private->GraphicsOutput->Mode->MaxMode;

      for (ModeIndex = 0; ModeIndex < MaxMode; ModeIndex++) {
        Status = Private->GraphicsOutput->QueryMode (
                           Private->GraphicsOutput,
                           ModeIndex,
                           &SizeOfInfo,
                           &Info
                           );
        if (!EFI_ERROR (Status)) {
          if ((Info->HorizontalResolution >= HorizontalResolution) &&
              (Info->VerticalResolution >= VerticalResolution)) {
            HorizontalResolution = Info->HorizontalResolution;
            VerticalResolution   = Info->VerticalResolution;
            ModeNumber           = ModeIndex;
          }
          FreePool (Info);
        }
      }
         What is your purpose? If you want to let BiosVideo driver to set video 
mode to highest resolution directly, you could set PcdVideoHorizontalResolution 
and PcdVideoVerticalResolution to 0x0 to make BiosVideo to set highest 
resolution.

Thanks
Elvin
From: Hawk [mailto:[email protected]]
Sent: Tuesday, November 27, 2012 9:54 AM
To: [email protected]
Subject: [edk2] Question about BIOS Video Driver

Hi Experts,

In ParseEdidData() in 
IntelFrameworkModulePkg\Csm\BiosThunk\VideoDxe\BiosVideo.c, the EDID 
information pointed by EdidBuffer is in the format of VBE 3.0 and retrieved by 
int 10 4F15. According to the definition of following timing fields, 1280*1024 
should be the highest resolution to be supported in this way.

EstablishedTimings[0]:
Bitfields for DPMS established timings 1:
Bit(s)         Description
0     720x400 @ 70 Hz (VGA 640x400, IBM)
1     720x400 @ 88 Hz (XGA2)
2     640x480 @ 60 Hz (VGA)
3     640x480 @ 67 Hz (Mac II, Apple)
4     640x480 @ 72 Hz (VESA)
5     640x480 @ 75 Hz (VESA)
6     800x600 @ 56 Hz (VESA)
7     800x600 @ 60 Hz (VESA)

EstablishedTimings[1]:
Bitfields for DPMS established timings 2:
Bit(s)         Description
0     800x600 @ 72 Hz (VESA)
1     800x600 @ 75 Hz (VESA)
2     832x624 @ 75 Hz (Mac II)
3     1024x768 @ 87 Hz interlaced (8514A)
4     1024x768 @ 60 Hz (VESA)
5     1024x768 @ 70 Hz (VESA)
6     1024x768 @ 75 Hz (VESA)
7     1280x1024 @ 75 Hz (VESA)

Our question is if there is one way to retrieve the information about higher 
resolution, if it's supported by video output device?


Thanks,
Hawk.
------------------------------------------------------------------------------
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to