[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-3.2-testing] Fix existence check for MMIO-mapped 16550 UARTs
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1228919608 0 # Node ID 836852a3602e18345f51dae36f9a5f626806cd35 # Parent 081f81f3e6cc443a4919298a482a729dd0e01764 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@xxxxxx> xen-unstable changeset: 18861:cb289056b5233b6a7799633cefdae41a91f8e071 xen-unstable date: Thu Dec 04 11:36:18 2008 +0000 --- xen/drivers/char/ns16550.c | 7 +++++++ 1 files changed, 7 insertions(+) diff -r 081f81f3e6cc -r 836852a3602e xen/drivers/char/ns16550.c --- a/xen/drivers/char/ns16550.c Mon Dec 01 11:35:19 2008 +0000 +++ b/xen/drivers/char/ns16550.c Wed Dec 10 14:33:28 2008 +0000 @@ -299,6 +299,13 @@ static int check_existence(struct ns1655 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, _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |