Message ID | 1355481404-27695-3-git-send-email-zonque@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Artem, Looks like this patch related to making GPMC work with DT was never sent to linux-mtd or to you so adding to cc. Is this OK to apply along with the GPMC patches, or do you want to take this separately with the MTD patches? Regards, Tony * Daniel Mack <zonque@gmail.com> [121214 02:39]: > Pass an optional device_node pointer in the platform data, which in turn > will be put into a mtd_part_parser_data. This way, code that sets up the > platform devices can pass along the node from DT so that the partitions > can be parsed. > > For non-DT boards, this change has no effect. > > Signed-off-by: Daniel Mack <zonque@gmail.com> > --- > drivers/mtd/nand/omap2.c | 4 +++- > include/linux/platform_data/mtd-nand-omap2.h | 4 +++- > 2 files changed, 6 insertions(+), 2 deletions(-) > > diff --git a/drivers/mtd/nand/omap2.c b/drivers/mtd/nand/omap2.c > index 0002d5e..1d333497c 100644 > --- a/drivers/mtd/nand/omap2.c > +++ b/drivers/mtd/nand/omap2.c > @@ -1332,6 +1332,7 @@ static int omap_nand_probe(struct platform_device *pdev) > dma_cap_mask_t mask; > unsigned sig; > struct resource *res; > + struct mtd_part_parser_data ppdata = {}; > > pdata = pdev->dev.platform_data; > if (pdata == NULL) { > @@ -1557,7 +1558,8 @@ static int omap_nand_probe(struct platform_device *pdev) > goto out_release_mem_region; > } > > - mtd_device_parse_register(&info->mtd, NULL, NULL, pdata->parts, > + ppdata.of_node = pdata->of_node; > + mtd_device_parse_register(&info->mtd, NULL, &ppdata, pdata->parts, > pdata->nr_parts); > > platform_set_drvdata(pdev, &info->mtd); > diff --git a/include/linux/platform_data/mtd-nand-omap2.h b/include/linux/platform_data/mtd-nand-omap2.h > index 24d32ca..6bf9ef4 100644 > --- a/include/linux/platform_data/mtd-nand-omap2.h > +++ b/include/linux/platform_data/mtd-nand-omap2.h > @@ -60,6 +60,8 @@ struct omap_nand_platform_data { > int devsize; > enum omap_ecc ecc_opt; > struct gpmc_nand_regs reg; > -}; > > + /* for passing the partitions */ > + struct device_node *of_node; > +}; > #endif > -- > 1.7.11.7 >
On Tue, 2013-01-15 at 10:52 -0800, Tony Lindgren wrote: > Artem, > > Looks like this patch related to making GPMC work with DT was > never sent to linux-mtd or to you so adding to cc. > > Is this OK to apply along with the GPMC patches, or do you want to > take this separately with the MTD patches? Please, go ahead!
* Artem Bityutskiy <dedekind1@gmail.com> [130115 11:12]: > On Tue, 2013-01-15 at 10:52 -0800, Tony Lindgren wrote: > > Artem, > > > > Looks like this patch related to making GPMC work with DT was > > never sent to linux-mtd or to you so adding to cc. > > > > Is this OK to apply along with the GPMC patches, or do you want to > > take this separately with the MTD patches? > > Please, go ahead! OK thanks. Can I add your Acked-by too? Tony
On Tue, 2013-01-15 at 11:26 -0800, Tony Lindgren wrote: > * Artem Bityutskiy <dedekind1@gmail.com> [130115 11:12]: > > On Tue, 2013-01-15 at 10:52 -0800, Tony Lindgren wrote: > > > Artem, > > > > > > Looks like this patch related to making GPMC work with DT was > > > never sent to linux-mtd or to you so adding to cc. > > > > > > Is this OK to apply along with the GPMC patches, or do you want to > > > take this separately with the MTD patches? > > > > Please, go ahead! > > OK thanks. Can I add your Acked-by too? Yes Tony, please, do: Acked-by: Artem Bityutskiy <dedekind1@gmail.com>
diff --git a/drivers/mtd/nand/omap2.c b/drivers/mtd/nand/omap2.c index 0002d5e..1d333497c 100644 --- a/drivers/mtd/nand/omap2.c +++ b/drivers/mtd/nand/omap2.c @@ -1332,6 +1332,7 @@ static int omap_nand_probe(struct platform_device *pdev) dma_cap_mask_t mask; unsigned sig; struct resource *res; + struct mtd_part_parser_data ppdata = {}; pdata = pdev->dev.platform_data; if (pdata == NULL) { @@ -1557,7 +1558,8 @@ static int omap_nand_probe(struct platform_device *pdev) goto out_release_mem_region; } - mtd_device_parse_register(&info->mtd, NULL, NULL, pdata->parts, + ppdata.of_node = pdata->of_node; + mtd_device_parse_register(&info->mtd, NULL, &ppdata, pdata->parts, pdata->nr_parts); platform_set_drvdata(pdev, &info->mtd); diff --git a/include/linux/platform_data/mtd-nand-omap2.h b/include/linux/platform_data/mtd-nand-omap2.h index 24d32ca..6bf9ef4 100644 --- a/include/linux/platform_data/mtd-nand-omap2.h +++ b/include/linux/platform_data/mtd-nand-omap2.h @@ -60,6 +60,8 @@ struct omap_nand_platform_data { int devsize; enum omap_ecc ecc_opt; struct gpmc_nand_regs reg; -}; + /* for passing the partitions */ + struct device_node *of_node; +}; #endif
Pass an optional device_node pointer in the platform data, which in turn will be put into a mtd_part_parser_data. This way, code that sets up the platform devices can pass along the node from DT so that the partitions can be parsed. For non-DT boards, this change has no effect. Signed-off-by: Daniel Mack <zonque@gmail.com> --- drivers/mtd/nand/omap2.c | 4 +++- include/linux/platform_data/mtd-nand-omap2.h | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-)