ramips: RT-N56U support fixes and factory image creation
[openwrt/svn-archive/archive.git] / target / linux / ramips / patches-3.10 / 0135-mtd-add-rtn56u-support.patch
1 --- a/drivers/mtd/mtdpart.c 2014-04-27 10:09:21.566294160 +0300
2 +++ b/drivers/mtd/mtdpart.c 2014-06-09 11:27:48.952211672 +0300
3 @@ -793,8 +793,11 @@
4 {
5 struct {
6 __be32 magic;
7 - __be32 pad[2];
8 + __be32 pad0[2];
9 __be32 size;
10 + __be32 pad1[4];
11 + __be32 name[7];
12 + __be32 kern_size;
13 } hdr;
14 size_t len;
15
16 @@ -804,7 +807,11 @@
17 if (len != sizeof(hdr) || hdr.magic != cpu_to_be32(UBOOT_MAGIC))
18 return;
19
20 - len = be32_to_cpu(hdr.size) + 0x40;
21 + if (hdr.kern_size != 0 && hdr.name[0] == 0)
22 + len = be32_to_cpu(hdr.kern_size);
23 + else
24 + len = be32_to_cpu(hdr.size) + 0x40;
25 +
26 __mtd_add_partition(master, "rootfs", part->offset + len,
27 part->mtd.size - len, false);
28 }