mirror of https://gitee.com/openkylin/linux.git
mtd: plat-ram.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: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
This commit is contained in:
parent
d45fd12188
commit
74fb3ab933
|
@ -44,8 +44,6 @@ struct platram_info {
|
|||
struct device *dev;
|
||||
struct mtd_info *mtd;
|
||||
struct map_info map;
|
||||
struct mtd_partition *partitions;
|
||||
bool free_partitions;
|
||||
struct resource *area;
|
||||
struct platdata_mtd_ram *pdata;
|
||||
};
|
||||
|
@ -95,10 +93,6 @@ static int platram_remove(struct platform_device *pdev)
|
|||
|
||||
if (info->mtd) {
|
||||
mtd_device_unregister(info->mtd);
|
||||
if (info->partitions) {
|
||||
if (info->free_partitions)
|
||||
kfree(info->partitions);
|
||||
}
|
||||
map_destroy(info->mtd);
|
||||
}
|
||||
|
||||
|
@ -228,21 +222,8 @@ static int platram_probe(struct platform_device *pdev)
|
|||
/* check to see if there are any available partitions, or wether
|
||||
* to add this device whole */
|
||||
|
||||
if (!pdata->nr_partitions) {
|
||||
/* try to probe using the supplied probe type */
|
||||
if (pdata->probes) {
|
||||
err = parse_mtd_partitions(info->mtd, pdata->probes,
|
||||
&info->partitions, 0);
|
||||
info->free_partitions = 1;
|
||||
if (err > 0)
|
||||
err = mtd_device_register(info->mtd,
|
||||
info->partitions, err);
|
||||
}
|
||||
}
|
||||
/* use the static mapping */
|
||||
else
|
||||
err = mtd_device_register(info->mtd, pdata->partitions,
|
||||
pdata->nr_partitions);
|
||||
err = mtd_device_parse_register(info->mtd, pdata->probes, 0,
|
||||
pdata->partitions, pdata->nr_partitions);
|
||||
if (!err)
|
||||
dev_info(&pdev->dev, "registered mtd device\n");
|
||||
|
||||
|
|
Loading…
Reference in New Issue