opnsense-src/stand
Ad Schellevis 56b85fc10c stand: add EFI support for mmio serial consoles
When no legacy serial is found, we may be looking at a non-legacy mmio
serial device mapping, in which case the efi_devpath_name() for name
ConOutDev looks like this:

    VenHw(XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX,0090DCFE00000000)/Uart(115200,8,N,1)/VenVt100()

Which should tell the kernel to attach a console to 0xfedc9000
(little endian 64 bit value).  The value is stored behind the
VENDOR_DEVICE_PATH struct as a byte stream hence we need to check
if said address is appended behind the node.  Also enforce use for
uart by requiring the console speed read from the same device.

There is no scientific process for "rs:2" derivation, but evidence would
indicate that this is the correct setting for existing MMIO EFI consoles.

See also: http://bsdimp.blogspot.com/2018/07/how-to-get-memory-mapped-serial-console.html
2025-07-09 10:05:48 +02:00
..
arm64 stand: Automated cleanup of cdefs and other formatting 2024-04-15 20:32:05 -06:00
common stand: Add support for 64-bit machines with 32-bit UEFI implementations 2025-03-25 19:28:38 -06:00
defaults loader.conf.5: Correct terminal size 2025-03-25 19:28:37 -06:00
efi stand: add EFI support for mmio serial consoles 2025-07-09 10:05:48 +02:00
fdt libsa: Remove redundant sys/cdefs.h 2024-04-16 13:54:26 -06:00
ficl stand: Remove dangling mips references 2024-04-16 13:54:28 -06:00
ficl32 Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
fonts Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
forth loader/4th: Move from hint.acpi.0.rsdp to acpi.rsdp 2024-12-28 11:13:19 -07:00
i386 cdboot.8: Initial manual page 2025-05-21 22:58:21 -04:00
images stand: Fix logo alpha 2024-07-29 18:37:09 +02:00
kboot loader.kboot: smbios: Add a comment about v3 entry point being favored 2025-04-08 15:38:29 +02:00
kshim stand/kshim: Replace devclass_equal with calls to strcmp 2025-02-27 10:25:39 -05:00
liblua stand: Spell LUA_COMPILE_SET correctly. 2024-05-20 19:08:53 +02:00
liblua32 Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
libofw libsa: Remove redundant sys/cdefs.h 2024-04-16 13:54:26 -06:00
libsa loader: Add the CPU identification string to the data which is visible 2025-04-20 00:01:18 -07:00
libsa32 Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
lua stand/lua manuals: Describe better 2025-05-21 22:58:35 -04:00
man Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
powerpc ports/filesystems: Fix fallout 2025-02-26 20:14:37 -05:00
uboot loader: Bump all versions to 3.0 2024-08-01 08:49:54 -06:00
usb stand/usb: Quiet warnings so this builds again 2025-02-27 10:25:10 -05:00
userboot loader: Bump all versions to 3.0 2024-08-01 08:49:54 -06:00
defs.mk stand/efi: Add a 32-bit variant of libefi 2025-03-25 19:28:38 -06:00
fdt.mk stand: Rename LIBFDT to LIBSAFDT 2023-11-16 10:18:58 -05:00
ficl.mk Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
loader.mk Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
lua.mk Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
Makefile stand/efi: Add a 32-bit variant of libefi 2025-03-25 19:28:38 -06:00
Makefile.amd64 Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
Makefile.inc Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
veriexec.mk libsecureboot do not report expected unverified files 2024-04-16 13:54:22 -06:00