Skip to content

real-hw-test: init - #71

Draft
phip1611 wants to merge 14 commits into
rust-osdev:mainfrom
phip1611:real-hw-test
Draft

real-hw-test: init#71
phip1611 wants to merge 14 commits into
rust-osdev:mainfrom
phip1611:real-hw-test

Conversation

@phip1611

Copy link
Copy Markdown
Member

Init a new crate member that builds a EFI file that can be easily booted on real hardware.

Manual hardware checks can wait forever for an operator. Disable the
UEFI image watchdog so a long session does not reset the machine.
Report firmware failures on screen.
Build a feature-gated, non-interactive image and run it under TCG.
Require automatic checks for legacy COM1 and a PCI UART. QEMU
debug-exit provides the deterministic job result.
MMIO addresses do not describe a Rust allocation, so use the wrapping
pointer primitive rather than an in-bounds pointer offset. The UART
constructor already rejects a register range that would wrap.
@phip1611
phip1611 marked this pull request as draft August 16, 2026 15:24
Mirror every test diagnostic to a dated file below
/uart_16550_test_logs while retaining UEFI console output. Keep one
flushed FAT file handle so a failed write is reported as critical and
aborts the test instead of losing failure evidence.
A real UART can still be draining the byte accepted by try_send_byte
when send_bytes is called. Retry the nonblocking API for one second
instead of treating temporary backpressure as a driver failure.

Preserve an earlier modem-signal warning if a later driver check fails.
Report the dated USB-drive log path before each normal test exit. This
keeps the result on screen when the automated checks fail as well as
when they complete successfully.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant