Hi all,

I have recently attempted to install OpenBSD on QEMU, using UEFI boot
and OVMF/TianoCore. I configured OVMF to have a resolution of 1440x900,
which mapped to GOP mode 18.

boot(8) kept this resolution. When booting, efifb then uses the largest
possible resolution that is exposed by the QEMU "std" video driver via
OVMF, which is a very high resolution that is at most appropriate for
people equipped with 4K monitors.

I can override this with machine gop 18 (or whatever resolution is
desired).

I have traced this back to sys/arch/amd64/stand/efiboot/efiboot.c lines
855-868: When no GOP mode is specified, gopmode == -1.  In this case,
the code probes for the largest possible resolution available and sets
it as the resolution passed on boot. The machine gop 18 command forces
the gopmode variable and bypasses this auto-detection.

However, I do not understand the reason that this auto-detection code
was added for. Why is the GOP mode forwarded from UEFI not used
directly? Why bother with finding the greatest possible resolution and
then using that? Isn't it the job of UEFI to find this out for you?

Thank you for your time. Apologies if this was already answered on the
mailing lists and I failed to find the pertinent conversation(s).

Cheers,

Mark 'pandame' Rogers

Reply via email to