On Fri, Mar 17, 2017 at 09:37:20AM +0000, Lee Jones wrote:
> 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.
> 

Cool thanks, the weird corners of C never cease to amaze me I
will update the patch and resend.

Thanks,
Charles

Reply via email to