summaryrefslogtreecommitdiff
path: root/drivers/mtd/mtdpart.c
diff options
context:
space:
mode:
authorBoris Brezillon <[email protected]>2018-08-16 17:29:59 +0200
committerJagan Teki <[email protected]>2018-09-20 20:10:49 +0530
commit596cf083da34c2007f8ec760c8b077f6f28ee655 (patch)
tree708e52652249bde2ac7471cb8613eb2ff28e5d0a /drivers/mtd/mtdpart.c
parent9dc8d155d4e88563f572ee79aab758eb4272f3fd (diff)
mtd: Fallback to ->_read/write_oob() when ->_read/write() is missing
Some MTD sublayers/drivers are implementing ->_read/write_oob() and provide dummy wrappers for their ->_read/write() implementations. Let the core handle this case instead of duplicating the logic. Signed-off-by: Boris Brezillon <[email protected]> Acked-by: Robert Jarzmik <[email protected]> Acked-by: Brian Norris <[email protected]> Reviewed-by: Miquel Raynal <[email protected]> Tested-by: Ladislav Michl <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
Diffstat (limited to 'drivers/mtd/mtdpart.c')
-rw-r--r--drivers/mtd/mtdpart.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c
index f87c9622053..ccbb1757eab 100644
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
@@ -417,8 +417,10 @@ static struct mtd_part *allocate_partition(struct mtd_info *master,
slave->mtd.dev.parent = master->dev.parent;
#endif
- slave->mtd._read = part_read;
- slave->mtd._write = part_write;
+ if (master->_read)
+ slave->mtd._read = part_read;
+ if (master->_write)
+ slave->mtd._write = part_write;
if (master->_panic_write)
slave->mtd._panic_write = part_panic_write;