diff --git a/tools/libxc/include/xc_dom.h b/tools/libxc/include/xc_dom.h
index 6ebe946..746cce2 100644
--- a/tools/libxc/include/xc_dom.h
+++ b/tools/libxc/include/xc_dom.h
@@ -227,16 +227,16 @@ struct xc_dom_image {
  * be required in the future if there are alignment changes.
  */
 struct hvm_start_info {
-    uint32_t magic;             /* Contains the magic value 0x336ec578       */
-                                /* ("xEn3" with the 0x80 bit of the "E" set).*/
-    uint32_t version;           /* Version of this structure.                */
-    uint32_t flags;             /* SIF_xxx flags.                            */
-    uint32_t cmdline_paddr;     /* Physical address of the command line.     */
-    uint32_t nr_modules;        /* Number of modules passed to the kernel.   */
-    uint32_t modlist_paddr;     /* Physical address of an array of           */
-                                /* hvm_modlist_entry.                        */
-    uint32_t rsdp_paddr;        /* Physical address of the RSDP ACPI data    */
-                                /* structure.                                */
+    uint64_t magic;         /* Contains the magic value 0x746f6f62336ec578   */
+                            /* ("xEn3boot" with the 0x80 bit of the "E" set).*/
+    uint64_t version;       /* Version of this structure.                    */
+    uint64_t flags;         /* SIF_xxx flags.                                */
+    uint64_t cmdline_paddr; /* Physical address of the command line.         */
+    uint64_t nr_modules;    /* Number of modules passed to the kernel.       */
+    uint64_t modlist_paddr; /* Physical address of an array of               */
+                            /* hvm_modlist_entry.                            */
+    uint64_t rsdp_paddr;    /* Physical address of the RSDP ACPI data        */
+                            /* structure.                                    */
 } __attribute__((packed));
 
 struct hvm_modlist_entry {
diff --git a/xen/include/public/xen.h b/xen/include/public/xen.h
index 435d789..59f3c2f 100644
--- a/xen/include/public/xen.h
+++ b/xen/include/public/xen.h
@@ -814,23 +814,23 @@ typedef struct start_info start_info_t;
  *
  *  0 +----------------+
  *    | magic          | Contains the magic value XEN_HVM_START_MAGIC_VALUE
- *    |                | ("xEn3" with the 0x80 bit of the "E" set).
- *  4 +----------------+
+ *    |                | ("xEn3boot" with the 0x80 bit of the "E" set).
+ *  8 +----------------+
  *    | version        | Version of this structure. Current version is 0. New
  *    |                | versions are guaranteed to be backwards-compatible.
- *  8 +----------------+
+ * 16 +----------------+
  *    | flags          | SIF_xxx flags.
- * 12 +----------------+
+ * 24 +----------------+
  *    | cmdline_paddr  | Physical address of the command line,
  *    |                | a zero-terminated ASCII string.
- * 16 +----------------+
+ * 32 +----------------+
  *    | nr_modules     | Number of modules passed to the kernel.
- * 20 +----------------+
+ * 40 +----------------+
  *    | modlist_paddr  | Physical address of an array of modules
  *    |                | (layout of the structure below).
- * 24 +----------------+
+ * 48 +----------------+
  *    | rsdp_paddr     | Physical address of the RSDP ACPI data structure.
- * 28 +----------------+
+ * 56 +----------------+
  *
  * The layout of each entry in the module structure is the following:
  *
@@ -845,10 +845,12 @@ typedef struct start_info start_info_t;
  *    | reserved       |
  * 32 +----------------+
  *
- * The address and size of the modules is a 64bit unsigned integer. However
- * Xen will always try to place all modules below the 4GiB boundary.
+ * The address and sizes are always a 64bit little endian unsigned integer.
+ *
+ * NB: Xen on x86 will always try to place all the data below the 4GiB
+ * boundary.
  */
-#define XEN_HVM_START_MAGIC_VALUE 0x336ec578
+#define XEN_HVM_START_MAGIC_VALUE 0x746f6f62336ec578
 
 /* New console union for dom0 introduced in 0x00030203. */
 #if __XEN_INTERFACE_VERSION__ < 0x00030203
