]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - scripts/dtc/dtc.c
Merge tag 'powerpc-4.20-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
[linux.git] / scripts / dtc / dtc.c
index c36994e6eac5ceb90dbddf38ea26aa2902899bf8..64134aadb9973cbd2453cdf7b9af59489a59f608 100644 (file)
@@ -95,6 +95,9 @@ static const char * const usage_opts_help[] = {
        "\n\tOutput formats are:\n"
         "\t\tdts - device tree source text\n"
         "\t\tdtb - device tree blob\n"
+#ifndef NO_YAML
+        "\t\tyaml - device tree encoded as YAML\n"
+#endif
         "\t\tasm - assembler source",
        "\n\tBlob version to produce, defaults to "stringify(DEFAULT_FDT_VERSION)" (for dtb and asm output)",
        "\n\tOutput dependency file",
@@ -128,6 +131,8 @@ static const char *guess_type_by_name(const char *fname, const char *fallback)
                return fallback;
        if (!strcasecmp(s, ".dts"))
                return "dts";
+       if (!strcasecmp(s, ".yaml"))
+               return "yaml";
        if (!strcasecmp(s, ".dtb"))
                return "dtb";
        return fallback;
@@ -350,6 +355,12 @@ int main(int argc, char *argv[])
 
        if (streq(outform, "dts")) {
                dt_to_source(outf, dti);
+#ifndef NO_YAML
+       } else if (streq(outform, "yaml")) {
+               if (!streq(inform, "dts"))
+                       die("YAML output format requires dts input format\n");
+               dt_to_yaml(outf, dti);
+#endif
        } else if (streq(outform, "dtb")) {
                dt_to_blob(outf, dti, outversion);
        } else if (streq(outform, "asm")) {