EFI Application Higher Screen ResolutionSupport

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
BaLoo
Posts: 2
Joined: Thu Jun 22, 2017 4:23 am

EFI Application Higher Screen ResolutionSupport

Post by BaLoo »

Hi all,

I've installed refind bootloader and tried to set screen resolution to 1920x1080 in its config file.

But when I booted EFI showed me warning, said that resolution is not supported, and the highest, that was present, was something like 1280x1024.

How can I add support for higher resolutions for my EFI-applications?

Motherboard: ASUS PRIME-Z270-K
User avatar
zaval
Member
Member
Posts: 659
Joined: Fri Feb 17, 2017 4:01 pm
Location: Ukraine, Bachmut
Contact:

Re: EFI Application Higher Screen ResolutionSupport

Post by zaval »

BaLoo wrote:Hi all,

I've installed refind bootloader and tried to set screen resolution to 1920x1080 in its config file.

But when I booted EFI showed me warning, said that resolution is not supported, and the highest, that was present, was something like 1280x1024.

How can I add support for higher resolutions for my EFI-applications?

Motherboard: ASUS PRIME-Z270-K
are you kidding?
what about this line:
EFI showed me warning, said that resolution is not supported
maybe your monitor doesn't support that resloution. or fw by itself doesn't. You shouldn't try to set resolutions which are not supported.

There is such a thing like E-EDID, reading it, FW knows what resolutions are supported by a particular monitor. I think, if it says you this resolution isn't supported, it's a rather obvious situation. where one shouldn't force hw to do what it claims it doesn't support.
ANT - NT-like OS for x64 and arm64.
efify - UEFI for a couple of boards (mips and arm). suspended due to lost of all the target park boards (russians destroyed our town).
BaLoo
Posts: 2
Joined: Thu Jun 22, 2017 4:23 am

Re: EFI Application Higher Screen ResolutionSupport

Post by BaLoo »

My monitor definitely does support that resolution.

I was wondering if I could add support for higher resolution for my firmware or not.
User avatar
zaval
Member
Member
Posts: 659
Joined: Fri Feb 17, 2017 4:01 pm
Location: Ukraine, Bachmut
Contact:

Re: EFI Application Higher Screen ResolutionSupport

Post by zaval »

BaLoo wrote:My monitor definitely does support that resolution.

I was wondering if I could add support for higher resolution for my firmware or not.
then you have a crappy UEFI implementation, that disrespect monitor capabilities. There is such a thing as "efi override edid" protocol, which basically allows to ignore what the monitor has reported.

if you are writing an efi application, you can inspect all this. Information needed is presented in section 11.9 of the UEFI specification, Graphics Output Protocol.
ANT - NT-like OS for x64 and arm64.
efify - UEFI for a couple of boards (mips and arm). suspended due to lost of all the target park boards (russians destroyed our town).
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: EFI Application Higher Screen ResolutionSupport

Post by Brendan »

Hi,
BaLoo wrote:I've installed refind bootloader and tried to set screen resolution to 1920x1080 in its config file.

But when I booted EFI showed me warning, said that resolution is not supported, and the highest, that was present, was something like 1280x1024.
Note that for a video mode to work, what matters is that both the video card and the monitor support the same video mode timing. For a simple example, if the video card only supports "1920x1080 at 60 Hz" and the monitor only supports "1920x1080 at 90 Hz", then these video mode timings don't match and the video mode can't work. The reality is that there's an almost infinite number of potential timings (with different pixel clocks, different vertical and horizontal blanking periods, different vertical and horizontal sync pulse styles and polarities, etc) that all work out to "1920x1080 at 60 Hz" (plus multiple actual standards, de-facto standards and ways to handle non-standard timings to attempt to make compatibility possible).

Also; the video card's ROM often only supports a small number of "pre-configured at the factory" video mode timings and won't configure the hardware to match arbitrary video mode timings reported by the monitor. This means that it's possible for both the video card and the monitor to support a video mode timing, but that video mode timing isn't in the video card's "pre-configured at the factory" list, so UEFI isn't able to use that video mode timing.

I would assume that this is the problem you're having - the video card ROM's "pre-configured at the factory" list doesn't contain any video mode timings for "1920*1080" that the monitor supports. In this case, in theory, you might be able to fix the problem by updating the video card's ROM. However, in practice, you probably won't be able to find a newer/better video card ROM (because most major OSs have native video drivers the video card's ROM only matters during early boot, so there's very little incentive for the video card manufacturers to provide video card ROM updates).


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Post Reply