lkml.org 
[lkml]   [2012]   [Apr]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/1] Drivers/media/radio: Fix build error
On 04/01/2012 12:24 PM, Hans Verkuil wrote:

> On Sunday, April 01, 2012 21:09:34 Tracey Dent wrote:
>> radio-maxiradio depends on SND_FM801_TEA575X_BOOL to build or will
>> result in an build error such as:
>>
>> Kernel: arch/x86/boot/bzImage is ready (#1)
>> ERROR: "snd_tea575x_init" [drivers/media/radio/radio-maxiradio.ko] undefined!
>> ERROR: "snd_tea575x_exit" [drivers/media/radio/radio-maxiradio.ko] undefined!
>> WARNING: modpost: Found 6 section mismatch(es).
>> To see full details build your kernel with:
>> 'make CONFIG_DEBUG_SECTION_MISMATCH=y'
>> make[1]: *** [__modpost] Error 1
>> make: *** [modules] Error 2
>>
>> Select CONFIG_SND_TEA575X to fixes problem and enable
>> the driver to be built as desired.
>>
>> v2:
>> instead of selecting CONFIG_SND_FM801_TEA575X_BOOL, select
>> CONFIG_SND_TEA575X, which in turns selects CONFIG_SND_FM801_TEA575X_BOOL
>> and any other dependencies for it to build.

Tracey,

'select' does not follow its dependency chain. See
Documentation/kbuild/kconfig-language.txt:

Note:
select should be used with care. select will force
a symbol to a value without visiting the dependencies.
By abusing select you are able to select a symbol FOO even
if FOO depends on BAR that is not set.
In general use select only for non-visible symbols
(no prompts anywhere) and for symbols with no dependencies.
That will limit the usefulness but on the other hand avoid
the illegal configurations all over.


> No, this is the correct patch:


Thanks.


> diff --git a/sound/pci/Kconfig b/sound/pci/Kconfig
> index 8816804..5ca0939 100644
> --- a/sound/pci/Kconfig
> +++ b/sound/pci/Kconfig
> @@ -2,8 +2,8 @@
>
> config SND_TEA575X
> tristate
> - depends on SND_FM801_TEA575X_BOOL || SND_ES1968_RADIO || RADIO_SF16FMR2
> - default SND_FM801 || SND_ES1968 || RADIO_SF16FMR2
> + depends on SND_FM801_TEA575X_BOOL || SND_ES1968_RADIO || RADIO_SF16FMR2 || RADIO_MAXIRADIO
> + default SND_FM801 || SND_ES1968 || RADIO_SF16FMR2 || RADIO_MAXIRADIO
>
> menuconfig SND_PCI
> bool "PCI sound devices"
>
> RADIO_MAXIRADIO should be treated just like RADIO_SF16FMR2, I just didn't
> realize at the time that it had to be added as a SND_TEA575X dependency.
>
> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
>
> (Sorry for the late reply, I didn't have access to my cisco email for the last
> few days).
>
> Regards,
>
> Hans
>
>>
>> Reported-by: Shea Levy <shea@shealevy.com>
>> Signed-off-by: Tracey Dent <tdent48227@gmail.com>
>> ---
>> drivers/media/radio/Kconfig | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig
>> index 8db2d7f..b518ce5 100644
>> --- a/drivers/media/radio/Kconfig
>> +++ b/drivers/media/radio/Kconfig
>> @@ -44,6 +44,7 @@ config USB_DSBR
>> config RADIO_MAXIRADIO
>> tristate "Guillemot MAXI Radio FM 2000 radio"
>> depends on VIDEO_V4L2 && PCI && SND
>> + select SND_TEA575X
>> ---help---
>> Choose Y here if you have this radio card. This card may also be
>> found as Gemtek PCI FM.
>>
> --


--
~Randy


\
 
 \ /
  Last update: 2012-04-01 21:39    [W:0.047 / U:1.240 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site