Comment # 6 on bug 1219180 from Thomas Zimmermann
Here are the results of my investigation so far. The kernel tries to acquire
the UEFI boot framebuffer via find_gop() [1]. It fails for all available
results at the pixel_format test at [2]. The firmware only supports the
BitBlt() EFI call to read/write framebuffer data. It's a boot service, so it's
gone after the kernel initialized. We cannot use it.

I've tested with kernel's going back to v6.4. It's always reproducible.

To fix this problem, we have modify qemu's OVMF firmware to provide a pixel
format and a framebuffer to which we can memcpy(). AFAICT a pixel format of
PIXEL_BIT_MASK [3] would do this.

[1]
https://elixir.bootlin.com/linux/v6.8/source/drivers/firmware/efi/libstub/gop.c#L521
[2]
https://elixir.bootlin.com/linux/v6.8/source/drivers/firmware/efi/libstub/gop.c#L489
[3]
https://elixir.bootlin.com/linux/v6.8/source/drivers/firmware/efi/libstub/efistub.h#L519


You are receiving this mail because: