]> xenbits.xensource.com Git - people/dwmw2/xen.git/commitdiff
xen/arm: use correct device tree root node name
authorWill Abele <will.abele@starlab.io>
Tue, 9 Jul 2019 13:22:23 +0000 (13:22 +0000)
committerJulien Grall <julien.grall@arm.com>
Tue, 9 Jul 2019 14:16:43 +0000 (15:16 +0100)
The root node of a device tree should not have a node name. This is
specified in section 2.2.1 of version 0.2 of the device tree
specification, available from devicetree.org.

Linux Kernel versions prior to 4.15 misinterpret flattened device trees
with a "/" as the name of the root node as an FDT version older than 16.
Linux then fails to parse the FDT.

Signed-off-by: Will Abele <will.abele@starlab.io>
Reviewed-by: Julien Grall <julien.grall@arm.com>
xen/arch/arm/acpi/domain_build.c
xen/arch/arm/domain_build.c

index 5aae32ac205d7547710fcbab860f09d80fad85c0..1b1cfabb009de5b6a086b9998683b63d590254e0 100644 (file)
@@ -145,7 +145,7 @@ static int __init create_acpi_dtb(struct kernel_info *kinfo,
     if ( ret < 0 )
         goto err;
 
-    ret = fdt_begin_node(kinfo->fdt, "/");
+    ret = fdt_begin_node(kinfo->fdt, "");
     if ( ret < 0 )
         goto err;
 
index 16ce5222ca21cdde285326b3dedf907cb3d6d504..c1981836a6b8746e3a3a9eb40342e940a062b3b6 100644 (file)
@@ -1715,7 +1715,7 @@ static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo)
     if ( ret < 0 )
         goto err;
 
-    ret = fdt_begin_node(kinfo->fdt, "/");
+    ret = fdt_begin_node(kinfo->fdt, "");
     if ( ret < 0 )
         goto err;