xen: arm: Load xen under 4GB on 32-bit
authorIan Campbell <ian.campbell@citrix.com>
Wed, 5 Jun 2013 09:08:35 +0000 (10:08 +0100)
committerIan Campbell <ian.campbell@citrix.com>
Fri, 27 Sep 2013 15:39:03 +0000 (16:39 +0100)
We need to be able to use a 1:1 mapping during bring up.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Julien Grall <julien.grall@linaro.org>
Acked-by: Tim Deegan <tim@xen.org>
xen/arch/arm/setup.c

index d97b900e1a968af74a40b8838fa3b6e6a7dcdefc..315fa1d8b8e70169ec52a95b1578642e6cf9c68e 100644 (file)
@@ -323,6 +323,14 @@ static paddr_t __init get_xen_paddr(void)
             if ( !e )
                 continue;
 
+#ifdef CONFIG_ARM_32
+            /* Xen must be under 4GB */
+            if ( e > 0x100000000ULL )
+                e = 0x100000000ULL;
+            if ( e < bank->start )
+                continue;
+#endif
+
             s = e - min_size;
 
             if ( s > paddr )