aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mtd/onenand/samsung.c
diff options
context:
space:
mode:
authorDmitry Eremin-Solenikov <dbaryshkov@gmail.com>2011-06-02 10:01:16 -0400
committerArtem Bityutskiy <artem.bityutskiy@intel.com>2011-09-11 08:02:10 -0400
commitf8214b80dacbb4d009b2c8968fe52aafb6ed55d4 (patch)
tree0c5f185913b4c01409b7d7e6be727c0b998be652 /drivers/mtd/onenand/samsung.c
parent7d010d2e772e16ef35a9bc6d706ec1e40eac9f46 (diff)
mtd: onenand/samsung.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. Axel Lin <axel.lin@gmail.com>: fixed build error. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'drivers/mtd/onenand/samsung.c')
-rw-r--r--drivers/mtd/onenand/samsung.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/mtd/onenand/samsung.c b/drivers/mtd/onenand/samsung.c
index 78a08eae6adf..5474547eafc2 100644
--- a/drivers/mtd/onenand/samsung.c
+++ b/drivers/mtd/onenand/samsung.c
@@ -147,7 +147,6 @@ struct s3c_onenand {
147 struct resource *dma_res; 147 struct resource *dma_res;
148 unsigned long phys_base; 148 unsigned long phys_base;
149 struct completion complete; 149 struct completion complete;
150 struct mtd_partition *parts;
151}; 150};
152 151
153#define CMD_MAP_00(dev, addr) (dev->cmd_map(MAP_00, ((addr) << 1))) 152#define CMD_MAP_00(dev, addr) (dev->cmd_map(MAP_00, ((addr) << 1)))
@@ -1015,13 +1014,9 @@ static int s3c_onenand_probe(struct platform_device *pdev)
1015 if (s3c_read_reg(MEM_CFG_OFFSET) & ONENAND_SYS_CFG1_SYNC_READ) 1014 if (s3c_read_reg(MEM_CFG_OFFSET) & ONENAND_SYS_CFG1_SYNC_READ)
1016 dev_info(&onenand->pdev->dev, "OneNAND Sync. Burst Read enabled\n"); 1015 dev_info(&onenand->pdev->dev, "OneNAND Sync. Burst Read enabled\n");
1017 1016
1018 err = parse_mtd_partitions(mtd, NULL, &onenand->parts, 0); 1017 err = mtd_device_parse_register(mtd, NULL, 0,
1019 if (err > 0) 1018 pdata ? pdata->parts : NULL,
1020 mtd_device_register(mtd, onenand->parts, err); 1019 pdata ? pdata->nr_parts : 0);
1021 else if (err <= 0 && pdata && pdata->parts)
1022 mtd_device_register(mtd, pdata->parts, pdata->nr_parts);
1023 else
1024 err = mtd_device_register(mtd, NULL, 0);
1025 1020
1026 platform_set_drvdata(pdev, mtd); 1021 platform_set_drvdata(pdev, mtd);
1027 1022