[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH 7/7] xen/arm: Blacklist some sun7i UARTs



These are in the same page as the UART which is used as the Xen console. We are
not currently smart enough to avoid passing them through to the guest,
accidentally giving the guest access to the Xen console UART.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
---
v3: Use blacklist dev hook
---
 xen/arch/arm/platforms/sunxi.c |   14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/xen/arch/arm/platforms/sunxi.c b/xen/arch/arm/platforms/sunxi.c
index ee0f39b..3a0ed68 100644
--- a/xen/arch/arm/platforms/sunxi.c
+++ b/xen/arch/arm/platforms/sunxi.c
@@ -28,8 +28,22 @@ static const char const *sunxi_dt_compat[] __initdata =
     NULL
 };
 
+static const struct dt_device_match sunxi_blacklist_dev[] __initconst =
+{
+    /*
+     * These UARTs share a page with the Xen console UART, so we don't
+     * want to map them through.
+     */
+    DT_MATCH_PATH("/soc@01c00000/serial@01c28000"),
+    DT_MATCH_PATH("/soc@01c00000/serial@01c28400"),
+    DT_MATCH_PATH("/soc@01c00000/serial@01c28800"),
+    DT_MATCH_PATH("/soc@01c00000/serial@01c28c00"),
+    { /* sentinel */ },
+};
+
 PLATFORM_START(sunxi, "Allwinner A20")
     .compatible = sunxi_dt_compat,
+    .blacklist_dev = sunxi_blacklist_dev,
 PLATFORM_END
 
 /*
-- 
1.7.10.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.