Messages in this thread | | | Date | Tue, 26 Nov 2013 15:50:26 -0800 | From | Brian Norris <> | Subject | Re: [PATCH] MIPS: Alchemy: add missing platform_set_drvdata() in au1550nd_probe() |
| |
On Mon, Nov 11, 2013 at 02:18:29PM +0800, Wei Yongjun wrote: > From: Wei Yongjun <yongjun_wei@trendmicro.com.cn> > > Add missing platform_set_drvdata() in au1550nd_probe(), otherwise > calling platform_get_drvdata() in remove returns NULL.
An alternative solution: just allocate ctx with devm_kzalloc(). Then you don't have to kfree() it at all.
I don't mind one solution over the other too much. Let me know which you'd prefer.
> Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> > --- > drivers/mtd/nand/au1550nd.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/mtd/nand/au1550nd.c b/drivers/mtd/nand/au1550nd.c > index ae8dd7c..909b673 100644 > --- a/drivers/mtd/nand/au1550nd.c > +++ b/drivers/mtd/nand/au1550nd.c > @@ -480,6 +480,8 @@ static int au1550nd_probe(struct platform_device *pdev) > > mtd_device_register(&ctx->info, pd->parts, pd->num_parts); > > + platform_set_drvdata(pdev, ctx); > +
Personally, I'd choose to call platform_set_drvdata() earlier in the probe routine (e.g., immediately after its allocation), in case we end up calling platform_get_drvdata() from some sub-routine in the future.
> return 0; > > out3: >
Brian
| |