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 <[email protected]>
> 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

Reply via email to