Headless guests had no console on hosts that provide only
virtio-console and no emulated UART, such as Apple's
Virtualization.framework.
Register the host-designated console ports as system consoles
once DRIVER_OK is set: port 0 without multiport, and any port
named in a VIRTIO_CONSOLE_CONSOLE_PORT event when multiport is
negotiated. Output goes through the transmit virtqueue and
falls back to emerg_wr, if offered, once the host has held
every transmit buffer past VTCON_TX_TIMEOUT. Also, in ddb and
after a panic, the console never waits for the port lock, as
waiting on a holder that may never release it would hang the
console.
The driver attaches after cninit(), so earlier messages appear
only in the message buffer. Set hw.vtcon.console=0 to opt out.