loader.efi: use libi386/comconsole with x86
On some x86 systems the UEFI serial io protocol is failing to recognize input, we can not reliably use SIO protocol on x86. For time being set EFI implementation aside and use libi386 version.
Rename multiboot.S to mb_header.S to reflect the reality.
Replace NO_PCI with EFI in comconsole.c
Testing done: John Levon did post report about Dell, but also I need to add that FreeBSD x86 uefi platform is using libi386 version (SIO version is being ported there to support arm systems).
Updated by John Levon over 3 years ago
Specifically I see this on a Dell R730. With any serial config I could find, input never works at all in loader. iPXE has the same apparent issue on this system.
This change simply stops using the EFI interfaces for the serial console, falling back to the legacy implementation, which is reliable.
Updated by Toomas Soome over 3 years ago
- Description updated (diff)
Updated by Electric Monk over 3 years ago
- Status changed from In Progress to Closed
- % Done changed from 80 to 100
git commit 5ac07b12fb4c39cb2415c0997f7c5b4dd5209f96
commit 5ac07b12fb4c39cb2415c0997f7c5b4dd5209f96 Author: Toomas Soome <email@example.com> Date: 2019-12-06T15:41:45.000Z 12058 loader.efi: use libi386/comconsole with x86 Reviewed by: John Levon <firstname.lastname@example.org> Approved by: Dan McDonald <email@example.com>