WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH] Fix MMIO UARTs

To: Keir Fraser <keir.fraser@xxxxxxxxxx>
Subject: [Xen-devel] [PATCH] Fix MMIO UARTs
From: Alex Williamson <alex.williamson@xxxxxx>
Date: Wed, 03 Dec 2008 16:24:38 -0700
Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Wed, 03 Dec 2008 15:24:56 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: OSLO R&D
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Change set 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>
--

diff -r a00eb6595d3c xen/drivers/char/ns16550.c
--- a/xen/drivers/char/ns16550.c        Sat Nov 29 09:07:52 2008 +0000
+++ b/xen/drivers/char/ns16550.c        Wed Dec 03 16:19:49 2008 -0700
@@ -303,6 +303,14 @@ static int check_existence(struct ns1655
     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.
      */



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] [PATCH] Fix MMIO UARTs, Alex Williamson <=