Skip to content

Commit

Permalink
mtd: davinci_nand.c: use mtd_device_parse_register
Browse files Browse the repository at this point in the history
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: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
  • Loading branch information
Dmitry Eremin-Solenikov authored and Artem Bityutskiy committed Sep 11, 2011
1 parent bbd86c9 commit 5b55b1e
Showing 1 changed file with 2 additions and 23 deletions.
25 changes: 2 additions & 23 deletions drivers/mtd/nand/davinci_nand.c
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@ struct davinci_nand_info {

struct device *dev;
struct clk *clk;
bool partitioned;

bool is_readmode;

Expand Down Expand Up @@ -530,8 +529,6 @@ static int __init nand_davinci_probe(struct platform_device *pdev)
int ret;
uint32_t val;
nand_ecc_modes_t ecc_mode;
struct mtd_partition *mtd_parts = NULL;
int mtd_parts_nb = 0;

/* insist on board-specific configuration */
if (!pdata)
Expand Down Expand Up @@ -753,26 +750,8 @@ static int __init nand_davinci_probe(struct platform_device *pdev)
if (ret < 0)
goto err_scan;

mtd_parts_nb = parse_mtd_partitions(&info->mtd, NULL, &mtd_parts, 0);

if (mtd_parts_nb <= 0) {
mtd_parts = pdata->parts;
mtd_parts_nb = pdata->nr_parts;
}

/* Register any partitions */
if (mtd_parts_nb > 0) {
ret = mtd_device_register(&info->mtd, mtd_parts,
mtd_parts_nb);
if (ret == 0)
info->partitioned = true;
}

/* If there's no partition info, just package the whole chip
* as a single MTD device.
*/
if (!info->partitioned)
ret = mtd_device_register(&info->mtd, NULL, 0) ? -ENODEV : 0;
ret = mtd_device_parse_register(&info->mtd, NULL, 0,
pdata->parts, pdata->nr_parts);

if (ret < 0)
goto err_scan;
Expand Down

0 comments on commit 5b55b1e

Please sign in to comment.