Page 1 of 1

UEFI GOP strange behavior

Posted: Sat Dec 14, 2013 6:41 am
by psdgijdfi
Hi.
I'm working on implementing UEFI graphics output protocol.
I read the GOP structure to get framebuffer size. It works on VMware, but when I change the resolution, the framebuffer size remains the same (3145728 = 3MiB).
Also, the framebuffer size reported by virtualbox is strangely big.

What is the problem?

Thanks in advance.
20131214_001_virtualbox_malfunction.png

Re: UEFI GOP strange behavior

Posted: Sun Dec 15, 2013 6:06 am
by Combuster
1024x768x4 = 3MB so that's not surprising.

Your base and size printed in the screenshot look like garbage, which means you're probably not getting that information out correctly.

Re: UEFI GOP strange behavior

Posted: Sun Dec 15, 2013 7:58 am
by psdgijdfi
Actually, the base address is correct (it is hexadecimal). I checked the address by filling the screen.

It is strange because the base address and the framebuffer size information is in the same structure, but only one of them is correct.

And, I meant this strange situation. Even though I changed the resolution to 1920x1080x32, the buffer size remains the same. :(

Re: UEFI GOP strange behavior

Posted: Mon Dec 16, 2013 7:20 am
by feryno
Maybe it is related to VMware emulator - only its UEFI firmware.
How does it behave on real hardware?