mtd: bcm47xxpart: only register partitions if the trx header was filled
Sometimes the trx offsets are 0, in that case there is no partition and we should not try to add one. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [Brian: rewrapped] Signed-off-by: Brian Norris <computersforpeace@gmail.com>
This commit is contained in:
parent
b85b8d92c1
commit
a1ff7d64c5
1 changed files with 14 additions and 6 deletions
|
@ -172,18 +172,26 @@ static int bcm47xxpart_parse(struct mtd_info *master,
|
|||
i++;
|
||||
}
|
||||
|
||||
bcm47xxpart_add_part(&parts[curr_part++], "linux",
|
||||
offset + trx->offset[i], 0);
|
||||
i++;
|
||||
if (trx->offset[i]) {
|
||||
bcm47xxpart_add_part(&parts[curr_part++],
|
||||
"linux",
|
||||
offset + trx->offset[i],
|
||||
0);
|
||||
i++;
|
||||
}
|
||||
|
||||
/*
|
||||
* Pure rootfs size is known and can be calculated as:
|
||||
* trx->length - trx->offset[i]. We don't fill it as
|
||||
* we want to have jffs2 (overlay) in the same mtd.
|
||||
*/
|
||||
bcm47xxpart_add_part(&parts[curr_part++], "rootfs",
|
||||
offset + trx->offset[i], 0);
|
||||
i++;
|
||||
if (trx->offset[i]) {
|
||||
bcm47xxpart_add_part(&parts[curr_part++],
|
||||
"rootfs",
|
||||
offset + trx->offset[i],
|
||||
0);
|
||||
i++;
|
||||
}
|
||||
|
||||
last_trx_part = curr_part - 1;
|
||||
|
||||
|
|
Loading…
Reference in a new issue