aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mtd/mtdpart.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mtd/mtdpart.c')
-rw-r--r--drivers/mtd/mtdpart.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c
index 1ca9aec141ff..921e8c647884 100644
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
@@ -290,6 +290,13 @@ static void part_resume(struct mtd_info *mtd)
290 part->master->_resume(part->master); 290 part->master->_resume(part->master);
291} 291}
292 292
293static int part_block_isreserved(struct mtd_info *mtd, loff_t ofs)
294{
295 struct mtd_part *part = PART(mtd);
296 ofs += part->offset;
297 return part->master->_block_isreserved(part->master, ofs);
298}
299
293static int part_block_isbad(struct mtd_info *mtd, loff_t ofs) 300static int part_block_isbad(struct mtd_info *mtd, loff_t ofs)
294{ 301{
295 struct mtd_part *part = PART(mtd); 302 struct mtd_part *part = PART(mtd);
@@ -422,6 +429,8 @@ static struct mtd_part *allocate_partition(struct mtd_info *master,
422 slave->mtd._unlock = part_unlock; 429 slave->mtd._unlock = part_unlock;
423 if (master->_is_locked) 430 if (master->_is_locked)
424 slave->mtd._is_locked = part_is_locked; 431 slave->mtd._is_locked = part_is_locked;
432 if (master->_block_isreserved)
433 slave->mtd._block_isreserved = part_block_isreserved;
425 if (master->_block_isbad) 434 if (master->_block_isbad)
426 slave->mtd._block_isbad = part_block_isbad; 435 slave->mtd._block_isbad = part_block_isbad;
427 if (master->_block_markbad) 436 if (master->_block_markbad)