X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=drivers%2Fmtd%2Fmtdpart.c;h=5e42c4b833f648fded457321292e2ce3b36b93e2;hb=ca75159d8abc085b39e3e468ca34ccb2940d2bf5;hp=2f20b92a8825896f9dc3330453beeb6580e95240;hpb=3e1b36bd584228b0a8070c8b63351aefda652523;p=u-boot diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c index 2f20b92a88..5e42c4b833 100644 --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c @@ -9,7 +9,6 @@ * */ -#define __UBOOT__ #ifndef __UBOOT__ #include #include @@ -21,7 +20,7 @@ #include #include -#include +#include #include #include @@ -322,6 +321,13 @@ static void part_resume(struct mtd_info *mtd) } #endif +static int part_block_isreserved(struct mtd_info *mtd, loff_t ofs) +{ + struct mtd_part *part = PART(mtd); + ofs += part->offset; + return part->master->_block_isreserved(part->master, ofs); +} + static int part_block_isbad(struct mtd_info *mtd, loff_t ofs) { struct mtd_part *part = PART(mtd); @@ -460,6 +466,8 @@ static struct mtd_part *allocate_partition(struct mtd_info *master, slave->mtd._unlock = part_unlock; if (master->_is_locked) slave->mtd._is_locked = part_is_locked; + if (master->_block_isreserved) + slave->mtd._block_isreserved = part_block_isreserved; if (master->_block_isbad) slave->mtd._block_isbad = part_block_isbad; if (master->_block_markbad)