Re: EFI shell with microvm


Boeuf, Sebastien
 

On Fri, 2022-01-07 at 13:07 +0100, kraxel@... wrote:
  Hi,

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.
Ok, doing it microvm-style makes sense then.
Ok thanks for the confirmation. Hopefully it won't conflict with what
QEMU uses/needs.


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.
tianocore doesn't use interrupts (other than timer).
Yes I realized that by diving into the code. I can see microvm using
the Xen timer while OvmfPkgX64 uses 8254 PIT.


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.
PIC is optional for microvm too, and everything works fine for me
with
"-machine microvm,rtc=on,pic=off,pit=off"
Yes that's interesting and after some investigations I think the
problem is that I don't get TerminalConInTimerHandler handler to be
triggered. I can see the handler is correctly registered but for some
reasons, it's never used. I'm wondering if that might be an issue
related to a lack of timer support. Especially I see the UEFI service
SetTimer() is being used for the polling mechanism, so I wonder what is
the backend for it.


take care,
  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.