]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
conf: support <dtb> tag in XML domain file
authorOlivia Yin <hong-hua.yin@freescale.com>
Thu, 14 Mar 2013 04:49:42 +0000 (12:49 +0800)
committerEric Blake <eblake@redhat.com>
Tue, 19 Mar 2013 21:48:58 +0000 (15:48 -0600)
docs/formatdomain.html.in
docs/schemas/domaincommon.rng
src/conf/domain_conf.c
src/conf/domain_conf.h

index 8a3c3b7686228d55d56006c90524470556cc2c3e..e83bdd0649abec20f62ed24b24167b965e265342 100644 (file)
     &lt;kernel&gt;/root/f8-i386-vmlinuz&lt;/kernel&gt;
     &lt;initrd&gt;/root/f8-i386-initrd&lt;/initrd&gt;
     &lt;cmdline&gt;console=ttyS0 ks=http://example.com/f8-i386/os/&lt;/cmdline&gt;
+    &lt;dtb&gt;/root/ppc.dtb&lt;/dtb&gt;
   &lt;/os&gt;
   ...</pre>
 
         the kernel (or installer) at boottime. This is often used to
         specify an alternate primary console (eg serial port), or the
         installation media source / kickstart file</dd>
+      <dt><code>dtb</code></dt>
+      <dd>The contents of this element specify the fully-qualified path
+        to the (optional) device tree binary (dtb) image in the host OS.
+        <span class="since">Since 1.0.4</span></dd>
     </dl>
 
     <h4><a name="eleemntsOSContainer">Container boot</a></h4>
index 97920653dfcf009c6a46a9f9562df8049d840337..90647df7a658ce1be79d2a286964ee48aa8c49d8 100644 (file)
             <value>g3beige</value>
             <value>mac99</value>
             <value>prep</value>
+            <value>ppce500v2</value>
           </choice>
         </attribute>
       </optional>
           <text/>
         </element>
       </optional>
+      <optional>
+        <element name="dtb">
+          <ref name="absFilePath"/>
+        </element>
+      </optional>
     </interleave>
   </define>
   <define name="osbootdev">
index 3278e9c15ec5751f8a5fb6c6eebbe1f5d4cdf6f1..a1cfc763e844cfeba0c8bc8acb069d9488c28b39 100644 (file)
@@ -1849,6 +1849,7 @@ void virDomainDefFree(virDomainDefPtr def)
     VIR_FREE(def->os.kernel);
     VIR_FREE(def->os.initrd);
     VIR_FREE(def->os.cmdline);
+    VIR_FREE(def->os.dtb);
     VIR_FREE(def->os.root);
     VIR_FREE(def->os.loader);
     VIR_FREE(def->os.bootloader);
@@ -10247,6 +10248,7 @@ virDomainDefParseXML(virCapsPtr caps,
         def->os.kernel = virXPathString("string(./os/kernel[1])", ctxt);
         def->os.initrd = virXPathString("string(./os/initrd[1])", ctxt);
         def->os.cmdline = virXPathString("string(./os/cmdline[1])", ctxt);
+        def->os.dtb = virXPathString("string(./os/dtb[1])", ctxt);
         def->os.root = virXPathString("string(./os/root[1])", ctxt);
         def->os.loader = virXPathString("string(./os/loader[1])", ctxt);
     }
@@ -14875,6 +14877,8 @@ virDomainDefFormatInternal(virDomainDefPtr def,
                           def->os.initrd);
     virBufferEscapeString(buf, "    <cmdline>%s</cmdline>\n",
                           def->os.cmdline);
+    virBufferEscapeString(buf, "    <dtb>%s</dtb>\n",
+                          def->os.dtb);
     virBufferEscapeString(buf, "    <root>%s</root>\n",
                           def->os.root);
 
index 96f11ba76d46590d9c4bd0431cc204cb85447ad5..bfc37a06a9303f0b0f545cc98e8546fef88f31b8 100644 (file)
@@ -1550,6 +1550,7 @@ struct _virDomainOSDef {
     char *kernel;
     char *initrd;
     char *cmdline;
+    char *dtb;
     char *root;
     char *loader;
     char *bootloader;