Re: [PATCH v3 1/4] mfd: mxs-lradc: Add support for mxs-lradc MFD

From: Lee Jones
Date: Thu Aug 04 2016 - 04:30:29 EST


On Thu, 14 Jul 2016, Marek Vasut wrote:

> On 07/13/2016 02:49 PM, Lee Jones wrote:
> > On Fri, 01 Jul 2016, Harald Geyer wrote:
> >
> > > Hi Ksenija!
> > >
> > > Ksenija StanojeviÄ writes:
> > > > On Tue, Jun 28, 2016 at 6:28 PM, Lee Jones <lee.jones@xxxxxxxxxx> wrote:
> > > > > > +static int mxs_lradc_add_device(struct platform_device *pdev,
> > > > > > + struct mxs_lradc *lradc, char *name, int i)
> > > > > > +{
> > > > > > + struct mfd_cell *cell;
> > > > > > +
> > > > > > + cell = &lradc->cells[i];
> > > > > > + cell->name = name;
> > > > > > + cell->platform_data = lradc;
> > > > > > + cell->pdata_size = sizeof(*lradc);
> > > > > > +
> > > > > > + return devm_mfd_add_devices(&pdev->dev, -1, cell, 1, NULL, 0, NULL);
> > > > > > +}
> > > > >
> > > > > Please don't roll your own API.
> > > > >
> > > > > Use 'struct mfd_cell' like everyone else does.
> > > >
> > > > It has been suggested in previous reviews to use separate function to
> > > > register mfd device, and to make mfd_cell allocate dynamically because
> > > > struc mxs-lradc is allocated dynamically.
> > > > But I can revrse changes and make mfd_cells allocate staticaly
> > > > wthout separate function.
> > >
> > > I think making mfd_cells members of struct mxs-lradc will address all
> > > review comments.
> >
> > No, please don't do that either.
> >
> It'd be nice if you explained in detail why not. Otherwise this is just
> empty splat.

I already said what needs to be done.

"Use struct mfd_cell", in it's pure/static form. Don't include it in
any device data struct.

"like everyone else does", look at other driver to see how they do
it.

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog