diff options
author | Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> | 2011-06-02 10:01:16 -0400 |
---|---|---|
committer | Artem Bityutskiy <artem.bityutskiy@intel.com> | 2011-09-11 08:02:10 -0400 |
commit | f8214b80dacbb4d009b2c8968fe52aafb6ed55d4 (patch) | |
tree | 0c5f185913b4c01409b7d7e6be727c0b998be652 /drivers/mtd/onenand/samsung.c | |
parent | 7d010d2e772e16ef35a9bc6d706ec1e40eac9f46 (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.c | 11 |
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 | ||