Re: EFI shell with microvm


Boeuf, Sebastien
 

On Thu, 2022-01-06 at 13:44 +0100, kraxel@... wrote:
On Thu, Jan 06, 2022 at 11:25:37AM +0000, Boeuf, Sebastien wrote:
Hi Gerd,

I was looking at a way to add support for EFI shell interaction
with Cloud Hypervisor when
I realized you added the support for microvm with commit
55f47d22998.
I have been able to hack OvmfPkgX64 similarly to get it to work,
but here are two follow up
questions:
How do you want interact?  Serial console?  That should work just
fine
with OvmfPkgX64.
Yes I'd like to use the serial console (available on PIO 0x3f8) to
interact with the EFI shell.


qemu-system-x86_64 -nographic -bios
Build/OvmfX64/DEBUG_GCC5/FV/OVMF.fd -net none

Possibly you have to add the cloud hypervisor pci id somewhere so isa
lpc and serial line driver are initialized properly.  SioBusDxe looks
like a hot candidate.

microvm has no lpc bridge, so I had to do it in a different way ...
Cloud Hypervisor doesn't emulate any LPC bridge or ISA bus.


2. I can see the shell but I can't interact with it, do you have a
similar behavior with microvm
or is it because I'm missing the interrupt support?
Works fine for me.

qemu-system-x86_64 -nographic -machine microvm,rtc=on -bios
Build/MicrovmX64/DEBUG_GCC5/FV/MICROVM.fd
Thanks for the confirmation, something might be wrong with the
interrupt used for my serial device.
Cloud Hypervisor only has an IOAPIC, it doesn't rely on any PIC, which
is why I'm not sure what might be missing to get the EFI shell to
receive the interrupts.


HTH,
  Gerd
---------------------------------------------------------------------
Intel Corporation SAS (French simplified joint stock company)
Registered headquarters: "Les Montalets"- 2, rue de Paris,
92196 Meudon Cedex, France
Registration Number: 302 456 199 R.C.S. NANTERRE
Capital: 4,572,000 Euros

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

Join devel@edk2.groups.io to automatically receive all group messages.