Re: [PATCH v4 1/3] mfd: wm831x: Add basic device tree binding

From: Lee Jones
Date: Fri Mar 17 2017 - 06:09:40 EST


On Fri, 17 Mar 2017, Charles Keepax wrote:

> On Fri, Mar 17, 2017 at 09:15:02AM +0000, Lee Jones wrote:
> > On Thu, 16 Mar 2017, Charles Keepax wrote:
> >
> > > On Thu, Mar 16, 2017 at 02:00:19PM +0000, Lee Jones wrote:
> > > > On Wed, 15 Mar 2017, Charles Keepax wrote:
> > > > > + if (i2c->dev.of_node) {
> > > > > + const struct of_device_id *id = of_match_device(wm831x_of_match,
> > > > > + &i2c->dev);
> > > >
> > > > Not keen on this. Please declare the variable up with the others.
> > > >
> > >
> > > They are never going to be used anywhere else in the function.
> > > Again I can if you feel strongly but isn't it really better to
> > > limit the scope of the variables if they are only being used
> > > locally.
> >
> > I understand the motivation, but if we did that all the time, the code
> > would look pretty dire IMHO.
> >
>
> Ok I do another spin.
>
> > > > > + unsigned long of_type = (unsigned long)id->data;
> > > >
> > > > And this one.
> > > >
> > > > > + type = (enum wm831x_parent)of_type;
> > > >
> > > > Looks like you don't even need of_type.
> > > >
> > > > Just cast id->data straight into wm81x_parent.
> > >
> > > Pretty sure you will get a warning on 64-bit systems if I do
> > > that.
> >
> > What makes you think that?
> >
>
> commit 942786e6e647cef94cf96dcd836d343be55fc452
> Author: Lee Jones <lee.jones@xxxxxxxxxx>
> mfd: arizona: Rid data size incompatibility warn when building for 64bit
>
> I am fairly sure an enum would get treated the same as an int by
> the compiler. I will try it and see.

I already prototyped it. No warnings seen.

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