On Tue, 2019-01-22 at 16:13 +0000, Ni, Ray wrote: > David, > I'd like to re-start the discussion. > Could you please kindly explain the background/reason of adding CSM > support in OVMF? > Maybe knowing the reason can help to make further decisions of > whether to > A. keep it outside OvmfPkg > B. keep it inside OvmfPkg > C. maybe have a chance to just remove the CSM support after > revisiting The idea was to make it simple to have a single firmware image for virtual machines which would support both UEFI and Legacy boot for guests simultaneously. In libvirt there has been an alternative approach, where the BIOS image is switched between OVMF and SeaBIOS according to the configuration of the guest VM. That's fine for libvirt, but in situations where VM hosting is provided as a service, it becomes quite painful to manage the 'UEFI' vs. 'Legacy' flags on guest images and then switch firmware images accordingly. A one-size-fits-all BIOS using OVMF+CSM is very much preferable.