From 0da84a9fe46ec562d800a2d82e8d85d4545ee86e Mon Sep 17 00:00:00 2001 From: Uwe Kleine-König Date: Thu, 23 Feb 2017 09:21:54 +0100 Subject: filetype: Add image type for boot images used on Armada 370 and XP --- common/filetype.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'common/filetype.c') diff --git a/common/filetype.c b/common/filetype.c index 8d7293347a..323da026af 100644 --- a/common/filetype.c +++ b/common/filetype.c @@ -63,6 +63,7 @@ static const struct filetype_str filetype_str[] = { [filetype_exe] = { "MS-DOS executable", "exe" }, [filetype_mxs_bootstream] = { "Freescale MXS bootstream", "mxsbs" }, [filetype_socfpga_xload] = { "SoCFPGA prebootloader image", "socfpga-xload" }, + [filetype_kwbimage_v1] = { "MVEBU kwbimage (v1)", "kwb" }, }; const char *file_type_to_string(enum filetype f) @@ -292,6 +293,13 @@ enum filetype file_detect_type(const void *_buf, size_t bufsize) return filetype_mips_barebox; if (buf[0] == be32_to_cpu(0x534F4659)) return filetype_bpk; + if ((buf8[0] == 0x5a || buf8[0] == 0x69 || buf8[0] == 0x78 || + buf8[0] == 0x8b || buf8[0] == 0x9c) && + buf8[0x1] == 0 && buf8[0x2] == 0 && buf8[0x3] == 0 && + buf8[0x8] == 1 && buf8[0x18] == 0 && buf8[0x1b] == 0 && + buf8[0x1c] == 0 && buf8[0x1d] == 0 && + (buf8[0x1e] == 0 || buf8[0x1e] == 1)) + return filetype_kwbimage_v1; if (bufsize < 64) return filetype_unknown; -- cgit v1.2.3