forked from Minki/linux
6637dea60e
-tip testing found the following build failure: LD .tmp_vmlinux1 drivers/built-in.o: In function `generic_set_freq': tuner-xc2028.c:(.text+0xbd896): undefined reference to `request_firmware' tuner-xc2028.c:(.text+0xbdd7a): undefined reference to `release_firmware' drivers/built-in.o: In function `xc_load_fw_and_init_tuner': xc5000.c:(.text+0xc68e6): undefined reference to `request_firmware' xc5000.c:(.text+0xc6abe): undefined reference to `release_firmware' with this config: http://redhat.com/~mingo/misc/config-Tue_May_20_18_11_34_CEST_2008.bad the reason is another kconfig tool bug that has to be worked around in the driver's Kconfig file: if FW_LOADER is selected in a second dependency, that is not properly propagated up the dependencies. in this case, FW_LOADER is selected from MEDIA_TUNER_XC2028: config MEDIA_TUNER_XC2028 tristate "XCeive xc2028/xc3028 tuners" depends on VIDEO_MEDIA && I2C depends on HOTPLUG select FW_LOADER which got selected by MEDIA_TUNER: config MEDIA_TUNER tristate default VIDEO_MEDIA && I2C depends on VIDEO_MEDIA && I2C select FW_LOADER if !MEDIA_TUNER_CUSTOMIZE && HOTPLUG but the kconfig tool did not pick up this second-order dependency and allowed CONFIG_FW_LOADER=m to be selected - in which case the build fails. the workaround i found was to move the select of FW_LOADER one level up, so that the buggy kconfig tool can notice it and can act appropriately. This problem can probably be worked around in other ways as well, i went for the minimal fix. Obviously, the kconfig tool should be fixed, it is not reasonable to expect driver authors to do manual dependency resolution (that kconfig itself already does) and uglify the Kconfig files. The kconfig tool did nothing to warn about this situation and did not prevent this faulty .config from being constructed. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
165 lines
4.9 KiB
Plaintext
165 lines
4.9 KiB
Plaintext
config MEDIA_ATTACH
|
|
bool "Load and attach frontend and tuner driver modules as needed"
|
|
depends on VIDEO_MEDIA
|
|
depends on MODULES
|
|
help
|
|
Remove the static dependency of DVB card drivers on all
|
|
frontend modules for all possible card variants. Instead,
|
|
allow the card drivers to only load the frontend modules
|
|
they require.
|
|
|
|
Also, tuner module will automatically load a tuner driver
|
|
when needed, for analog mode.
|
|
|
|
This saves several KBytes of memory.
|
|
|
|
Note: You will need module-init-tools v3.2 or later for this feature.
|
|
|
|
If unsure say Y.
|
|
|
|
config MEDIA_TUNER
|
|
tristate
|
|
default VIDEO_MEDIA && I2C
|
|
depends on VIDEO_MEDIA && I2C
|
|
select FW_LOADER if !MEDIA_TUNER_CUSTOMIZE && HOTPLUG
|
|
select MEDIA_TUNER_XC2028 if !MEDIA_TUNER_CUSTOMIZE && HOTPLUG
|
|
select MEDIA_TUNER_XC5000 if !MEDIA_TUNER_CUSTOMIZE && HOTPLUG
|
|
select MEDIA_TUNER_MT20XX if !MEDIA_TUNER_CUSTOMIZE
|
|
select MEDIA_TUNER_TDA8290 if !MEDIA_TUNER_CUSTOMIZE
|
|
select MEDIA_TUNER_TEA5761 if !MEDIA_TUNER_CUSTOMIZE
|
|
select MEDIA_TUNER_TEA5767 if !MEDIA_TUNER_CUSTOMIZE
|
|
select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMIZE
|
|
select MEDIA_TUNER_TDA9887 if !MEDIA_TUNER_CUSTOMIZE
|
|
|
|
menuconfig MEDIA_TUNER_CUSTOMIZE
|
|
bool "Customize analog and hybrid tuner modules to build"
|
|
depends on MEDIA_TUNER
|
|
help
|
|
This allows the user to deselect tuner drivers unnecessary
|
|
for their hardware from the build. Use this option with care
|
|
as deselecting tuner drivers which are in fact necessary will
|
|
result in V4L/DVB devices which cannot be tuned due to lack of
|
|
driver support
|
|
|
|
If unsure say N.
|
|
|
|
if MEDIA_TUNER_CUSTOMIZE
|
|
|
|
config MEDIA_TUNER_SIMPLE
|
|
tristate "Simple tuner support"
|
|
depends on VIDEO_MEDIA && I2C
|
|
select MEDIA_TUNER_TDA9887
|
|
default m if MEDIA_TUNER_CUSTOMIZE
|
|
help
|
|
Say Y here to include support for various simple tuners.
|
|
|
|
config MEDIA_TUNER_TDA8290
|
|
tristate "TDA 8290/8295 + 8275(a)/18271 tuner combo"
|
|
depends on VIDEO_MEDIA && I2C
|
|
select MEDIA_TUNER_TDA827X
|
|
select MEDIA_TUNER_TDA18271
|
|
default m if MEDIA_TUNER_CUSTOMIZE
|
|
help
|
|
Say Y here to include support for Philips TDA8290+8275(a) tuner.
|
|
|
|
config MEDIA_TUNER_TDA827X
|
|
tristate "Philips TDA827X silicon tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if DVB_FE_CUSTOMISE
|
|
help
|
|
A DVB-T silicon tuner module. Say Y when you want to support this tuner.
|
|
|
|
config MEDIA_TUNER_TDA18271
|
|
tristate "NXP TDA18271 silicon tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if DVB_FE_CUSTOMISE
|
|
help
|
|
A silicon tuner module. Say Y when you want to support this tuner.
|
|
|
|
config MEDIA_TUNER_TDA9887
|
|
tristate "TDA 9885/6/7 analog IF demodulator"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if MEDIA_TUNER_CUSTOMIZE
|
|
help
|
|
Say Y here to include support for Philips TDA9885/6/7
|
|
analog IF demodulator.
|
|
|
|
config MEDIA_TUNER_TEA5761
|
|
tristate "TEA 5761 radio tuner (EXPERIMENTAL)"
|
|
depends on VIDEO_MEDIA && I2C
|
|
depends on EXPERIMENTAL
|
|
default m if MEDIA_TUNER_CUSTOMIZE
|
|
help
|
|
Say Y here to include support for the Philips TEA5761 radio tuner.
|
|
|
|
config MEDIA_TUNER_TEA5767
|
|
tristate "TEA 5767 radio tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if MEDIA_TUNER_CUSTOMIZE
|
|
help
|
|
Say Y here to include support for the Philips TEA5767 radio tuner.
|
|
|
|
config MEDIA_TUNER_MT20XX
|
|
tristate "Microtune 2032 / 2050 tuners"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if MEDIA_TUNER_CUSTOMIZE
|
|
help
|
|
Say Y here to include support for the MT2032 / MT2050 tuner.
|
|
|
|
config MEDIA_TUNER_MT2060
|
|
tristate "Microtune MT2060 silicon IF tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if DVB_FE_CUSTOMISE
|
|
help
|
|
A driver for the silicon IF tuner MT2060 from Microtune.
|
|
|
|
config MEDIA_TUNER_MT2266
|
|
tristate "Microtune MT2266 silicon tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if DVB_FE_CUSTOMISE
|
|
help
|
|
A driver for the silicon baseband tuner MT2266 from Microtune.
|
|
|
|
config MEDIA_TUNER_MT2131
|
|
tristate "Microtune MT2131 silicon tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if DVB_FE_CUSTOMISE
|
|
help
|
|
A driver for the silicon baseband tuner MT2131 from Microtune.
|
|
|
|
config MEDIA_TUNER_QT1010
|
|
tristate "Quantek QT1010 silicon tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if DVB_FE_CUSTOMISE
|
|
help
|
|
A driver for the silicon tuner QT1010 from Quantek.
|
|
|
|
config MEDIA_TUNER_XC2028
|
|
tristate "XCeive xc2028/xc3028 tuners"
|
|
depends on VIDEO_MEDIA && I2C
|
|
depends on HOTPLUG
|
|
select FW_LOADER
|
|
default m if MEDIA_TUNER_CUSTOMIZE
|
|
help
|
|
Say Y here to include support for the xc2028/xc3028 tuners.
|
|
|
|
config MEDIA_TUNER_XC5000
|
|
tristate "Xceive XC5000 silicon tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
depends on HOTPLUG
|
|
select FW_LOADER
|
|
default m if DVB_FE_CUSTOMISE
|
|
help
|
|
A driver for the silicon tuner XC5000 from Xceive.
|
|
This device is only used inside a SiP called togther with a
|
|
demodulator for now.
|
|
|
|
config MEDIA_TUNER_MXL5005S
|
|
tristate "MaxLinear MSL5005S silicon tuner"
|
|
depends on VIDEO_MEDIA && I2C
|
|
default m if DVB_FE_CUSTOMISE
|
|
help
|
|
A driver for the silicon tuner MXL5005S from MaxLinear.
|
|
|
|
endif # MEDIA_TUNER_CUSTOMIZE
|