]> xenbits.xensource.com Git - people/liuw/xen.git/commitdiff
xen/arm: initialize vpl011 flag register
authorJeff Kubascik <jeff.kubascik@dornerworks.com>
Mon, 25 Nov 2019 20:58:00 +0000 (15:58 -0500)
committerJulien Grall <julien@xen.org>
Tue, 3 Dec 2019 11:35:33 +0000 (11:35 +0000)
The tx/rx fifo flags were not set when the vpl011 is initialized. This
is a problem for certain guests that are operating in polled mode, as a
guest will generally check the rx fifo empty flag to determine if there
is data before doing a read. The result is a continuous spam of the
message "vpl011: Unexpected IN ring buffer empty" before the first valid
character is received. This initializes the flag status register to the
default specified in the PL011 technical reference manual.

Signed-off-by: Jeff Kubascik <jeff.kubascik@dornerworks.com>
Acked-by: Julien Grall <julien@xen.org>
xen/arch/arm/vpl011.c

index 7bc5eeb207b67c142297d1d75915c53a1366615d..895f436cc49e22ce0d3625f06d57fe28657edb61 100644 (file)
@@ -668,6 +668,8 @@ int domain_vpl011_init(struct domain *d, struct vpl011_init_info *info)
         goto out2;
     }
 
+    vpl011->uartfr = TXFE | RXFE;
+
     spin_lock_init(&vpl011->lock);
 
     register_mmio_handler(d, &vpl011_mmio_handler,