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>
switch ( spcr->type ) {
case SPCR_TYPE_16550:
case SPCR_TYPE_16450:
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;
if ( ( rc = spcr_16550 ( spcr, uart ) ) != 0 )
goto err_type;
break;
/* SPCR interface types */
#define SPCR_TYPE_16550 0x0000 /**< 16550-compatible */
#define SPCR_TYPE_16450 0x0001 /**< 16450-compatible */
/* 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 {
/** SPCR baud rates */
enum spcr_baud {