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

Commit 16b0eb15 authored by Jamie Iles's avatar Jamie Iles Committed by David Woodhouse
Browse files

mtd: rbtx4939-flash: convert to mtd_device_register()



Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS
preprocessor conditionals as partitioning is always available.

Signed-off-by: default avatarJamie Iles <jamie@jamieiles.com>
Signed-off-by: default avatarArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
parent 095dd500
Loading
Loading
Loading
Loading
+5 −19
Original line number Diff line number Diff line
@@ -25,10 +25,8 @@
struct rbtx4939_flash_info {
	struct mtd_info *mtd;
	struct map_info map;
#ifdef CONFIG_MTD_PARTITIONS
	int nr_parts;
	struct mtd_partition *parts;
#endif
};

static int rbtx4939_flash_remove(struct platform_device *dev)
@@ -41,28 +39,18 @@ static int rbtx4939_flash_remove(struct platform_device *dev)
	platform_set_drvdata(dev, NULL);

	if (info->mtd) {
#ifdef CONFIG_MTD_PARTITIONS
		struct rbtx4939_flash_data *pdata = dev->dev.platform_data;

		if (info->nr_parts) {
			del_mtd_partitions(info->mtd);
		if (info->nr_parts)
			kfree(info->parts);
		} else if (pdata->nr_parts)
			del_mtd_partitions(info->mtd);
		else
			del_mtd_device(info->mtd);
#else
		del_mtd_device(info->mtd);
#endif
		mtd_device_unregister(info->mtd);
		map_destroy(info->mtd);
	}
	return 0;
}

static const char *rom_probe_types[] = { "cfi_probe", "jedec_probe", NULL };
#ifdef CONFIG_MTD_PARTITIONS
static const char *part_probe_types[] = { "cmdlinepart", NULL };
#endif

static int rbtx4939_flash_probe(struct platform_device *dev)
{
@@ -120,23 +108,21 @@ static int rbtx4939_flash_probe(struct platform_device *dev)
	if (err)
		goto err_out;

#ifdef CONFIG_MTD_PARTITIONS
	err = parse_mtd_partitions(info->mtd, part_probe_types,
				&info->parts, 0);
	if (err > 0) {
		add_mtd_partitions(info->mtd, info->parts, err);
		mtd_device_register(info->mtd, info->parts, err);
		info->nr_parts = err;
		return 0;
	}

	if (pdata->nr_parts) {
		pr_notice("Using rbtx4939 partition information\n");
		add_mtd_partitions(info->mtd, pdata->parts, pdata->nr_parts);
		mtd_device_register(info->mtd, pdata->parts, pdata->nr_parts);
		return 0;
	}
#endif

	add_mtd_device(info->mtd);
	mtd_device_register(info->mtd, NULL, 0);
	return 0;

err_out: