On Thu, 29 Mar 2007, Adrian Bunk wrote:
> On Thu, Mar 29, 2007 at 01:06:12PM +0200, Armin Schindler wrote:
> > On Sat, 24 Mar 2007, Adrian Bunk wrote:
> > > On Sat, Mar 24, 2007 at 02:49:42PM +0100, Armin Schindler wrote:
> > > > On Sat, 24 Mar 2007, Adrian Bunk wrote:
> > > > > Randy Dunlap reported in kernel Bugzilla #8241 the following compile 
> > > > > error with CONFIG_ISDN_CAPI=m, CONFIG_ISDN_DIVAS=y:
> > > > > 
> > > > > <--  snip  -->
> > > > > 
> > > > > ...
> > > > > WARNING: "DIVA_DIDD_Read" [drivers/isdn/hardware/eicon/divacapi.ko] 
> > > > > undefined!
> > > > > WARNING: "DIVA_DIDD_Read" [drivers/isdn/hardware/eicon/diva_mnt.ko] 
> > > > > undefined!
> > > > > WARNING: "DIVA_DIDD_Read" [drivers/isdn/hardware/eicon/diva_idi.ko] 
> > > > > undefined!
> > > > > WARNING: "proc_net_eicon" [drivers/isdn/hardware/eicon/diva_idi.ko] 
> > > > > undefined!
> > > > > make[1]: *** [__modpost] Error 1
> > > > > 
> > > > > <--  snip  -->
> > > > > 
> > > > > 
> > > > > Kconfig contains the following strange thing:
> > > > > 
> > > > > menu "Active Eicon DIVA Server cards"
> > > > >         depends on NET && ISDN && ISDN_CAPI!=n
> > > > > 
> > > > > 
> > > > > It seems that except for ISDN_DIVAS_DIVACAPI (that already has a 
> > > > > proper 
> > > > > dependency), nothing here actually requires ISDN_CAPI?
> > > > 
> > > > Not quite true. Yes, the base modules for the divas driver do not 
> > > > require 
> > > > ISDN_CAPI, but without ISDN_CAPI it doesn't make any sense.
> > > 
> > > Let me try to understand this:
> > > 
> > > Does it make sense to have CONFIG_ISDN_DIVAS=y, CONFIG_ISDN_CAPI=m?
> > 
> > Yes, this is possible. DIVAS itself does not depend on CAPI.
> > 
> > > And do CONFIG_ISDN_DIVAS=y/m, CONFIG_ISDN_DIVAS_DIVACAPI=n 
> > > configurations make sense?
> > 
> > Yes, but for only for experts who want to use the DIVAS own API
> > without CAPI.
> >  
> > > If not, what about:
> > > - let ISDN_DIVAS depend on ISDN_CAPI and
> > > - enable ISDN_DIVAS_DIVACAPI unconditionally (and perhaps even build 
> > >                                               it into the divas module)?
> > 
> > That would not be correct.
> >  
> > > > The patch below (go into /hardware even for non ISDN_CAPI) is wrong. The
> > > > subdir /hardware was created for new drivers using CAPI. So it is 
> > > > correct to
> > > > go there when ISDN_CAPI != n only.
> > > > 
> > > > I don't understand the warnings above. The symbols are exported by 
> > > > divas 
> > > > modules, so why is it causing warnings? There have been no change in 
> > > > the 
> > > > divas modules for this. Any change in the kernel module creation 
> > > > structure
> > > > which may causing this?
> > > 
> > > These aren't warnings, these are errors.
> > > 
> > > Due to
> > >   obj-$(CONFIG_ISDN_CAPI)                    += hardware/
> > > 
> > > hardware/ isn't visited with CONFIG_ISDN_CAPI=m when building vmlinux.
> > > 
> > > This means the modules were built, but the static code they were using 
> > > wasn't linkd into the kernel.
> > > 
> > > This might not have occured before since CONFIG_ISDN_CAPI=m, 
> > > CONFIG_ISDN_DIVAS=y is an unusual configuration.
> > 
> > I see. So for DIVAS the line 
> >   obj-$(CONFIG_ISDN_CAPI)                    += hardware/
> > causes the trouble, because all hardware/ driver are meant to be CAPI 
> > drivers...
> > 
> > In that case we should change hardware/eicon/ as you proposed:
> > > - let ISDN_DIVAS depend on ISDN_CAPI and
> > 
> > So the solution might be just to change
> >  
> >     menu "Active Eicon DIVA Server cards"
> >       depends on NET && ISDN && ISDN_CAPI!=n
> > to 
> >     menu "Active Eicon DIVA Server cards"
> >       depends on NET && ISDN && ISDN_CAPI
> > 
> > in drivers/isdn/hardware/eicon/Kconfig
> > right?
> 
> 
> This is a solution.
> 
> It implies that CONFIG_ISDN_CAPI=n, CONFIG_ISDN_DIVAS=y/m or 
> CONFIG_ISDN_CAPI=m, CONFIG_ISDN_DIVAS=y will not be possible, and the 
> "experts who want to use the DIVAS own API" you were talking about have 
> to enable CONFIG_ISDN_CAPI in their kernel. But considering that it 
> isn't a new problem, and you as the maintainer hadn't heard about it 
> before (it results in the driver not being included into the kernel 
> despite CONFIG_ISDN_DIVAS=y), this might be a pure theoretical 
> configuration not worth supporting.

Agreed. It seems that these 'experts' are using the separate divas driver
package anyway.

Armin
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to