On Friday 22 February 2008, Jean Delvare wrote:
> Hi David,
>
> On Fri, 22 Feb 2008 00:23:16 -0800, David Brownell wrote:
> > Don't require platform code to be #ifdeffed according to whether
> > I2C is enabled or not ... if it's not enabled, let GCC compile out
> > all I2C device declarations. (Issue noted on an NSLU2 build that
> > didn't configure I2C.)
> >
> > Signed-off-by: David Brownell <[EMAIL PROTECTED]>
> > ---
> > include/linux/i2c.h | 9 ++++++++-
> > 1 file changed, 8 insertions(+), 1 deletion(-)
> >
> > --- at91.orig/include/linux/i2c.h 2008-02-21 22:58:53.000000000 -0800
> > +++ at91/include/linux/i2c.h 2008-02-21 23:02:57.000000000 -0800
> > @@ -271,9 +271,16 @@ extern void i2c_unregister_device(struct
> > * This is done at arch_initcall time, before declaring any i2c adapters.
> > * Modules for add-on boards must use other calls.
> > */
> > +#if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
>
> I'm fairly certain that #ifdef CONFIG_I2C is enough.
No; if I2C is modular, CONFIG_I2C isn't defined.
Though maybe it could use CONFIG_I2C_BOARDINFO, which
is defined as boolean. In fact that's what the I2C
Makefile uses, but it'd be less obvious here.
> > extern int
> > i2c_register_board_info(int busnum, struct i2c_board_info const *info,
> > unsigned n);
> > -
> > +#else
> > +static inline int
> > +i2c_register_board_info(int busnum, struct i2c_board_info const *info,
> > unsigned n)
> > +{
> > + return 0;
> > +}
> > +#endif
> >
> > /*
> > * The following structs are for those who like to implement new bus
> > drivers:
>
> Other than that I am fine with this patch. Want it in 2.6.25 or 2.6.26
> is enough?
I'd go for 2.6.25, since it's a build fix.
- Dave
_______________________________________________
i2c mailing list
[email protected]
http://lists.lm-sensors.org/mailman/listinfo/i2c