mtd: bcm47xxpart: simplify size calculation to one loop

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
This commit is contained in:
Rafał Miłecki 2013-01-06 16:08:35 +01:00 committed by Artem Bityutskiy
parent 55bf75b7dd
commit 648bdbee5d
1 changed files with 6 additions and 5 deletions

View File

@ -169,11 +169,12 @@ static int bcm47xxpart_parse(struct mtd_info *master,
* Assume that partitions end at the beginning of the one they are
* followed by.
*/
for (i = 0; i < curr_part - 1; i++)
parts[i].size = parts[i + 1].offset - parts[i].offset;
if (curr_part > 0)
parts[curr_part - 1].size =
master->size - parts[curr_part - 1].offset;
for (i = 0; i < curr_part; i++) {
u64 next_part_offset = (i < curr_part - 1) ?
parts[i + 1].offset : master->size;
parts[i].size = next_part_offset - parts[i].offset;
}
*pparts = parts;
return curr_part;