mirror of
https://github.com/ipxe/ipxe
synced 2026-01-22 03:32:59 +03:00
[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:
@@ -143,6 +143,7 @@ static struct uart * spcr_console ( void ) {
|
|||||||
switch ( spcr->type ) {
|
switch ( spcr->type ) {
|
||||||
case SPCR_TYPE_16550:
|
case SPCR_TYPE_16550:
|
||||||
case SPCR_TYPE_16450:
|
case SPCR_TYPE_16450:
|
||||||
|
case SPCR_TYPE_16550_GAS:
|
||||||
if ( ( rc = spcr_16550 ( spcr, uart ) ) != 0 )
|
if ( ( rc = spcr_16550 ( spcr, uart ) ) != 0 )
|
||||||
goto err_type;
|
goto err_type;
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -74,6 +74,7 @@ struct spcr_table {
|
|||||||
/* SPCR interface types */
|
/* SPCR interface types */
|
||||||
#define SPCR_TYPE_16550 0x0000 /**< 16550-compatible */
|
#define SPCR_TYPE_16550 0x0000 /**< 16550-compatible */
|
||||||
#define SPCR_TYPE_16450 0x0001 /**< 16450-compatible */
|
#define SPCR_TYPE_16450 0x0001 /**< 16450-compatible */
|
||||||
|
#define SPCR_TYPE_16550_GAS 0x0012 /**< 16550-compatible */
|
||||||
|
|
||||||
/** SPCR baud rates */
|
/** SPCR baud rates */
|
||||||
enum spcr_baud {
|
enum spcr_baud {
|
||||||
|
|||||||
Reference in New Issue
Block a user