Wei Hu d9a557896b amd64 loader: Use efiserialio for Hyper-V booted systems
UEFI provides ConIn/ConOut handles for consoles that it supports,
which include the text-video and serial ports. When the serial port
is available, use the UEFI driver instead of direct io-port accesses
to avoid conflicts between the firmware and direct hardware access, as
happens on Hyper-V (Azure) setups.

This change enables efiserialio to be built for efi-amd64 and has
higher order priority vs comconsole, and only uses efiserialio
if the hypervisor is Hyper-V. When efiserialio successfully
probes, it will set efi_comconsole_avail=true which will prevent
comconsole from probing in this setup.

Tested on Hyper-V, ESXi and Azure VMs.

PR:		264267
Reviewed by:	kevans, whu
Tested by:	whu
Obtained from:	Rubicon Communications, LLC (Netgate)
MFC after:	2 weeks
Sponsored by:	Rubicon Communications, LLC (Netgate)
2023-04-03 04:11:49 -04:00
..
2022-07-15 12:00:49 -06:00
2023-04-03 04:10:13 -04:00
2023-02-08 10:33:26 -07:00
2023-01-13 14:22:38 -07:00
2023-02-03 16:35:06 -04:00
2023-02-03 16:35:06 -04:00
2021-12-10 11:05:31 -07:00
2021-12-10 11:05:31 -07:00
2023-02-03 16:35:06 -04:00
2023-02-08 10:33:26 -07:00
2022-07-30 05:01:47 -06:00