Re: linux-next: Tree for May 1 (media/usb/stk1160)

David Rientjes
2013-05-01T20:40:29Z

On Wed, 1 May 2013, Randy Dunlap wrote:

> >>> When CONFIG_SND=m and CONFIG_SND_AC97_CODEC=m and
> >>> CONFIG_VIDEO_STK1160=y
> >>> CONFIG_VIDEO_STK1160_AC97=y
> >>>
> >>> drivers/built-in.o: In function `stk1160_ac97_register':
> >>> (.text+0x122706): undefined reference to `snd_card_create'
> >>> drivers/built-in.o: In function `stk1160_ac97_register':
> >>> (.text+0x1227b2): undefined reference to `snd_ac97_bus'
> >>> drivers/built-in.o: In function `stk1160_ac97_register':
> >>> (.text+0x1227cd): undefined reference to `snd_card_free'
> >>> drivers/built-in.o: In function `stk1160_ac97_register':
> >>> (.text+0x12281b): undefined reference to `snd_ac97_mixer'
> >>> drivers/built-in.o: In function `stk1160_ac97_register':
> >>> (.text+0x122832): undefined reference to `snd_card_register'
> >>> drivers/built-in.o: In function `stk1160_ac97_unregister':
> >>> (.text+0x12285e): undefined reference to `snd_card_free'
> >>>
> >>>
> >>> This kconfig fragment:
> >>> config VIDEO_STK1160_AC97
> >>> bool "STK1160 AC97 codec support"
> >>> depends on VIDEO_STK1160 && SND
> >
> > This doesn't depend on SND, it depends on SND=y.
> > --
>
>
> Maybe this option *should* depend on SND=y, but that's not what the
> kconfig syntax says. The kconfig language does not care if the variable is
> a bool or a tristate when evaluating a depends expression AFAICT (but I am
> only reading Documentation/kbuild/kconfig-language.txt, not the source code).
>

Doing "depends on SND=y" will only allow an option to be enabled if SND is
builtin so the snd_card_* functions above will be defined (with your
config we have a builtin function calling a module which may or may not be
loaded). I think you've already addressed the snd_ac97_* functions, so
the fix here should be relatively simple. Yann?