On Thu, 12 Dec 2019 at 23:23, Arvind Sankar <nivedita@xxxxxxxxxxxx> wrote: > > Since commit 38cb5ef4473c ("X86: Improve GOP detection in the EFI boot > stub") we check for a GOP device that implements ConOut protocol to find > our primary output device. The commit log says that this was done to > avoid problems with the ConSplitter device, which exports a virtual GOP > interface. The original version by Matt Fleming checked for PCIIO > protocol, with a note that says there are some Apple machines have GOPs > without hardware, I assume that that was the same case, GOPs from > ConSplitter. > > However, since commit 540f4c0e894f ("efi/libstub: Skip GOP with > PIXEL_BLT_ONLY format") we skip GOP's that don't have a framebuffer. > > Looking at the EDK2 implementation of ConSplitter, the virtual GOP will > advertise a framebuffer iff it is attached to exactly one GOP device, in > which case it passes through all the information. If it is attached to a > UGA device or to more than one GOP, it will show as a non-framebuffer > GOP, so we will skip it anyway in those cases. > > Given that, is it still necessary to check for conout at all, or would > it be enough to rely on the framebuffer check? > If it doesn't hurt to check, I'd prefer to keep it in. UEFI is a can of worms, given how many buggy implementations exist in the field.