diff options
-rw-r--r-- | xen/drivers/char/ns16550.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c index 6d5f90638b..1f88907008 100644 --- a/xen/drivers/char/ns16550.c +++ b/xen/drivers/char/ns16550.c @@ -303,6 +303,13 @@ static int check_existence(struct ns16550 *uart) unsigned char status, scratch, scratch2, scratch3; /* + * We can't poke MMIO UARTs until they get I/O remapped later. Assume that + * if we're getting MMIO UARTs, the arch code knows what it's doing. + */ + if ( uart->io_base >= 0x10000 ) + return 1; + + /* * Do a simple existence test first; if we fail this, * there's no point trying anything else. */ |