Re: [PATCH 1/3] Adding Skyworks SKY81452 MFD driver

Lee Jones
2014-08-26T08:23:10Z

On Mon, 25 Aug 2014, Gyungoh Yoo wrote:
> On Thu, Aug 21, 2014 at 10:45:02AM +0100, Lee Jones wrote:
> > When you send patch-sets, you should send them connected to one
> > another AKA threaded. That way, when we're reviewing we can look at
> > the other patches in the set for reference. See the man page for `git
> > send-email` for details.
> >
> > <commit log>
> >
> > > Signed-off-by: Gyungoh Yoo <jack.yoo@skyworksinc.com>
> > > ---

[...]

> > > +static int sky81452_register_devices(struct device *dev,
> > > + const struct sky81452_platform_data *pdata)
> > > +{
> > > + struct mfd_cell cells[] = {
> > > + {
> > > + .name = "sky81452-bl",
> > > + .platform_data = pdata->bl_pdata,
> > > + .pdata_size = sizeof(*pdata->bl_pdata),
> >
> > Have you tested this with DT?
> >
> > You're not passing the compatible string and not using
> > of_platform_populate() so I'm struggling to see how it would work
> > properly.
>
> sky81452-bl and regulator-sky81452 is parsing the information
> in regulator node of its parent node. So I thought these 2 drivers
> don't need compatible attribute. That is what it didn't have
> compatible string.
> Is is mandatory that all drivers should have compatible attribute?

How do they obtain their DT nodes?

[...]

> > > + return mfd_add_devices(dev, -1, cells, ARRAY_SIZE(cells),
> > > + NULL, 0, NULL);
> >
> > This doesn't really need to be in a function of its own. Please put
> > it in .probe(). Also check for the return value and present the user
> > with an error message if it fails.
>
> I think this need to be, in case of !CONFIG_OF.
> Can you please explain more in details?

Then how to you obtain the shared register map you created?

[...]

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