summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--common/filetype.c3
-rw-r--r--include/filetype.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/common/filetype.c b/common/filetype.c
index 5635d40af0..40faff3ada 100644
--- a/common/filetype.c
+++ b/common/filetype.c
@@ -36,6 +36,7 @@ static const char *filetype_str[] = {
[filetype_jffs2] = "JFFS2 image",
[filetype_gzip] = "gzip compressed",
[filetype_bzip2] = "bzip2 compressed",
+ [filetype_oftree] = "open firmware flat device tree",
};
const char *file_type_to_string(enum filetype f)
@@ -69,6 +70,8 @@ enum filetype file_detect_type(void *_buf)
if (buf8[0] == 'B' && buf8[1] == 'Z' && buf8[2] == 'h' &&
buf8[3] > '0' && buf8[3] <= '9')
return filetype_bzip2;
+ if (buf[0] == be32_to_cpu(0xd00dfeed))
+ return filetype_oftree;
return filetype_unknown;
}
diff --git a/include/filetype.h b/include/filetype.h
index 64d32ef8b0..88f31dfe3e 100644
--- a/include/filetype.h
+++ b/include/filetype.h
@@ -14,6 +14,7 @@ enum filetype {
filetype_jffs2,
filetype_gzip,
filetype_bzip2,
+ filetype_oftree,
};
const char *file_type_to_string(enum filetype f);