Buffer early log messages for future display (#936)
* The early logger can now be initialized without serial port output sinks, in which case it saves logged messages to an internal statically-sized memory buffer. * This allows Theseus to preserve early log messages on some architectures like aarch64, where memory mgmt is required to access early I/O devices like serial ports. * The early log buffer is then outputted after being re-initialized with actual serial port outputs. * The early log will be truncated if too many messages are logged and there is insufficient space to buffer them. Currently the buffer is 16KiB on aarch64 and 0 on x86_64. * Logger initialization functions are now infallible. * Makefile: added `gdb_aarch64` command to make it easier to start GDB and connect it to Theseus on aarch64 QEMU. --------- Co-authored-by: Kevin Boos <kevinaboos@gmail.com> 9b941bc435093585473c417b4138191b5dfc0828
K
kevinaboos committed
4292cf81f7bf2cee68586dd3bed994b89bbd57f9
Parent: 3928b90