freebsd-dev/stand/i386
Wei Hu 927358dd98 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-03-18 07:07:35 +00:00
..
boot0 stand: Document that boot0 uses BIOS 2022-08-26 22:17:56 -06:00
boot0sio
boot2 Adjust parse() definition in boot2 to avoid clang 15 warning 2022-07-15 21:18:28 +02:00
btx
cdboot
common loader: edd_device_path_v3 is too small 2020-10-12 09:34:50 +00:00
gptboot gptboot.8: Fix a typo and fix lint warnings 2022-03-18 11:35:04 +01:00
gptzfsboot loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
isoboot Don't add -Winline for WARNS=6 2021-03-22 11:55:45 +00:00
libi386 amd64 loader: Use efiserialio for Hyper-V booted systems 2023-03-18 07:07:35 +00:00
loader loader: always install help files 2023-02-03 16:35:06 -04:00
loader_4th
loader_lua
loader_simp
mbr
pmbr Fix pmbr issues > 2TB 2021-07-13 15:40:44 -06:00
pxeldr stand: Go back to a.out format for /boot/loader 2022-08-11 17:29:10 -06:00
zfsboot stand: Create common gen_setcurrdev and replace code 2023-01-11 15:15:14 -07:00
boot.ldscript
Makefile stand: Remove i386-only support fire firewire 2022-11-18 10:43:59 -07:00
Makefile.inc stand: Remove i386-only support fire firewire 2022-11-18 10:43:59 -07:00