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

[Xen-changelog] [xen stable-4.4] xen: arm: implement generic multiboot compatibility strings



commit ad187c347082d2b4cdef1cd47938017693251074
Author:     Ian Campbell <ian.campbell@xxxxxxxxxx>
AuthorDate: Fri Jul 18 14:08:11 2014 +0100
Commit:     Ian Campbell <ian.campbell@xxxxxxxxxx>
CommitDate: Wed Jul 23 09:50:36 2014 +0100

    xen: arm: implement generic multiboot compatibility strings
    
    This causes Xen to accept the more generic names specified in
    http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Multiboot 
as of
    2014-06-06.
    
    These names are more generic than those proposed by Andre in
    http://thread.gmane.org/gmane.linux.linaro.announce.boot/326 and those
    used in earlier drafts of the /Multiboot wiki page.
    
    This will allow bootloaders to not special case Xen (or at least to reduce
    the amount which is required).
    
    Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
    Acked-by: Julien Grall <julien.grall@xxxxxxxxxx>
    (cherry picked from commit a860dfeec090fe46d856b5d3fc6da28ccf7d1ba5)
---
 xen/common/device_tree.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index 55716a8..2ebacb2 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -350,9 +350,11 @@ static void __init process_multiboot_node(const void *fdt, 
int node,
     struct dt_mb_module *mod;
     int len;
 
-    if ( fdt_node_check_compatible(fdt, node, "xen,linux-zimage") == 0 )
+    if ( fdt_node_check_compatible(fdt, node, "xen,linux-zimage") == 0 ||
+         fdt_node_check_compatible(fdt, node, "multiboot,kernel") == 0 )
         nr = MOD_KERNEL;
-    else if ( fdt_node_check_compatible(fdt, node, "xen,linux-initrd") == 0)
+    else if ( fdt_node_check_compatible(fdt, node, "xen,linux-initrd") == 0 ||
+              fdt_node_check_compatible(fdt, node, "multiboot,ramdisk") == 0 )
         nr = MOD_INITRD;
     else
         early_panic("%s not a known xen multiboot type\n", name);
@@ -443,7 +445,8 @@ static int __init early_scan_node(const void *fdt,
 {
     if ( device_tree_node_matches(fdt, node, "memory") )
         process_memory_node(fdt, node, name, address_cells, size_cells);
-    else if ( device_tree_node_compatible(fdt, node, "xen,multiboot-module" ) )
+    else if ( device_tree_node_compatible(fdt, node, "xen,multiboot-module" ) 
||
+              device_tree_node_compatible(fdt, node, "multiboot,module" ))
         process_multiboot_node(fdt, node, name, address_cells, size_cells);
     else if ( depth == 1 && device_tree_node_matches(fdt, node, "chosen") )
         process_chosen_node(fdt, node, name, address_cells, size_cells);
--
generated by git-patchbot for /home/xen/git/xen.git#stable-4.4

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

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