Messages in this thread | | | Date | Mon, 3 Nov 2008 22:34:55 +0300 | From | Anton Vorontsov <> | Subject | Re: [PATCH] power_supply: change the way how wm97xx-bat driver is registered |
| |
On Mon, Nov 03, 2008 at 09:29:55PM +0300, Dmitry Baryshkov wrote: > On Mon, Nov 03, 2008 at 06:11:51PM +0300, Anton Vorontsov wrote: > > On Wed, Oct 29, 2008 at 12:04:10PM +0300, Dmitry Baryshkov wrote: > > > #ifdef CONFIG_BATTERY_WM97XX > > > -void __init wm97xx_bat_set_pdata(struct wm97xx_batt_info *data); > > > +int wm97xx_bat_set_pdata(struct wm97xx_batt_info *data); > > > #else > > > -static inline void wm97xx_bat_set_pdata(struct wm97xx_batt_info *data) {} > > > +static inline int wm97xx_bat_set_pdata(struct wm97xx_batt_info *data) > > > +{ > > > + return -ENODEV; > > > +} > > > #endif > > > > How that supposed to work when BATTERY_WM97XX is a module? > > #ifdef CONFIG_BATTERY_WM97XX will evaluate to false, and you'll have > > dummy wm97xx_bat_set_pdata() that returns -ENODEV... > > This won't of course fix the wm97xx driver model, but the module issue > should be fixed. What about this patch? [...] > -#ifdef CONFIG_BATTERY_WM97XX > -void __init wm97xx_bat_set_pdata(struct wm97xx_batt_info *data); > +#if defined(CONFIG_BATTERY_WM97XX) || defined(CONFIG_BATTERY_WM97XX_MODULE) > +int wm97xx_bat_set_pdata(struct wm97xx_batt_info *data);
In case of CONFIG_BATTERY_WM97XX_MODULE, the build will break at link time, since wm97xx_bat_set_pdata() might be called from the built-in code (i.e. arch/arm/mach-pxa/palmtx.c).
> #else > -static inline void wm97xx_bat_set_pdata(struct wm97xx_batt_info *data) {} > +static inline int wm97xx_bat_set_pdata(struct wm97xx_batt_info *data) > +{ > + return -ENODEV; > +} > #endif > > #endif > -- > 1.5.6.5
-- Anton Vorontsov email: cbouatmailru@gmail.com irc://irc.freenode.net/bd2
| |