kernel: mtdsplit: detect UBI partition when looking for rootfs
This allows mtdsplit parsers work with UBI which is very popular on NAND flases. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> SVN-Revision: 48599
This commit is contained in:
parent
e1491b341b
commit
4156f292c1
2 changed files with 7 additions and 0 deletions
|
@ -22,6 +22,8 @@
|
||||||
|
|
||||||
#include "mtdsplit.h"
|
#include "mtdsplit.h"
|
||||||
|
|
||||||
|
#define UBI_EC_MAGIC 0x55424923 /* UBI# */
|
||||||
|
|
||||||
struct squashfs_super_block {
|
struct squashfs_super_block {
|
||||||
__le32 s_magic;
|
__le32 s_magic;
|
||||||
__le32 pad0[9];
|
__le32 pad0[9];
|
||||||
|
@ -93,6 +95,10 @@ int mtd_check_rootfs_magic(struct mtd_info *mtd, size_t offset,
|
||||||
if (type)
|
if (type)
|
||||||
*type = MTDSPLIT_PART_TYPE_JFFS2;
|
*type = MTDSPLIT_PART_TYPE_JFFS2;
|
||||||
return 0;
|
return 0;
|
||||||
|
} else if (be32_to_cpu(magic) == UBI_EC_MAGIC) {
|
||||||
|
if (type)
|
||||||
|
*type = MTDSPLIT_PART_TYPE_UBI;
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
|
@ -22,6 +22,7 @@ enum mtdsplit_part_type {
|
||||||
MTDSPLIT_PART_TYPE_UNK = 0,
|
MTDSPLIT_PART_TYPE_UNK = 0,
|
||||||
MTDSPLIT_PART_TYPE_SQUASHFS,
|
MTDSPLIT_PART_TYPE_SQUASHFS,
|
||||||
MTDSPLIT_PART_TYPE_JFFS2,
|
MTDSPLIT_PART_TYPE_JFFS2,
|
||||||
|
MTDSPLIT_PART_TYPE_UBI,
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_MTD_SPLIT
|
#ifdef CONFIG_MTD_SPLIT
|
||||||
|
|
Loading…
Reference in a new issue