On Jun 4, 2014, at 10:35 AM, Olivier Martin <olivier.mar...@arm.com> wrote:
> I tend to agree for the PCDs.
> My use case was I was debugging a third-party platform that was not
> implementing the GOP protocol (Get/SetMode() functions) correctly. And for
> some this reason the code path ends up in this condition.
> In my opinion, this CheckModeSupported (800x600) should be removed. If the
> initialization did not manage to set the resolution earlier then it would
> probably fail on this tentative too.
>
Given the wording in the UEFI spec I think ti would be better probe 800x600,
and then 640x480 on failure, but have a PCD flag to turn this probing off. So
for the “Onboard graphics device” case you could turn off the PCD, and for the
Plug In graphics device case you could turn it on.
Thanks,
Andrew Fish
>
> From: Andrew Fish [mailto:af...@apple.com]
> Sent: 04 June 2014 18:07
> To: edk2-devel@lists.sourceforge.net
> Subject: Re: [edk2] MdeModulePkg/GraphicsConsoleDxe: Question about UEFI
> 'required' resolution
>
>
> On Jun 4, 2014, at 9:49 AM, Olivier Martin <olivier.mar...@arm.com> wrote:
>
>
> Yes, I saw this requirement. But in this case why 800x600 and not 640x480? Or
> even trying both?
> If my platform supports 640x480 and not 800x600 and for some strange reason
> it goes in this part of the code it would fail. Even if it is compliant with
> the UEFI spec.
> And actually it might even be a onboard graphics device where no explicit
> resolution is required.
>
>
> I think the PCDs are intended to cover a majority of the cases. But yes it
> seems reasonable to try 800x600 and then fallback to 640x480.
>
> HorizontalResolution = PcdGet32 (PcdVideoHorizontalResolution);
> VerticalResolution = PcdGet32 (PcdVideoVerticalResolution);
>
>
> Thanks,
>
>
> Andrew Fish
>
>
> Thanks,
> Olivier
>
> From: Andrew Fish [mailto:af...@apple.com]
> Sent: 04 June 2014 16:50
> To: edk2-devel@lists.sourceforge.net
> Subject: Re: [edk2] MdeModulePkg/GraphicsConsoleDxe: Question about UEFI
> 'required' resolution
>
>
> On Jun 4, 2014, at 8:27 AM, Olivier Martin <olivier.mar...@arm.com> wrote:
>
>
>
> I am a bit confused by one of the comment in
> MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.c.
> The comment at line 480
> (https://github.com/tianocore/edk2/blob/master/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.c#L480)
> is:
>
> //
> // if not supporting current mode, try 800x600 which is required by
> UEFI/EFI spec
> //
> Status = CheckModeSupported (
> Private->GraphicsOutput,
> 800,
> 600,
> &ModeNumber
> );
>
> I can see a requirement on 80x25 in 11.4 Simple Text Output Protocol but I
> have not found the requirement on 800 x 600.
> I might have done a search on the wrong keywords (I tried ‘600’ and VGA).
>
>
> There is more wiggle room in the current spec. But look at.
>
> UEFI 2.4 11.10 Rule for PCI/AGP Devices
> ...
>
> A video device can support an arbitrary number of geometries, but it must
> support one or more of the following modes to conform to this specification:
> Onboard graphics device
> • A mode required in a platform design guide
> • Native mode of the display
> Plug in graphics device
> • A mode required in a platform design guide
> • 800 x 600 with 32-bit color depth or 640 x 480 with 32-bit color depth and
> a pixel format described by PixelRedGreenBlueReserved8BitPerColor or
> PixelBlueGreenRedReserved8BitPerColor.
>
> Thanks,
>
> Andrew Fish
>
>
>
> There is a similar comment at line 527
> (https://github.com/tianocore/edk2/blob/master/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.c#L527).
>
> If the comments are wrong then 800x600 should maybe be replaced by PcdGet32
> (PcdVideoHorizontalResolution)x PcdGet32 (PcdVideoVerticalResolution).
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/NeoTech_______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/NeoTech_______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/NeoTech_______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/NeoTech
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel