This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-changelog] [xen-unstable] Fix existence check for MMIO-mapped 16550

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] Fix existence check for MMIO-mapped 16550 UARTs
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Sat, 06 Dec 2008 04:20:23 -0800
Delivery-date: Sat, 06 Dec 2008 04:22:07 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1228390578 0
# Node ID cb289056b5233b6a7799633cefdae41a91f8e071
# Parent  1099be706d4e1ed971e1316ab4303fae274af26d
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

Signed-off-by: Alex Williamson <alex.williamson@xxxxxx>
 xen/drivers/char/ns16550.c |    7 +++++++
 1 files changed, 7 insertions(+)

diff -r 1099be706d4e -r cb289056b523 xen/drivers/char/ns16550.c
--- a/xen/drivers/char/ns16550.c        Thu Dec 04 11:32:43 2008 +0000
+++ b/xen/drivers/char/ns16550.c        Thu Dec 04 11:36:18 2008 +0000
@@ -301,6 +301,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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] Fix existence check for MMIO-mapped 16550 UARTs, Xen patchbot-unstable <=