mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
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>
This commit is contained in:
1 parent
69dff7d532
commit
512ceccfaa
1 file changed
+7
@@ -302,6 +302,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.
|
||||
|
||||