ia64/xen-unstable

changeset 18865:cb289056b523

Fix existence check for MMIO-mapped 16550 UARTs

Changeset 982e6fce0e47 added an existence test for UARTs.
Unfortunately, the existence test happens before MMIO UARTs are
ioremapped, therefore it may not be probing where it thinks it's
probing. Rather than moving more code around, I think it's probably
safe to assume the arch code knows what it's doing if it passes in an
MMIO UART.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
author Keir Fraser <keir.fraser@citrix.com>
date Thu Dec 04 11:36:18 2008 +0000 (2008-12-04)
parents 1099be706d4e
children 12c0acf08caf
files xen/drivers/char/ns16550.c
line diff
     1.1 --- a/xen/drivers/char/ns16550.c	Thu Dec 04 11:32:43 2008 +0000
     1.2 +++ b/xen/drivers/char/ns16550.c	Thu Dec 04 11:36:18 2008 +0000
     1.3 @@ -303,6 +303,13 @@ static int check_existence(struct ns1655
     1.4      unsigned char status, scratch, scratch2, scratch3;
     1.5  
     1.6      /*
     1.7 +     * We can't poke MMIO UARTs until they get I/O remapped later. Assume that
     1.8 +     * if we're getting MMIO UARTs, the arch code knows what it's doing.
     1.9 +     */
    1.10 +    if ( uart->io_base >= 0x10000 )
    1.11 +        return 1;
    1.12 +
    1.13 +    /*
    1.14       * Do a simple existence test first; if we fail this,
    1.15       * there's no point trying anything else.
    1.16       */