Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 009c8407 authored by Dmitry Eremin-Solenikov's avatar Dmitry Eremin-Solenikov Committed by Artem Bityutskiy
Browse files

mtd: plat_nand.c: use mtd_device_parse_register



Replace custom invocations of parse_mtd_partitions and mtd_device_register
with common mtd_device_parse_register call. This would bring: standard
handling of all errors, fallback to default partitions, etc.

Signed-off-by: default avatarDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: default avatarArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
parent c9dd375f
Loading
Loading
Loading
Loading
+3 −19
Original line number Diff line number Diff line
@@ -21,8 +21,6 @@ struct plat_nand_data {
	struct nand_chip	chip;
	struct mtd_info		mtd;
	void __iomem		*io_base;
	int			nr_parts;
	struct mtd_partition	*parts;
};

/*
@@ -100,21 +98,9 @@ static int __devinit plat_nand_probe(struct platform_device *pdev)
		goto out;
	}

	if (pdata->chip.part_probe_types) {
		err = parse_mtd_partitions(&data->mtd,
					pdata->chip.part_probe_types,
					&data->parts, 0);
		if (err > 0) {
			mtd_device_register(&data->mtd, data->parts, err);
			return 0;
		}
	}
	if (pdata->chip.partitions) {
		data->parts = pdata->chip.partitions;
		err = mtd_device_register(&data->mtd, data->parts,
			pdata->chip.nr_partitions);
	} else
		err = mtd_device_register(&data->mtd, NULL, 0);
	err = mtd_device_parse_register(&data->mtd,
			pdata->chip.part_probe_types, 0,
			pdata->chip.partitions, pdata->chip.nr_partitions);

	if (!err)
		return err;
@@ -144,8 +130,6 @@ static int __devexit plat_nand_remove(struct platform_device *pdev)
	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);

	nand_release(&data->mtd);
	if (data->parts && data->parts != pdata->chip.partitions)
		kfree(data->parts);
	if (pdata->ctrl.remove)
		pdata->ctrl.remove(pdev);
	iounmap(data->io_base);