[spcr] Accept alternative type value for a 16550-compatible UART

Some systems (observed on an AWS EC2 m7i.metal-24xl instance in
eu-south-2) use the newer "16550-compatible with parameters defined in
Generic Address Structure" type value.  (There does not appear to be
any particular reason why the newer value needs to be used: the UART
is still a standard 16550 with single-byte registers.)

Accept this additional type value for a 16550-compatible UART.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown
2025-11-05 20:06:53 +00:00
parent 6d9374e5a3
commit b41bda4413
2 changed files with 2 additions and 0 deletions

View File

@@ -143,6 +143,7 @@ static struct uart * spcr_console ( void ) {
switch ( spcr->type ) {
case SPCR_TYPE_16550:
case SPCR_TYPE_16450:
case SPCR_TYPE_16550_GAS:
if ( ( rc = spcr_16550 ( spcr, uart ) ) != 0 )
goto err_type;
break;

View File

@@ -74,6 +74,7 @@ struct spcr_table {
/* SPCR interface types */
#define SPCR_TYPE_16550 0x0000 /**< 16550-compatible */
#define SPCR_TYPE_16450 0x0001 /**< 16450-compatible */
#define SPCR_TYPE_16550_GAS 0x0012 /**< 16550-compatible */
/** SPCR baud rates */
enum spcr_baud {