summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDmitry Eremin-Solenikov2011-05-29 23:02:23 +0200
committerArtem Bityutskiy2011-09-11 14:02:11 +0200
commita454a296aa8e63f5e5c749343a99fd25c37a3c44 (patch)
tree474918300827e3ea7d5874758ff48e3cbb528683 /drivers
parentmtd: fsl_elbc_nand: use ofpart through generic parsing (diff)
downloadkernel-qcow2-linux-a454a296aa8e63f5e5c749343a99fd25c37a3c44.tar.gz
kernel-qcow2-linux-a454a296aa8e63f5e5c749343a99fd25c37a3c44.tar.xz
kernel-qcow2-linux-a454a296aa8e63f5e5c749343a99fd25c37a3c44.zip
mtd: fsl_upm: use ofpart through generic parsing
Convert the driver to use ofpart partitions parsing through the generic parse_mtd_partitions(). Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Artem Bityutskiy <dedekind1@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mtd/nand/fsl_upm.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/mtd/nand/fsl_upm.c b/drivers/mtd/nand/fsl_upm.c
index 7c782ebd0f31..714d8318c6ad 100644
--- a/drivers/mtd/nand/fsl_upm.c
+++ b/drivers/mtd/nand/fsl_upm.c
@@ -158,6 +158,7 @@ static int __devinit fun_chip_init(struct fsl_upm_nand *fun,
{
int ret;
struct device_node *flash_np;
+ struct mtd_part_parser_data ppdata;
fun->chip.IO_ADDR_R = fun->io_base;
fun->chip.IO_ADDR_W = fun->io_base;
@@ -191,15 +192,9 @@ static int __devinit fun_chip_init(struct fsl_upm_nand *fun,
if (ret)
goto err;
- ret = parse_mtd_partitions(&fun->mtd, NULL, &fun->parts, 0);
+ ppdata.of_node = flash_np;
+ ret = parse_mtd_partitions(&fun->mtd, NULL, &fun->parts, &ppdata);
-#ifdef CONFIG_MTD_OF_PARTS
- if (ret == 0) {
- ret = of_mtd_parse_partitions(fun->dev, flash_np, &fun->parts);
- if (ret < 0)
- goto err;
- }
-#endif
ret = mtd_device_register(&fun->mtd, fun->parts, ret);
err:
of_node_put(flash_np);