HomeFreeBSD

Support multiple OPAL consoles, and don't crash if uart is not stdout

Description

Support multiple OPAL consoles, and don't crash if uart is not stdout

Summary: If the chosen console is not the OPAL uart, but OPAL uart devices
exist, the console device doesn't attach properly, and faults in the interrupt
handler, with a NULL pointer dereference. To fix this, and as a byproduct, also
support multiple OPAL consoles, refactor to have the console getc callback use
the appropriate softc instead of the global console_sc, which may be NULL in the
case of a different device being the console.

Reviewed by: nwhitehorn
Differential Revision: https://reviews.freebsd.org/D16071