Message ID | Pine.LNX.4.64.1108301921040.19151@axis700.grange (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Aug 30, 2011 at 1:22 PM, Guennadi Liakhovetski <g.liakhovetski@gmx.de> wrote: > None of the media drivers are compulsory, let users select which drivers > they want to build, instead of having to unselect them one by one. > > Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> I would be against this particular patch. When MEDIA_TUNER_CUSTOMISE is DISABLED, Kconfig automatically selects the required tuners. When MEDIA_TUNER_CUSTOMISE is *ENABLED*, the menu opens up with everything selected by default, users can choose which modules not to build. I believe that your patch will create a new user-support nightmare. Is there any way to justify a need for this type of change? Can't you just leave MEDIA_TUNER_CUSTOMISE disabled? If MEDIA_TUNER_CUSTOMISE is disabled and you are not building any drivers that require a tuner module, then the tuner modules will not be built -- if that isn't functioning properly, then let's fix that, instead. Regards, Michael Krufky > --- > drivers/media/common/tuners/Kconfig | 23 +---------------------- > drivers/media/radio/Kconfig | 1 - > drivers/media/rc/Kconfig | 16 +--------------- > drivers/media/rc/keymaps/Kconfig | 1 - > drivers/media/video/Kconfig | 7 ++----- > 5 files changed, 4 insertions(+), 44 deletions(-) > > diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig > index 996302a..1e53057 100644 > --- a/drivers/media/common/tuners/Kconfig > +++ b/drivers/media/common/tuners/Kconfig > @@ -33,7 +33,7 @@ config MEDIA_TUNER > select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE > > config MEDIA_TUNER_CUSTOMISE > - bool "Customize analog and hybrid tuner modules to build" > + bool "Select analog and hybrid tuner modules to build" > depends on MEDIA_TUNER > default y if EXPERT > help > @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE > tristate "Simple tuner support" > depends on VIDEO_MEDIA && I2C > select MEDIA_TUNER_TDA9887 > - default m if MEDIA_TUNER_CUSTOMISE > help > Say Y here to include support for various simple tuners. > > @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 > depends on VIDEO_MEDIA && I2C > select MEDIA_TUNER_TDA827X > select MEDIA_TUNER_TDA18271 > - default m if MEDIA_TUNER_CUSTOMISE > 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE > help > Say Y here to include support for Philips TDA9885/6/7 > analog IF demodulator. > @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 > tristate "TEA 5761 radio tuner (EXPERIMENTAL)" > depends on VIDEO_MEDIA && I2C > depends on EXPERIMENTAL > - default m if MEDIA_TUNER_CUSTOMISE > 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_CUSTOMISE > 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_CUSTOMISE > 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 > - default m if MEDIA_TUNER_CUSTOMISE > 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 > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner XC5000 from Xceive. > This device is only used inside a SiP called together with a > @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 > config MEDIA_TUNER_XC4000 > tristate "Xceive XC4000 silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner XC4000 from Xceive. > This device is only used inside a SiP called together with a > @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 > config MEDIA_TUNER_MXL5005S > tristate "MaxLinear MSL5005S silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner MXL5005S from MaxLinear. > > config MEDIA_TUNER_MXL5007T > tristate "MaxLinear MxL5007T silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner MxL5007T from MaxLinear. > > config MEDIA_TUNER_MC44S803 > tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > Say Y here to support the Freescale MC44S803 based tuners > > config MEDIA_TUNER_MAX2165 > tristate "Maxim MAX2165 silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner MAX2165 from Maxim. > > config MEDIA_TUNER_TDA18218 > tristate "NXP TDA18218 silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > NXP TDA18218 silicon tuner driver. > > config MEDIA_TUNER_TDA18212 > tristate "NXP TDA18212 silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > NXP TDA18212 silicon tuner driver. > > diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig > index 52798a1..0195335 100644 > --- a/drivers/media/radio/Kconfig > +++ b/drivers/media/radio/Kconfig > @@ -5,7 +5,6 @@ > menuconfig RADIO_ADAPTERS > bool "Radio Adapters" > depends on VIDEO_V4L2 > - default y > ---help--- > Say Y here to enable selecting AM/FM radio adapters. > > diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig > index 899f783..2a4f829 100644 > --- a/drivers/media/rc/Kconfig > +++ b/drivers/media/rc/Kconfig > @@ -1,7 +1,6 @@ > menuconfig RC_CORE > tristate "Remote Controller adapters" > depends on INPUT > - default INPUT > ---help--- > Enable support for Remote Controllers on Linux. This is > needed in order to support several video capture adapters. > @@ -11,12 +10,9 @@ menuconfig RC_CORE > if you don't need IR, as otherwise, you may not be able to > compile the driver for your adapter. > > -if RC_CORE > - > config LIRC > tristate > - default y > - > + depends on RC_CORE > ---help--- > Enable this option to build the Linux Infrared Remote > Control (LIRC) core device interface driver. The LIRC > @@ -30,7 +26,6 @@ config IR_NEC_DECODER > tristate "Enable IR raw decoder for the NEC protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have IR with NEC protocol, and > @@ -40,7 +35,6 @@ config IR_RC5_DECODER > tristate "Enable IR raw decoder for the RC-5 protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have IR with RC-5 protocol, and > @@ -50,7 +44,6 @@ config IR_RC6_DECODER > tristate "Enable IR raw decoder for the RC6 protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have an infrared remote control which > @@ -60,7 +53,6 @@ config IR_JVC_DECODER > tristate "Enable IR raw decoder for the JVC protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have an infrared remote control which > @@ -69,7 +61,6 @@ config IR_JVC_DECODER > config IR_SONY_DECODER > tristate "Enable IR raw decoder for the Sony protocol" > depends on RC_CORE > - default y > > ---help--- > Enable this option if you have an infrared remote control which > @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER > tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have IR with RC-5 (streamzap) protocol, > @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER > tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have a Microsoft Remote Keyboard for > @@ -102,7 +91,6 @@ config IR_LIRC_CODEC > tristate "Enable IR to LIRC bridge" > depends on RC_CORE > depends on LIRC > - default y > > ---help--- > Enable this option to pass raw IR to and from userspace via > @@ -236,5 +224,3 @@ config RC_LOOPBACK > > To compile this driver as a module, choose M here: the module will > be called rc_loopback. > - > -endif #RC_CORE > diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig > index 8e615fd..dbaacf1 100644 > --- a/drivers/media/rc/keymaps/Kconfig > +++ b/drivers/media/rc/keymaps/Kconfig > @@ -1,7 +1,6 @@ > config RC_MAP > tristate "Compile Remote Controller keymap modules" > depends on RC_CORE > - default y > > ---help--- > This option enables the compilation of lots of Remote > diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig > index f574dc0..d26443d 100644 > --- a/drivers/media/video/Kconfig > +++ b/drivers/media/video/Kconfig > @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG > menuconfig VIDEO_CAPTURE_DRIVERS > bool "Video capture adapters" > depends on VIDEO_V4L2 > - default y > ---help--- > Say Y here to enable selecting the video adapters for > webcams, analog TV, and hybrid analog/digital TV. > @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO > > config VIDEO_IR_I2C > tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO > - depends on I2C && RC_CORE > - default y > + depends on I2C > + select RC_CORE > ---help--- > Most boards have an IR chip directly connected via GPIO. However, > some video boards have the IR connected via I2C bus. > @@ -556,7 +555,6 @@ config VIDEO_VIU > tristate "Freescale VIU Video Driver" > depends on VIDEO_V4L2 && PPC_MPC512x > select VIDEOBUF_DMA_CONTIG > - default y > ---help--- > Support for Freescale VIU video driver. This device captures > video data, or overlays video on DIU frame buffer. > @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" > menuconfig V4L_USB_DRIVERS > bool "V4L USB devices" > depends on USB > - default y > > if V4L_USB_DRIVERS && USB > > -- > 1.7.2.5 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Aug 30, 2011 at 1:32 PM, Michael Krufky <mkrufky@linuxtv.org> wrote: > On Tue, Aug 30, 2011 at 1:22 PM, Guennadi Liakhovetski > <g.liakhovetski@gmx.de> wrote: >> None of the media drivers are compulsory, let users select which drivers >> they want to build, instead of having to unselect them one by one. >> >> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> > > I would be against this particular patch. When MEDIA_TUNER_CUSTOMISE > is DISABLED, Kconfig automatically selects the required tuners. When > MEDIA_TUNER_CUSTOMISE is *ENABLED*, the menu opens up with everything > selected by default, users can choose which modules not to build. I > believe that your patch will create a new user-support nightmare. Is > there any way to justify a need for this type of change? Can't you > just leave MEDIA_TUNER_CUSTOMISE disabled? If MEDIA_TUNER_CUSTOMISE > is disabled and you are not building any drivers that require a tuner > module, then the tuner modules will not be built -- if that isn't > functioning properly, then let's fix that, instead. I see now that this applies to decoders and such as well -- not only tuners. I see this patch as a step backwards, where the current state is user friendly enough to automatically select required module dependencies while still allowing customization. Michael Krufky > > >> --- >> drivers/media/common/tuners/Kconfig | 23 +---------------------- >> drivers/media/radio/Kconfig | 1 - >> drivers/media/rc/Kconfig | 16 +--------------- >> drivers/media/rc/keymaps/Kconfig | 1 - >> drivers/media/video/Kconfig | 7 ++----- >> 5 files changed, 4 insertions(+), 44 deletions(-) >> >> diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig >> index 996302a..1e53057 100644 >> --- a/drivers/media/common/tuners/Kconfig >> +++ b/drivers/media/common/tuners/Kconfig >> @@ -33,7 +33,7 @@ config MEDIA_TUNER >> select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE >> >> config MEDIA_TUNER_CUSTOMISE >> - bool "Customize analog and hybrid tuner modules to build" >> + bool "Select analog and hybrid tuner modules to build" >> depends on MEDIA_TUNER >> default y if EXPERT >> help >> @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE >> tristate "Simple tuner support" >> depends on VIDEO_MEDIA && I2C >> select MEDIA_TUNER_TDA9887 >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> Say Y here to include support for various simple tuners. >> >> @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 >> depends on VIDEO_MEDIA && I2C >> select MEDIA_TUNER_TDA827X >> select MEDIA_TUNER_TDA18271 >> - default m if MEDIA_TUNER_CUSTOMISE >> 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE >> help >> Say Y here to include support for Philips TDA9885/6/7 >> analog IF demodulator. >> @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 >> tristate "TEA 5761 radio tuner (EXPERIMENTAL)" >> depends on VIDEO_MEDIA && I2C >> depends on EXPERIMENTAL >> - default m if MEDIA_TUNER_CUSTOMISE >> 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_CUSTOMISE >> 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_CUSTOMISE >> 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 >> - default m if MEDIA_TUNER_CUSTOMISE >> 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 >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> A driver for the silicon tuner XC5000 from Xceive. >> This device is only used inside a SiP called together with a >> @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 >> config MEDIA_TUNER_XC4000 >> tristate "Xceive XC4000 silicon tuner" >> depends on VIDEO_MEDIA && I2C >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> A driver for the silicon tuner XC4000 from Xceive. >> This device is only used inside a SiP called together with a >> @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 >> config MEDIA_TUNER_MXL5005S >> tristate "MaxLinear MSL5005S silicon tuner" >> depends on VIDEO_MEDIA && I2C >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> A driver for the silicon tuner MXL5005S from MaxLinear. >> >> config MEDIA_TUNER_MXL5007T >> tristate "MaxLinear MxL5007T silicon tuner" >> depends on VIDEO_MEDIA && I2C >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> A driver for the silicon tuner MxL5007T from MaxLinear. >> >> config MEDIA_TUNER_MC44S803 >> tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" >> depends on VIDEO_MEDIA && I2C >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> Say Y here to support the Freescale MC44S803 based tuners >> >> config MEDIA_TUNER_MAX2165 >> tristate "Maxim MAX2165 silicon tuner" >> depends on VIDEO_MEDIA && I2C >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> A driver for the silicon tuner MAX2165 from Maxim. >> >> config MEDIA_TUNER_TDA18218 >> tristate "NXP TDA18218 silicon tuner" >> depends on VIDEO_MEDIA && I2C >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> NXP TDA18218 silicon tuner driver. >> >> config MEDIA_TUNER_TDA18212 >> tristate "NXP TDA18212 silicon tuner" >> depends on VIDEO_MEDIA && I2C >> - default m if MEDIA_TUNER_CUSTOMISE >> help >> NXP TDA18212 silicon tuner driver. >> >> diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig >> index 52798a1..0195335 100644 >> --- a/drivers/media/radio/Kconfig >> +++ b/drivers/media/radio/Kconfig >> @@ -5,7 +5,6 @@ >> menuconfig RADIO_ADAPTERS >> bool "Radio Adapters" >> depends on VIDEO_V4L2 >> - default y >> ---help--- >> Say Y here to enable selecting AM/FM radio adapters. >> >> diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig >> index 899f783..2a4f829 100644 >> --- a/drivers/media/rc/Kconfig >> +++ b/drivers/media/rc/Kconfig >> @@ -1,7 +1,6 @@ >> menuconfig RC_CORE >> tristate "Remote Controller adapters" >> depends on INPUT >> - default INPUT >> ---help--- >> Enable support for Remote Controllers on Linux. This is >> needed in order to support several video capture adapters. >> @@ -11,12 +10,9 @@ menuconfig RC_CORE >> if you don't need IR, as otherwise, you may not be able to >> compile the driver for your adapter. >> >> -if RC_CORE >> - >> config LIRC >> tristate >> - default y >> - >> + depends on RC_CORE >> ---help--- >> Enable this option to build the Linux Infrared Remote >> Control (LIRC) core device interface driver. The LIRC >> @@ -30,7 +26,6 @@ config IR_NEC_DECODER >> tristate "Enable IR raw decoder for the NEC protocol" >> depends on RC_CORE >> select BITREVERSE >> - default y >> >> ---help--- >> Enable this option if you have IR with NEC protocol, and >> @@ -40,7 +35,6 @@ config IR_RC5_DECODER >> tristate "Enable IR raw decoder for the RC-5 protocol" >> depends on RC_CORE >> select BITREVERSE >> - default y >> >> ---help--- >> Enable this option if you have IR with RC-5 protocol, and >> @@ -50,7 +44,6 @@ config IR_RC6_DECODER >> tristate "Enable IR raw decoder for the RC6 protocol" >> depends on RC_CORE >> select BITREVERSE >> - default y >> >> ---help--- >> Enable this option if you have an infrared remote control which >> @@ -60,7 +53,6 @@ config IR_JVC_DECODER >> tristate "Enable IR raw decoder for the JVC protocol" >> depends on RC_CORE >> select BITREVERSE >> - default y >> >> ---help--- >> Enable this option if you have an infrared remote control which >> @@ -69,7 +61,6 @@ config IR_JVC_DECODER >> config IR_SONY_DECODER >> tristate "Enable IR raw decoder for the Sony protocol" >> depends on RC_CORE >> - default y >> >> ---help--- >> Enable this option if you have an infrared remote control which >> @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER >> tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" >> depends on RC_CORE >> select BITREVERSE >> - default y >> >> ---help--- >> Enable this option if you have IR with RC-5 (streamzap) protocol, >> @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER >> tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" >> depends on RC_CORE >> select BITREVERSE >> - default y >> >> ---help--- >> Enable this option if you have a Microsoft Remote Keyboard for >> @@ -102,7 +91,6 @@ config IR_LIRC_CODEC >> tristate "Enable IR to LIRC bridge" >> depends on RC_CORE >> depends on LIRC >> - default y >> >> ---help--- >> Enable this option to pass raw IR to and from userspace via >> @@ -236,5 +224,3 @@ config RC_LOOPBACK >> >> To compile this driver as a module, choose M here: the module will >> be called rc_loopback. >> - >> -endif #RC_CORE >> diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig >> index 8e615fd..dbaacf1 100644 >> --- a/drivers/media/rc/keymaps/Kconfig >> +++ b/drivers/media/rc/keymaps/Kconfig >> @@ -1,7 +1,6 @@ >> config RC_MAP >> tristate "Compile Remote Controller keymap modules" >> depends on RC_CORE >> - default y >> >> ---help--- >> This option enables the compilation of lots of Remote >> diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig >> index f574dc0..d26443d 100644 >> --- a/drivers/media/video/Kconfig >> +++ b/drivers/media/video/Kconfig >> @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG >> menuconfig VIDEO_CAPTURE_DRIVERS >> bool "Video capture adapters" >> depends on VIDEO_V4L2 >> - default y >> ---help--- >> Say Y here to enable selecting the video adapters for >> webcams, analog TV, and hybrid analog/digital TV. >> @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO >> >> config VIDEO_IR_I2C >> tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO >> - depends on I2C && RC_CORE >> - default y >> + depends on I2C >> + select RC_CORE >> ---help--- >> Most boards have an IR chip directly connected via GPIO. However, >> some video boards have the IR connected via I2C bus. >> @@ -556,7 +555,6 @@ config VIDEO_VIU >> tristate "Freescale VIU Video Driver" >> depends on VIDEO_V4L2 && PPC_MPC512x >> select VIDEOBUF_DMA_CONTIG >> - default y >> ---help--- >> Support for Freescale VIU video driver. This device captures >> video data, or overlays video on DIU frame buffer. >> @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" >> menuconfig V4L_USB_DRIVERS >> bool "V4L USB devices" >> depends on USB >> - default y >> >> if V4L_USB_DRIVERS && USB >> >> -- >> 1.7.2.5 >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-media" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > None of the media drivers are compulsory, let users select which drivers > they want to build, instead of having to unselect them one by one. I disagree with this: while this is fine for SoCs, for a generic kernel I think it is better to build it all. Even expert users can have a hard time figuring out what chip is in a particular device. Regards, Hans > Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> > --- > drivers/media/common/tuners/Kconfig | 23 +---------------------- > drivers/media/radio/Kconfig | 1 - > drivers/media/rc/Kconfig | 16 +--------------- > drivers/media/rc/keymaps/Kconfig | 1 - > drivers/media/video/Kconfig | 7 ++----- > 5 files changed, 4 insertions(+), 44 deletions(-) > > diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig > index 996302a..1e53057 100644 > --- a/drivers/media/common/tuners/Kconfig > +++ b/drivers/media/common/tuners/Kconfig > @@ -33,7 +33,7 @@ config MEDIA_TUNER > select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE > > config MEDIA_TUNER_CUSTOMISE > - bool "Customize analog and hybrid tuner modules to build" > + bool "Select analog and hybrid tuner modules to build" > depends on MEDIA_TUNER > default y if EXPERT > help > @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE > tristate "Simple tuner support" > depends on VIDEO_MEDIA && I2C > select MEDIA_TUNER_TDA9887 > - default m if MEDIA_TUNER_CUSTOMISE > help > Say Y here to include support for various simple tuners. > > @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 > depends on VIDEO_MEDIA && I2C > select MEDIA_TUNER_TDA827X > select MEDIA_TUNER_TDA18271 > - default m if MEDIA_TUNER_CUSTOMISE > 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE > help > Say Y here to include support for Philips TDA9885/6/7 > analog IF demodulator. > @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 > tristate "TEA 5761 radio tuner (EXPERIMENTAL)" > depends on VIDEO_MEDIA && I2C > depends on EXPERIMENTAL > - default m if MEDIA_TUNER_CUSTOMISE > 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_CUSTOMISE > 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_CUSTOMISE > 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 > - default m if MEDIA_TUNER_CUSTOMISE > 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 > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner XC5000 from Xceive. > This device is only used inside a SiP called together with a > @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 > config MEDIA_TUNER_XC4000 > tristate "Xceive XC4000 silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner XC4000 from Xceive. > This device is only used inside a SiP called together with a > @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 > config MEDIA_TUNER_MXL5005S > tristate "MaxLinear MSL5005S silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner MXL5005S from MaxLinear. > > config MEDIA_TUNER_MXL5007T > tristate "MaxLinear MxL5007T silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner MxL5007T from MaxLinear. > > config MEDIA_TUNER_MC44S803 > tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > Say Y here to support the Freescale MC44S803 based tuners > > config MEDIA_TUNER_MAX2165 > tristate "Maxim MAX2165 silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > A driver for the silicon tuner MAX2165 from Maxim. > > config MEDIA_TUNER_TDA18218 > tristate "NXP TDA18218 silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > NXP TDA18218 silicon tuner driver. > > config MEDIA_TUNER_TDA18212 > tristate "NXP TDA18212 silicon tuner" > depends on VIDEO_MEDIA && I2C > - default m if MEDIA_TUNER_CUSTOMISE > help > NXP TDA18212 silicon tuner driver. > > diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig > index 52798a1..0195335 100644 > --- a/drivers/media/radio/Kconfig > +++ b/drivers/media/radio/Kconfig > @@ -5,7 +5,6 @@ > menuconfig RADIO_ADAPTERS > bool "Radio Adapters" > depends on VIDEO_V4L2 > - default y > ---help--- > Say Y here to enable selecting AM/FM radio adapters. > > diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig > index 899f783..2a4f829 100644 > --- a/drivers/media/rc/Kconfig > +++ b/drivers/media/rc/Kconfig > @@ -1,7 +1,6 @@ > menuconfig RC_CORE > tristate "Remote Controller adapters" > depends on INPUT > - default INPUT > ---help--- > Enable support for Remote Controllers on Linux. This is > needed in order to support several video capture adapters. > @@ -11,12 +10,9 @@ menuconfig RC_CORE > if you don't need IR, as otherwise, you may not be able to > compile the driver for your adapter. > > -if RC_CORE > - > config LIRC > tristate > - default y > - > + depends on RC_CORE > ---help--- > Enable this option to build the Linux Infrared Remote > Control (LIRC) core device interface driver. The LIRC > @@ -30,7 +26,6 @@ config IR_NEC_DECODER > tristate "Enable IR raw decoder for the NEC protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have IR with NEC protocol, and > @@ -40,7 +35,6 @@ config IR_RC5_DECODER > tristate "Enable IR raw decoder for the RC-5 protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have IR with RC-5 protocol, and > @@ -50,7 +44,6 @@ config IR_RC6_DECODER > tristate "Enable IR raw decoder for the RC6 protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have an infrared remote control which > @@ -60,7 +53,6 @@ config IR_JVC_DECODER > tristate "Enable IR raw decoder for the JVC protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have an infrared remote control which > @@ -69,7 +61,6 @@ config IR_JVC_DECODER > config IR_SONY_DECODER > tristate "Enable IR raw decoder for the Sony protocol" > depends on RC_CORE > - default y > > ---help--- > Enable this option if you have an infrared remote control which > @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER > tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have IR with RC-5 (streamzap) protocol, > @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER > tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" > depends on RC_CORE > select BITREVERSE > - default y > > ---help--- > Enable this option if you have a Microsoft Remote Keyboard for > @@ -102,7 +91,6 @@ config IR_LIRC_CODEC > tristate "Enable IR to LIRC bridge" > depends on RC_CORE > depends on LIRC > - default y > > ---help--- > Enable this option to pass raw IR to and from userspace via > @@ -236,5 +224,3 @@ config RC_LOOPBACK > > To compile this driver as a module, choose M here: the module will > be called rc_loopback. > - > -endif #RC_CORE > diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig > index 8e615fd..dbaacf1 100644 > --- a/drivers/media/rc/keymaps/Kconfig > +++ b/drivers/media/rc/keymaps/Kconfig > @@ -1,7 +1,6 @@ > config RC_MAP > tristate "Compile Remote Controller keymap modules" > depends on RC_CORE > - default y > > ---help--- > This option enables the compilation of lots of Remote > diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig > index f574dc0..d26443d 100644 > --- a/drivers/media/video/Kconfig > +++ b/drivers/media/video/Kconfig > @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG > menuconfig VIDEO_CAPTURE_DRIVERS > bool "Video capture adapters" > depends on VIDEO_V4L2 > - default y > ---help--- > Say Y here to enable selecting the video adapters for > webcams, analog TV, and hybrid analog/digital TV. > @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO > > config VIDEO_IR_I2C > tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO > - depends on I2C && RC_CORE > - default y > + depends on I2C > + select RC_CORE > ---help--- > Most boards have an IR chip directly connected via GPIO. However, > some video boards have the IR connected via I2C bus. > @@ -556,7 +555,6 @@ config VIDEO_VIU > tristate "Freescale VIU Video Driver" > depends on VIDEO_V4L2 && PPC_MPC512x > select VIDEOBUF_DMA_CONTIG > - default y > ---help--- > Support for Freescale VIU video driver. This device captures > video data, or overlays video on DIU frame buffer. > @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" > menuconfig V4L_USB_DRIVERS > bool "V4L USB devices" > depends on USB > - default y > > if V4L_USB_DRIVERS && USB > > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, 30 Aug 2011, Hans Verkuil wrote: > On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > > None of the media drivers are compulsory, let users select which drivers > > they want to build, instead of having to unselect them one by one. > > I disagree with this: while this is fine for SoCs, for a generic kernel I > think it is better to build it all. Even expert users can have a hard time > figuring out what chip is in a particular device. Then could someone, please, explain to me, why I don't find this "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C - you name them. Is there something special about media, that I'm missing, or are all others just user-unfriendly? Why are distro-kernels, allmodconfig, allyesconfig not enough for media and we think it's necessary to build everything "just in case?" Thanks Guennadi > > Regards, > > Hans > > > Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> > > --- > > drivers/media/common/tuners/Kconfig | 23 +---------------------- > > drivers/media/radio/Kconfig | 1 - > > drivers/media/rc/Kconfig | 16 +--------------- > > drivers/media/rc/keymaps/Kconfig | 1 - > > drivers/media/video/Kconfig | 7 ++----- > > 5 files changed, 4 insertions(+), 44 deletions(-) > > > > diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig > > index 996302a..1e53057 100644 > > --- a/drivers/media/common/tuners/Kconfig > > +++ b/drivers/media/common/tuners/Kconfig > > @@ -33,7 +33,7 @@ config MEDIA_TUNER > > select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE > > > > config MEDIA_TUNER_CUSTOMISE > > - bool "Customize analog and hybrid tuner modules to build" > > + bool "Select analog and hybrid tuner modules to build" > > depends on MEDIA_TUNER > > default y if EXPERT > > help > > @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE > > tristate "Simple tuner support" > > depends on VIDEO_MEDIA && I2C > > select MEDIA_TUNER_TDA9887 > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > Say Y here to include support for various simple tuners. > > > > @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 > > depends on VIDEO_MEDIA && I2C > > select MEDIA_TUNER_TDA827X > > select MEDIA_TUNER_TDA18271 > > - default m if MEDIA_TUNER_CUSTOMISE > > 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE > > help > > Say Y here to include support for Philips TDA9885/6/7 > > analog IF demodulator. > > @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 > > tristate "TEA 5761 radio tuner (EXPERIMENTAL)" > > depends on VIDEO_MEDIA && I2C > > depends on EXPERIMENTAL > > - default m if MEDIA_TUNER_CUSTOMISE > > 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_CUSTOMISE > > 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_CUSTOMISE > > 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 > > - default m if MEDIA_TUNER_CUSTOMISE > > 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 > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > A driver for the silicon tuner XC5000 from Xceive. > > This device is only used inside a SiP called together with a > > @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 > > config MEDIA_TUNER_XC4000 > > tristate "Xceive XC4000 silicon tuner" > > depends on VIDEO_MEDIA && I2C > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > A driver for the silicon tuner XC4000 from Xceive. > > This device is only used inside a SiP called together with a > > @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 > > config MEDIA_TUNER_MXL5005S > > tristate "MaxLinear MSL5005S silicon tuner" > > depends on VIDEO_MEDIA && I2C > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > A driver for the silicon tuner MXL5005S from MaxLinear. > > > > config MEDIA_TUNER_MXL5007T > > tristate "MaxLinear MxL5007T silicon tuner" > > depends on VIDEO_MEDIA && I2C > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > A driver for the silicon tuner MxL5007T from MaxLinear. > > > > config MEDIA_TUNER_MC44S803 > > tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" > > depends on VIDEO_MEDIA && I2C > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > Say Y here to support the Freescale MC44S803 based tuners > > > > config MEDIA_TUNER_MAX2165 > > tristate "Maxim MAX2165 silicon tuner" > > depends on VIDEO_MEDIA && I2C > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > A driver for the silicon tuner MAX2165 from Maxim. > > > > config MEDIA_TUNER_TDA18218 > > tristate "NXP TDA18218 silicon tuner" > > depends on VIDEO_MEDIA && I2C > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > NXP TDA18218 silicon tuner driver. > > > > config MEDIA_TUNER_TDA18212 > > tristate "NXP TDA18212 silicon tuner" > > depends on VIDEO_MEDIA && I2C > > - default m if MEDIA_TUNER_CUSTOMISE > > help > > NXP TDA18212 silicon tuner driver. > > > > diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig > > index 52798a1..0195335 100644 > > --- a/drivers/media/radio/Kconfig > > +++ b/drivers/media/radio/Kconfig > > @@ -5,7 +5,6 @@ > > menuconfig RADIO_ADAPTERS > > bool "Radio Adapters" > > depends on VIDEO_V4L2 > > - default y > > ---help--- > > Say Y here to enable selecting AM/FM radio adapters. > > > > diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig > > index 899f783..2a4f829 100644 > > --- a/drivers/media/rc/Kconfig > > +++ b/drivers/media/rc/Kconfig > > @@ -1,7 +1,6 @@ > > menuconfig RC_CORE > > tristate "Remote Controller adapters" > > depends on INPUT > > - default INPUT > > ---help--- > > Enable support for Remote Controllers on Linux. This is > > needed in order to support several video capture adapters. > > @@ -11,12 +10,9 @@ menuconfig RC_CORE > > if you don't need IR, as otherwise, you may not be able to > > compile the driver for your adapter. > > > > -if RC_CORE > > - > > config LIRC > > tristate > > - default y > > - > > + depends on RC_CORE > > ---help--- > > Enable this option to build the Linux Infrared Remote > > Control (LIRC) core device interface driver. The LIRC > > @@ -30,7 +26,6 @@ config IR_NEC_DECODER > > tristate "Enable IR raw decoder for the NEC protocol" > > depends on RC_CORE > > select BITREVERSE > > - default y > > > > ---help--- > > Enable this option if you have IR with NEC protocol, and > > @@ -40,7 +35,6 @@ config IR_RC5_DECODER > > tristate "Enable IR raw decoder for the RC-5 protocol" > > depends on RC_CORE > > select BITREVERSE > > - default y > > > > ---help--- > > Enable this option if you have IR with RC-5 protocol, and > > @@ -50,7 +44,6 @@ config IR_RC6_DECODER > > tristate "Enable IR raw decoder for the RC6 protocol" > > depends on RC_CORE > > select BITREVERSE > > - default y > > > > ---help--- > > Enable this option if you have an infrared remote control which > > @@ -60,7 +53,6 @@ config IR_JVC_DECODER > > tristate "Enable IR raw decoder for the JVC protocol" > > depends on RC_CORE > > select BITREVERSE > > - default y > > > > ---help--- > > Enable this option if you have an infrared remote control which > > @@ -69,7 +61,6 @@ config IR_JVC_DECODER > > config IR_SONY_DECODER > > tristate "Enable IR raw decoder for the Sony protocol" > > depends on RC_CORE > > - default y > > > > ---help--- > > Enable this option if you have an infrared remote control which > > @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER > > tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" > > depends on RC_CORE > > select BITREVERSE > > - default y > > > > ---help--- > > Enable this option if you have IR with RC-5 (streamzap) protocol, > > @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER > > tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" > > depends on RC_CORE > > select BITREVERSE > > - default y > > > > ---help--- > > Enable this option if you have a Microsoft Remote Keyboard for > > @@ -102,7 +91,6 @@ config IR_LIRC_CODEC > > tristate "Enable IR to LIRC bridge" > > depends on RC_CORE > > depends on LIRC > > - default y > > > > ---help--- > > Enable this option to pass raw IR to and from userspace via > > @@ -236,5 +224,3 @@ config RC_LOOPBACK > > > > To compile this driver as a module, choose M here: the module will > > be called rc_loopback. > > - > > -endif #RC_CORE > > diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig > > index 8e615fd..dbaacf1 100644 > > --- a/drivers/media/rc/keymaps/Kconfig > > +++ b/drivers/media/rc/keymaps/Kconfig > > @@ -1,7 +1,6 @@ > > config RC_MAP > > tristate "Compile Remote Controller keymap modules" > > depends on RC_CORE > > - default y > > > > ---help--- > > This option enables the compilation of lots of Remote > > diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig > > index f574dc0..d26443d 100644 > > --- a/drivers/media/video/Kconfig > > +++ b/drivers/media/video/Kconfig > > @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG > > menuconfig VIDEO_CAPTURE_DRIVERS > > bool "Video capture adapters" > > depends on VIDEO_V4L2 > > - default y > > ---help--- > > Say Y here to enable selecting the video adapters for > > webcams, analog TV, and hybrid analog/digital TV. > > @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO > > > > config VIDEO_IR_I2C > > tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO > > - depends on I2C && RC_CORE > > - default y > > + depends on I2C > > + select RC_CORE > > ---help--- > > Most boards have an IR chip directly connected via GPIO. However, > > some video boards have the IR connected via I2C bus. > > @@ -556,7 +555,6 @@ config VIDEO_VIU > > tristate "Freescale VIU Video Driver" > > depends on VIDEO_V4L2 && PPC_MPC512x > > select VIDEOBUF_DMA_CONTIG > > - default y > > ---help--- > > Support for Freescale VIU video driver. This device captures > > video data, or overlays video on DIU frame buffer. > > @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" > > menuconfig V4L_USB_DRIVERS > > bool "V4L USB devices" > > depends on USB > > - default y > > > > if V4L_USB_DRIVERS && USB > > > > > --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer http://www.open-technology.de/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tuesday, August 30, 2011 22:12:09 Guennadi Liakhovetski wrote: > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > > > None of the media drivers are compulsory, let users select which drivers > > > they want to build, instead of having to unselect them one by one. > > > > I disagree with this: while this is fine for SoCs, for a generic kernel I > > think it is better to build it all. Even expert users can have a hard time > > figuring out what chip is in a particular device. > > Then could someone, please, explain to me, why I don't find this > "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C - > you name them. Is there something special about media, that I'm missing, > or are all others just user-unfriendly? Why are distro-kernels, > allmodconfig, allyesconfig not enough for media and we think it's > necessary to build everything "just in case?" That's actually a good question. I certainly think that the more obscure drivers can be disabled by default. But I also think that you want to keep a certain subset of commonly used drivers enabled. I'm thinking bttv, uvc, perhaps gspca. As far as I can see, alsa enables for example HD Audio, which almost all modern hw supports. We should do something similar for v4l. And we should really reorder some of the entries in the menu: one of the first drivers you see are parallel port webcams and other very obscure devices. Regards, Hans > > Thanks > Guennadi > > > > > Regards, > > > > Hans > > > > > Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> > > > --- > > > drivers/media/common/tuners/Kconfig | 23 +---------------------- > > > drivers/media/radio/Kconfig | 1 - > > > drivers/media/rc/Kconfig | 16 +--------------- > > > drivers/media/rc/keymaps/Kconfig | 1 - > > > drivers/media/video/Kconfig | 7 ++----- > > > 5 files changed, 4 insertions(+), 44 deletions(-) > > > > > > diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig > > > index 996302a..1e53057 100644 > > > --- a/drivers/media/common/tuners/Kconfig > > > +++ b/drivers/media/common/tuners/Kconfig > > > @@ -33,7 +33,7 @@ config MEDIA_TUNER > > > select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE > > > > > > config MEDIA_TUNER_CUSTOMISE > > > - bool "Customize analog and hybrid tuner modules to build" > > > + bool "Select analog and hybrid tuner modules to build" > > > depends on MEDIA_TUNER > > > default y if EXPERT > > > help > > > @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE > > > tristate "Simple tuner support" > > > depends on VIDEO_MEDIA && I2C > > > select MEDIA_TUNER_TDA9887 > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > Say Y here to include support for various simple tuners. > > > > > > @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 > > > depends on VIDEO_MEDIA && I2C > > > select MEDIA_TUNER_TDA827X > > > select MEDIA_TUNER_TDA18271 > > > - default m if MEDIA_TUNER_CUSTOMISE > > > 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE > > > help > > > Say Y here to include support for Philips TDA9885/6/7 > > > analog IF demodulator. > > > @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 > > > tristate "TEA 5761 radio tuner (EXPERIMENTAL)" > > > depends on VIDEO_MEDIA && I2C > > > depends on EXPERIMENTAL > > > - default m if MEDIA_TUNER_CUSTOMISE > > > 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_CUSTOMISE > > > 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_CUSTOMISE > > > 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 > > > - default m if MEDIA_TUNER_CUSTOMISE > > > 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 > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > A driver for the silicon tuner XC5000 from Xceive. > > > This device is only used inside a SiP called together with a > > > @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 > > > config MEDIA_TUNER_XC4000 > > > tristate "Xceive XC4000 silicon tuner" > > > depends on VIDEO_MEDIA && I2C > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > A driver for the silicon tuner XC4000 from Xceive. > > > This device is only used inside a SiP called together with a > > > @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 > > > config MEDIA_TUNER_MXL5005S > > > tristate "MaxLinear MSL5005S silicon tuner" > > > depends on VIDEO_MEDIA && I2C > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > A driver for the silicon tuner MXL5005S from MaxLinear. > > > > > > config MEDIA_TUNER_MXL5007T > > > tristate "MaxLinear MxL5007T silicon tuner" > > > depends on VIDEO_MEDIA && I2C > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > A driver for the silicon tuner MxL5007T from MaxLinear. > > > > > > config MEDIA_TUNER_MC44S803 > > > tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" > > > depends on VIDEO_MEDIA && I2C > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > Say Y here to support the Freescale MC44S803 based tuners > > > > > > config MEDIA_TUNER_MAX2165 > > > tristate "Maxim MAX2165 silicon tuner" > > > depends on VIDEO_MEDIA && I2C > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > A driver for the silicon tuner MAX2165 from Maxim. > > > > > > config MEDIA_TUNER_TDA18218 > > > tristate "NXP TDA18218 silicon tuner" > > > depends on VIDEO_MEDIA && I2C > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > NXP TDA18218 silicon tuner driver. > > > > > > config MEDIA_TUNER_TDA18212 > > > tristate "NXP TDA18212 silicon tuner" > > > depends on VIDEO_MEDIA && I2C > > > - default m if MEDIA_TUNER_CUSTOMISE > > > help > > > NXP TDA18212 silicon tuner driver. > > > > > > diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig > > > index 52798a1..0195335 100644 > > > --- a/drivers/media/radio/Kconfig > > > +++ b/drivers/media/radio/Kconfig > > > @@ -5,7 +5,6 @@ > > > menuconfig RADIO_ADAPTERS > > > bool "Radio Adapters" > > > depends on VIDEO_V4L2 > > > - default y > > > ---help--- > > > Say Y here to enable selecting AM/FM radio adapters. > > > > > > diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig > > > index 899f783..2a4f829 100644 > > > --- a/drivers/media/rc/Kconfig > > > +++ b/drivers/media/rc/Kconfig > > > @@ -1,7 +1,6 @@ > > > menuconfig RC_CORE > > > tristate "Remote Controller adapters" > > > depends on INPUT > > > - default INPUT > > > ---help--- > > > Enable support for Remote Controllers on Linux. This is > > > needed in order to support several video capture adapters. > > > @@ -11,12 +10,9 @@ menuconfig RC_CORE > > > if you don't need IR, as otherwise, you may not be able to > > > compile the driver for your adapter. > > > > > > -if RC_CORE > > > - > > > config LIRC > > > tristate > > > - default y > > > - > > > + depends on RC_CORE > > > ---help--- > > > Enable this option to build the Linux Infrared Remote > > > Control (LIRC) core device interface driver. The LIRC > > > @@ -30,7 +26,6 @@ config IR_NEC_DECODER > > > tristate "Enable IR raw decoder for the NEC protocol" > > > depends on RC_CORE > > > select BITREVERSE > > > - default y > > > > > > ---help--- > > > Enable this option if you have IR with NEC protocol, and > > > @@ -40,7 +35,6 @@ config IR_RC5_DECODER > > > tristate "Enable IR raw decoder for the RC-5 protocol" > > > depends on RC_CORE > > > select BITREVERSE > > > - default y > > > > > > ---help--- > > > Enable this option if you have IR with RC-5 protocol, and > > > @@ -50,7 +44,6 @@ config IR_RC6_DECODER > > > tristate "Enable IR raw decoder for the RC6 protocol" > > > depends on RC_CORE > > > select BITREVERSE > > > - default y > > > > > > ---help--- > > > Enable this option if you have an infrared remote control which > > > @@ -60,7 +53,6 @@ config IR_JVC_DECODER > > > tristate "Enable IR raw decoder for the JVC protocol" > > > depends on RC_CORE > > > select BITREVERSE > > > - default y > > > > > > ---help--- > > > Enable this option if you have an infrared remote control which > > > @@ -69,7 +61,6 @@ config IR_JVC_DECODER > > > config IR_SONY_DECODER > > > tristate "Enable IR raw decoder for the Sony protocol" > > > depends on RC_CORE > > > - default y > > > > > > ---help--- > > > Enable this option if you have an infrared remote control which > > > @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER > > > tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" > > > depends on RC_CORE > > > select BITREVERSE > > > - default y > > > > > > ---help--- > > > Enable this option if you have IR with RC-5 (streamzap) protocol, > > > @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER > > > tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" > > > depends on RC_CORE > > > select BITREVERSE > > > - default y > > > > > > ---help--- > > > Enable this option if you have a Microsoft Remote Keyboard for > > > @@ -102,7 +91,6 @@ config IR_LIRC_CODEC > > > tristate "Enable IR to LIRC bridge" > > > depends on RC_CORE > > > depends on LIRC > > > - default y > > > > > > ---help--- > > > Enable this option to pass raw IR to and from userspace via > > > @@ -236,5 +224,3 @@ config RC_LOOPBACK > > > > > > To compile this driver as a module, choose M here: the module will > > > be called rc_loopback. > > > - > > > -endif #RC_CORE > > > diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig > > > index 8e615fd..dbaacf1 100644 > > > --- a/drivers/media/rc/keymaps/Kconfig > > > +++ b/drivers/media/rc/keymaps/Kconfig > > > @@ -1,7 +1,6 @@ > > > config RC_MAP > > > tristate "Compile Remote Controller keymap modules" > > > depends on RC_CORE > > > - default y > > > > > > ---help--- > > > This option enables the compilation of lots of Remote > > > diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig > > > index f574dc0..d26443d 100644 > > > --- a/drivers/media/video/Kconfig > > > +++ b/drivers/media/video/Kconfig > > > @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG > > > menuconfig VIDEO_CAPTURE_DRIVERS > > > bool "Video capture adapters" > > > depends on VIDEO_V4L2 > > > - default y > > > ---help--- > > > Say Y here to enable selecting the video adapters for > > > webcams, analog TV, and hybrid analog/digital TV. > > > @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO > > > > > > config VIDEO_IR_I2C > > > tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO > > > - depends on I2C && RC_CORE > > > - default y > > > + depends on I2C > > > + select RC_CORE > > > ---help--- > > > Most boards have an IR chip directly connected via GPIO. However, > > > some video boards have the IR connected via I2C bus. > > > @@ -556,7 +555,6 @@ config VIDEO_VIU > > > tristate "Freescale VIU Video Driver" > > > depends on VIDEO_V4L2 && PPC_MPC512x > > > select VIDEOBUF_DMA_CONTIG > > > - default y > > > ---help--- > > > Support for Freescale VIU video driver. This device captures > > > video data, or overlays video on DIU frame buffer. > > > @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" > > > menuconfig V4L_USB_DRIVERS > > > bool "V4L USB devices" > > > depends on USB > > > - default y > > > > > > if V4L_USB_DRIVERS && USB > > > > > > > > > > --- > Guennadi Liakhovetski, Ph.D. > Freelance Open-Source Software Developer > http://www.open-technology.de/ > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Aug 30, 2011 at 4:12 PM, Guennadi Liakhovetski <g.liakhovetski@gmx.de> wrote: > On Tue, 30 Aug 2011, Hans Verkuil wrote: > >> On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: >> > None of the media drivers are compulsory, let users select which drivers >> > they want to build, instead of having to unselect them one by one. >> >> I disagree with this: while this is fine for SoCs, for a generic kernel I >> think it is better to build it all. Even expert users can have a hard time >> figuring out what chip is in a particular device. > > Then could someone, please, explain to me, why I don't find this > "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C - > you name them. Is there something special about media, that I'm missing, > or are all others just user-unfriendly? Why are distro-kernels, > allmodconfig, allyesconfig not enough for media and we think it's > necessary to build everything "just in case?" This isn't a matter of "building all drivers by default" -- it is a matter of building component dependency drivers that are needed by the bridge drivers, and allowing users to not build drivers that they don't need. The customization options are there to allow you to disable the "helper chips" / "tuners" etc from all being built if that is your choice. If you disable the customization options, then Kconfig automatically selects the dependencies of the bridge drivers that you've selected and does NOT build those that are irrelevant to you. At first, users were forced to build everything without being able to disable these modules. We added this mechanism to allow such modules to be disabled from a build, but we enable them by default because anything else would become a user-support nightmare, as I stated earlier. If you refer to the mailing list archives from about four or five years ago, you'll may find that this was discussed at length on the video4linux and linux-dvb mailing lists. In the end I believe this is the solution that satisfied everybody the best. -Mike Krufky > > Thanks > Guennadi > >> >> Regards, >> >> Hans >> >> > Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> >> > --- >> > drivers/media/common/tuners/Kconfig | 23 +---------------------- >> > drivers/media/radio/Kconfig | 1 - >> > drivers/media/rc/Kconfig | 16 +--------------- >> > drivers/media/rc/keymaps/Kconfig | 1 - >> > drivers/media/video/Kconfig | 7 ++----- >> > 5 files changed, 4 insertions(+), 44 deletions(-) >> > >> > diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig >> > index 996302a..1e53057 100644 >> > --- a/drivers/media/common/tuners/Kconfig >> > +++ b/drivers/media/common/tuners/Kconfig >> > @@ -33,7 +33,7 @@ config MEDIA_TUNER >> > select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE >> > >> > config MEDIA_TUNER_CUSTOMISE >> > - bool "Customize analog and hybrid tuner modules to build" >> > + bool "Select analog and hybrid tuner modules to build" >> > depends on MEDIA_TUNER >> > default y if EXPERT >> > help >> > @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE >> > tristate "Simple tuner support" >> > depends on VIDEO_MEDIA && I2C >> > select MEDIA_TUNER_TDA9887 >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > Say Y here to include support for various simple tuners. >> > >> > @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 >> > depends on VIDEO_MEDIA && I2C >> > select MEDIA_TUNER_TDA827X >> > select MEDIA_TUNER_TDA18271 >> > - default m if MEDIA_TUNER_CUSTOMISE >> > 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE >> > help >> > Say Y here to include support for Philips TDA9885/6/7 >> > analog IF demodulator. >> > @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 >> > tristate "TEA 5761 radio tuner (EXPERIMENTAL)" >> > depends on VIDEO_MEDIA && I2C >> > depends on EXPERIMENTAL >> > - default m if MEDIA_TUNER_CUSTOMISE >> > 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_CUSTOMISE >> > 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_CUSTOMISE >> > 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 >> > - default m if MEDIA_TUNER_CUSTOMISE >> > 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 >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > A driver for the silicon tuner XC5000 from Xceive. >> > This device is only used inside a SiP called together with a >> > @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 >> > config MEDIA_TUNER_XC4000 >> > tristate "Xceive XC4000 silicon tuner" >> > depends on VIDEO_MEDIA && I2C >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > A driver for the silicon tuner XC4000 from Xceive. >> > This device is only used inside a SiP called together with a >> > @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 >> > config MEDIA_TUNER_MXL5005S >> > tristate "MaxLinear MSL5005S silicon tuner" >> > depends on VIDEO_MEDIA && I2C >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > A driver for the silicon tuner MXL5005S from MaxLinear. >> > >> > config MEDIA_TUNER_MXL5007T >> > tristate "MaxLinear MxL5007T silicon tuner" >> > depends on VIDEO_MEDIA && I2C >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > A driver for the silicon tuner MxL5007T from MaxLinear. >> > >> > config MEDIA_TUNER_MC44S803 >> > tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" >> > depends on VIDEO_MEDIA && I2C >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > Say Y here to support the Freescale MC44S803 based tuners >> > >> > config MEDIA_TUNER_MAX2165 >> > tristate "Maxim MAX2165 silicon tuner" >> > depends on VIDEO_MEDIA && I2C >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > A driver for the silicon tuner MAX2165 from Maxim. >> > >> > config MEDIA_TUNER_TDA18218 >> > tristate "NXP TDA18218 silicon tuner" >> > depends on VIDEO_MEDIA && I2C >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > NXP TDA18218 silicon tuner driver. >> > >> > config MEDIA_TUNER_TDA18212 >> > tristate "NXP TDA18212 silicon tuner" >> > depends on VIDEO_MEDIA && I2C >> > - default m if MEDIA_TUNER_CUSTOMISE >> > help >> > NXP TDA18212 silicon tuner driver. >> > >> > diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig >> > index 52798a1..0195335 100644 >> > --- a/drivers/media/radio/Kconfig >> > +++ b/drivers/media/radio/Kconfig >> > @@ -5,7 +5,6 @@ >> > menuconfig RADIO_ADAPTERS >> > bool "Radio Adapters" >> > depends on VIDEO_V4L2 >> > - default y >> > ---help--- >> > Say Y here to enable selecting AM/FM radio adapters. >> > >> > diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig >> > index 899f783..2a4f829 100644 >> > --- a/drivers/media/rc/Kconfig >> > +++ b/drivers/media/rc/Kconfig >> > @@ -1,7 +1,6 @@ >> > menuconfig RC_CORE >> > tristate "Remote Controller adapters" >> > depends on INPUT >> > - default INPUT >> > ---help--- >> > Enable support for Remote Controllers on Linux. This is >> > needed in order to support several video capture adapters. >> > @@ -11,12 +10,9 @@ menuconfig RC_CORE >> > if you don't need IR, as otherwise, you may not be able to >> > compile the driver for your adapter. >> > >> > -if RC_CORE >> > - >> > config LIRC >> > tristate >> > - default y >> > - >> > + depends on RC_CORE >> > ---help--- >> > Enable this option to build the Linux Infrared Remote >> > Control (LIRC) core device interface driver. The LIRC >> > @@ -30,7 +26,6 @@ config IR_NEC_DECODER >> > tristate "Enable IR raw decoder for the NEC protocol" >> > depends on RC_CORE >> > select BITREVERSE >> > - default y >> > >> > ---help--- >> > Enable this option if you have IR with NEC protocol, and >> > @@ -40,7 +35,6 @@ config IR_RC5_DECODER >> > tristate "Enable IR raw decoder for the RC-5 protocol" >> > depends on RC_CORE >> > select BITREVERSE >> > - default y >> > >> > ---help--- >> > Enable this option if you have IR with RC-5 protocol, and >> > @@ -50,7 +44,6 @@ config IR_RC6_DECODER >> > tristate "Enable IR raw decoder for the RC6 protocol" >> > depends on RC_CORE >> > select BITREVERSE >> > - default y >> > >> > ---help--- >> > Enable this option if you have an infrared remote control which >> > @@ -60,7 +53,6 @@ config IR_JVC_DECODER >> > tristate "Enable IR raw decoder for the JVC protocol" >> > depends on RC_CORE >> > select BITREVERSE >> > - default y >> > >> > ---help--- >> > Enable this option if you have an infrared remote control which >> > @@ -69,7 +61,6 @@ config IR_JVC_DECODER >> > config IR_SONY_DECODER >> > tristate "Enable IR raw decoder for the Sony protocol" >> > depends on RC_CORE >> > - default y >> > >> > ---help--- >> > Enable this option if you have an infrared remote control which >> > @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER >> > tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" >> > depends on RC_CORE >> > select BITREVERSE >> > - default y >> > >> > ---help--- >> > Enable this option if you have IR with RC-5 (streamzap) protocol, >> > @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER >> > tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" >> > depends on RC_CORE >> > select BITREVERSE >> > - default y >> > >> > ---help--- >> > Enable this option if you have a Microsoft Remote Keyboard for >> > @@ -102,7 +91,6 @@ config IR_LIRC_CODEC >> > tristate "Enable IR to LIRC bridge" >> > depends on RC_CORE >> > depends on LIRC >> > - default y >> > >> > ---help--- >> > Enable this option to pass raw IR to and from userspace via >> > @@ -236,5 +224,3 @@ config RC_LOOPBACK >> > >> > To compile this driver as a module, choose M here: the module will >> > be called rc_loopback. >> > - >> > -endif #RC_CORE >> > diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig >> > index 8e615fd..dbaacf1 100644 >> > --- a/drivers/media/rc/keymaps/Kconfig >> > +++ b/drivers/media/rc/keymaps/Kconfig >> > @@ -1,7 +1,6 @@ >> > config RC_MAP >> > tristate "Compile Remote Controller keymap modules" >> > depends on RC_CORE >> > - default y >> > >> > ---help--- >> > This option enables the compilation of lots of Remote >> > diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig >> > index f574dc0..d26443d 100644 >> > --- a/drivers/media/video/Kconfig >> > +++ b/drivers/media/video/Kconfig >> > @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG >> > menuconfig VIDEO_CAPTURE_DRIVERS >> > bool "Video capture adapters" >> > depends on VIDEO_V4L2 >> > - default y >> > ---help--- >> > Say Y here to enable selecting the video adapters for >> > webcams, analog TV, and hybrid analog/digital TV. >> > @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO >> > >> > config VIDEO_IR_I2C >> > tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO >> > - depends on I2C && RC_CORE >> > - default y >> > + depends on I2C >> > + select RC_CORE >> > ---help--- >> > Most boards have an IR chip directly connected via GPIO. However, >> > some video boards have the IR connected via I2C bus. >> > @@ -556,7 +555,6 @@ config VIDEO_VIU >> > tristate "Freescale VIU Video Driver" >> > depends on VIDEO_V4L2 && PPC_MPC512x >> > select VIDEOBUF_DMA_CONTIG >> > - default y >> > ---help--- >> > Support for Freescale VIU video driver. This device captures >> > video data, or overlays video on DIU frame buffer. >> > @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" >> > menuconfig V4L_USB_DRIVERS >> > bool "V4L USB devices" >> > depends on USB >> > - default y >> > >> > if V4L_USB_DRIVERS && USB >> > >> > >> > > --- > Guennadi Liakhovetski, Ph.D. > Freelance Open-Source Software Developer > http://www.open-technology.de/ > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, 30 Aug 2011, Hans Verkuil wrote: > On Tuesday, August 30, 2011 22:12:09 Guennadi Liakhovetski wrote: > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > > > On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > > > > None of the media drivers are compulsory, let users select which drivers > > > > they want to build, instead of having to unselect them one by one. > > > > > > I disagree with this: while this is fine for SoCs, for a generic kernel I > > > think it is better to build it all. Even expert users can have a hard time > > > figuring out what chip is in a particular device. > > > > Then could someone, please, explain to me, why I don't find this > > "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C - > > you name them. Is there something special about media, that I'm missing, > > or are all others just user-unfriendly? Why are distro-kernels, > > allmodconfig, allyesconfig not enough for media and we think it's > > necessary to build everything "just in case?" > > That's actually a good question. I certainly think that the more obscure > drivers can be disabled by default. But I also think that you want to keep > a certain subset of commonly used drivers enabled. I'm thinking bttv, uvc, > perhaps gspca. Good, this is a good beginning! It was actually the purpose of my patch - to make us actually consider which drivers we need enabled per default, and which we don't, instead of just enabling all. > As far as I can see, alsa enables for example HD Audio, which almost all > modern hw supports. We should do something similar for v4l. Yes, agree. > And we should really reorder some of the entries in the menu: one of the > first drivers you see are parallel port webcams and other very obscure > devices. Ok. So, how should we proceed? What I certainly would like to disable completely or to 99% are remote controls and tuners. The rest are actually disabled by default, which is great. Or at least I would like to have a single switch "disable all," ideally active by default. One of the possibilities would be to take the patch as is and _then_ begin to think, which drivers we want enabled by default. I just think, that the correct approach is to think, which drivers we need enabled by default - as exceptions, instead of - which drivers we can afford to disable. Thanks Guennadi --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer http://www.open-technology.de/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, 30 Aug 2011, Michael Krufky wrote: > On Tue, Aug 30, 2011 at 4:12 PM, Guennadi Liakhovetski > <g.liakhovetski@gmx.de> wrote: > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > >> On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > >> > None of the media drivers are compulsory, let users select which drivers > >> > they want to build, instead of having to unselect them one by one. > >> > >> I disagree with this: while this is fine for SoCs, for a generic kernel I > >> think it is better to build it all. Even expert users can have a hard time > >> figuring out what chip is in a particular device. > > > > Then could someone, please, explain to me, why I don't find this > > "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C - > > you name them. Is there something special about media, that I'm missing, > > or are all others just user-unfriendly? Why are distro-kernels, > > allmodconfig, allyesconfig not enough for media and we think it's > > necessary to build everything "just in case?" > > > This isn't a matter of "building all drivers by default" -- it is a > matter of building component dependency drivers that are needed by the > bridge drivers, and allowing users to not build drivers that they > don't need. I would understand, if in the beginning all was empty (all drivers disabled), then the user goes to his or her card entry, enables it. And since that card has a 100 of variations, and we don't know exactly which of them the user has, we enable all components, possibly present on this card. This would make sense. Howevre, this is not what we currently have. > The customization options are there to allow you to > disable the "helper chips" / "tuners" etc from all being built if that > is your choice. If you disable the customization options, then > Kconfig automatically selects the dependencies of the bridge drivers > that you've selected and does NOT build those that are irrelevant to > you. Hm, that's not what I see. I just tried the following: made a default x86_64 .config, it had media disabled. Then I enabled media and alreay a bunch of IR remotes has been enabled. Then I enabled V4L, and all tuners got enabled. Switching on "customize" allowed me to kill them selectively. So, I don't see what you described above: how those tuners only get to build, if I enable respective bridges. Or have I misunderstood you? Thanks Guennadi > At first, users were forced to build everything without being > able to disable these modules. We added this mechanism to allow such > modules to be disabled from a build, but we enable them by default > because anything else would become a user-support nightmare, as I > stated earlier. If you refer to the mailing list archives from about > four or five years ago, you'll may find that this was discussed at > length on the video4linux and linux-dvb mailing lists. In the end I > believe this is the solution that satisfied everybody the best. > > -Mike Krufky > > > > Thanks > > Guennadi > > > >> > >> Regards, > >> > >> Hans > >> > >> > Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> > >> > --- > >> > drivers/media/common/tuners/Kconfig | 23 +---------------------- > >> > drivers/media/radio/Kconfig | 1 - > >> > drivers/media/rc/Kconfig | 16 +--------------- > >> > drivers/media/rc/keymaps/Kconfig | 1 - > >> > drivers/media/video/Kconfig | 7 ++----- > >> > 5 files changed, 4 insertions(+), 44 deletions(-) > >> > > >> > diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig > >> > index 996302a..1e53057 100644 > >> > --- a/drivers/media/common/tuners/Kconfig > >> > +++ b/drivers/media/common/tuners/Kconfig > >> > @@ -33,7 +33,7 @@ config MEDIA_TUNER > >> > select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE > >> > > >> > config MEDIA_TUNER_CUSTOMISE > >> > - bool "Customize analog and hybrid tuner modules to build" > >> > + bool "Select analog and hybrid tuner modules to build" > >> > depends on MEDIA_TUNER > >> > default y if EXPERT > >> > help > >> > @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE > >> > tristate "Simple tuner support" > >> > depends on VIDEO_MEDIA && I2C > >> > select MEDIA_TUNER_TDA9887 > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > Say Y here to include support for various simple tuners. > >> > > >> > @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 > >> > depends on VIDEO_MEDIA && I2C > >> > select MEDIA_TUNER_TDA827X > >> > select MEDIA_TUNER_TDA18271 > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE > >> > help > >> > Say Y here to include support for Philips TDA9885/6/7 > >> > analog IF demodulator. > >> > @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 > >> > tristate "TEA 5761 radio tuner (EXPERIMENTAL)" > >> > depends on VIDEO_MEDIA && I2C > >> > depends on EXPERIMENTAL > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > 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_CUSTOMISE > >> > 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_CUSTOMISE > >> > 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > 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 > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > A driver for the silicon tuner XC5000 from Xceive. > >> > This device is only used inside a SiP called together with a > >> > @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 > >> > config MEDIA_TUNER_XC4000 > >> > tristate "Xceive XC4000 silicon tuner" > >> > depends on VIDEO_MEDIA && I2C > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > A driver for the silicon tuner XC4000 from Xceive. > >> > This device is only used inside a SiP called together with a > >> > @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 > >> > config MEDIA_TUNER_MXL5005S > >> > tristate "MaxLinear MSL5005S silicon tuner" > >> > depends on VIDEO_MEDIA && I2C > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > A driver for the silicon tuner MXL5005S from MaxLinear. > >> > > >> > config MEDIA_TUNER_MXL5007T > >> > tristate "MaxLinear MxL5007T silicon tuner" > >> > depends on VIDEO_MEDIA && I2C > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > A driver for the silicon tuner MxL5007T from MaxLinear. > >> > > >> > config MEDIA_TUNER_MC44S803 > >> > tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" > >> > depends on VIDEO_MEDIA && I2C > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > Say Y here to support the Freescale MC44S803 based tuners > >> > > >> > config MEDIA_TUNER_MAX2165 > >> > tristate "Maxim MAX2165 silicon tuner" > >> > depends on VIDEO_MEDIA && I2C > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > A driver for the silicon tuner MAX2165 from Maxim. > >> > > >> > config MEDIA_TUNER_TDA18218 > >> > tristate "NXP TDA18218 silicon tuner" > >> > depends on VIDEO_MEDIA && I2C > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > NXP TDA18218 silicon tuner driver. > >> > > >> > config MEDIA_TUNER_TDA18212 > >> > tristate "NXP TDA18212 silicon tuner" > >> > depends on VIDEO_MEDIA && I2C > >> > - default m if MEDIA_TUNER_CUSTOMISE > >> > help > >> > NXP TDA18212 silicon tuner driver. > >> > > >> > diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig > >> > index 52798a1..0195335 100644 > >> > --- a/drivers/media/radio/Kconfig > >> > +++ b/drivers/media/radio/Kconfig > >> > @@ -5,7 +5,6 @@ > >> > menuconfig RADIO_ADAPTERS > >> > bool "Radio Adapters" > >> > depends on VIDEO_V4L2 > >> > - default y > >> > ---help--- > >> > Say Y here to enable selecting AM/FM radio adapters. > >> > > >> > diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig > >> > index 899f783..2a4f829 100644 > >> > --- a/drivers/media/rc/Kconfig > >> > +++ b/drivers/media/rc/Kconfig > >> > @@ -1,7 +1,6 @@ > >> > menuconfig RC_CORE > >> > tristate "Remote Controller adapters" > >> > depends on INPUT > >> > - default INPUT > >> > ---help--- > >> > Enable support for Remote Controllers on Linux. This is > >> > needed in order to support several video capture adapters. > >> > @@ -11,12 +10,9 @@ menuconfig RC_CORE > >> > if you don't need IR, as otherwise, you may not be able to > >> > compile the driver for your adapter. > >> > > >> > -if RC_CORE > >> > - > >> > config LIRC > >> > tristate > >> > - default y > >> > - > >> > + depends on RC_CORE > >> > ---help--- > >> > Enable this option to build the Linux Infrared Remote > >> > Control (LIRC) core device interface driver. The LIRC > >> > @@ -30,7 +26,6 @@ config IR_NEC_DECODER > >> > tristate "Enable IR raw decoder for the NEC protocol" > >> > depends on RC_CORE > >> > select BITREVERSE > >> > - default y > >> > > >> > ---help--- > >> > Enable this option if you have IR with NEC protocol, and > >> > @@ -40,7 +35,6 @@ config IR_RC5_DECODER > >> > tristate "Enable IR raw decoder for the RC-5 protocol" > >> > depends on RC_CORE > >> > select BITREVERSE > >> > - default y > >> > > >> > ---help--- > >> > Enable this option if you have IR with RC-5 protocol, and > >> > @@ -50,7 +44,6 @@ config IR_RC6_DECODER > >> > tristate "Enable IR raw decoder for the RC6 protocol" > >> > depends on RC_CORE > >> > select BITREVERSE > >> > - default y > >> > > >> > ---help--- > >> > Enable this option if you have an infrared remote control which > >> > @@ -60,7 +53,6 @@ config IR_JVC_DECODER > >> > tristate "Enable IR raw decoder for the JVC protocol" > >> > depends on RC_CORE > >> > select BITREVERSE > >> > - default y > >> > > >> > ---help--- > >> > Enable this option if you have an infrared remote control which > >> > @@ -69,7 +61,6 @@ config IR_JVC_DECODER > >> > config IR_SONY_DECODER > >> > tristate "Enable IR raw decoder for the Sony protocol" > >> > depends on RC_CORE > >> > - default y > >> > > >> > ---help--- > >> > Enable this option if you have an infrared remote control which > >> > @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER > >> > tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" > >> > depends on RC_CORE > >> > select BITREVERSE > >> > - default y > >> > > >> > ---help--- > >> > Enable this option if you have IR with RC-5 (streamzap) protocol, > >> > @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER > >> > tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" > >> > depends on RC_CORE > >> > select BITREVERSE > >> > - default y > >> > > >> > ---help--- > >> > Enable this option if you have a Microsoft Remote Keyboard for > >> > @@ -102,7 +91,6 @@ config IR_LIRC_CODEC > >> > tristate "Enable IR to LIRC bridge" > >> > depends on RC_CORE > >> > depends on LIRC > >> > - default y > >> > > >> > ---help--- > >> > Enable this option to pass raw IR to and from userspace via > >> > @@ -236,5 +224,3 @@ config RC_LOOPBACK > >> > > >> > To compile this driver as a module, choose M here: the module will > >> > be called rc_loopback. > >> > - > >> > -endif #RC_CORE > >> > diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig > >> > index 8e615fd..dbaacf1 100644 > >> > --- a/drivers/media/rc/keymaps/Kconfig > >> > +++ b/drivers/media/rc/keymaps/Kconfig > >> > @@ -1,7 +1,6 @@ > >> > config RC_MAP > >> > tristate "Compile Remote Controller keymap modules" > >> > depends on RC_CORE > >> > - default y > >> > > >> > ---help--- > >> > This option enables the compilation of lots of Remote > >> > diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig > >> > index f574dc0..d26443d 100644 > >> > --- a/drivers/media/video/Kconfig > >> > +++ b/drivers/media/video/Kconfig > >> > @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG > >> > menuconfig VIDEO_CAPTURE_DRIVERS > >> > bool "Video capture adapters" > >> > depends on VIDEO_V4L2 > >> > - default y > >> > ---help--- > >> > Say Y here to enable selecting the video adapters for > >> > webcams, analog TV, and hybrid analog/digital TV. > >> > @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO > >> > > >> > config VIDEO_IR_I2C > >> > tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO > >> > - depends on I2C && RC_CORE > >> > - default y > >> > + depends on I2C > >> > + select RC_CORE > >> > ---help--- > >> > Most boards have an IR chip directly connected via GPIO. However, > >> > some video boards have the IR connected via I2C bus. > >> > @@ -556,7 +555,6 @@ config VIDEO_VIU > >> > tristate "Freescale VIU Video Driver" > >> > depends on VIDEO_V4L2 && PPC_MPC512x > >> > select VIDEOBUF_DMA_CONTIG > >> > - default y > >> > ---help--- > >> > Support for Freescale VIU video driver. This device captures > >> > video data, or overlays video on DIU frame buffer. > >> > @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" > >> > menuconfig V4L_USB_DRIVERS > >> > bool "V4L USB devices" > >> > depends on USB > >> > - default y > >> > > >> > if V4L_USB_DRIVERS && USB > >> > > >> > > >> > > > > --- > > Guennadi Liakhovetski, Ph.D. > > Freelance Open-Source Software Developer > > http://www.open-technology.de/ > > -- > > To unsubscribe from this list: send the line "unsubscribe linux-media" in > > the body of a message to majordomo@vger.kernel.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html > > > --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer http://www.open-technology.de/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Aug 30, 2011 at 5:47 PM, Guennadi Liakhovetski <g.liakhovetski@gmx.de> wrote: > On Tue, 30 Aug 2011, Michael Krufky wrote: > >> On Tue, Aug 30, 2011 at 4:12 PM, Guennadi Liakhovetski >> <g.liakhovetski@gmx.de> wrote: >> > On Tue, 30 Aug 2011, Hans Verkuil wrote: >> > >> >> On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: >> >> > None of the media drivers are compulsory, let users select which drivers >> >> > they want to build, instead of having to unselect them one by one. >> >> >> >> I disagree with this: while this is fine for SoCs, for a generic kernel I >> >> think it is better to build it all. Even expert users can have a hard time >> >> figuring out what chip is in a particular device. >> > >> > Then could someone, please, explain to me, why I don't find this >> > "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C - >> > you name them. Is there something special about media, that I'm missing, >> > or are all others just user-unfriendly? Why are distro-kernels, >> > allmodconfig, allyesconfig not enough for media and we think it's >> > necessary to build everything "just in case?" >> >> >> This isn't a matter of "building all drivers by default" -- it is a >> matter of building component dependency drivers that are needed by the >> bridge drivers, and allowing users to not build drivers that they >> don't need. > > I would understand, if in the beginning all was empty (all drivers > disabled), then the user goes to his or her card entry, enables it. And > since that card has a 100 of variations, and we don't know exactly which > of them the user has, we enable all components, possibly present on this > card. This would make sense. Howevre, this is not what we currently have. > >> The customization options are there to allow you to >> disable the "helper chips" / "tuners" etc from all being built if that >> is your choice. If you disable the customization options, then >> Kconfig automatically selects the dependencies of the bridge drivers >> that you've selected and does NOT build those that are irrelevant to >> you. > > Hm, that's not what I see. I just tried the following: made a default > x86_64 .config, it had media disabled. Then I enabled media and alreay a > bunch of IR remotes has been enabled. Then I enabled V4L, and all tuners > got enabled. Switching on "customize" allowed me to kill them selectively. > So, I don't see what you described above: how those tuners only get to > build, if I enable respective bridges. Or have I misunderstood you? You understood me correctly -- your experience described above reveals to us that the dependency system somehow got broken and now we're building too much by default. Maybe we should make the VIDEO_TUNER symbol as well as VIDEO_IR etc visible options so that those only looking to build webcams can turn them off all at once. I'd like to hear Mauro's comments on this. -Mike >> At first, users were forced to build everything without being >> able to disable these modules. We added this mechanism to allow such >> modules to be disabled from a build, but we enable them by default >> because anything else would become a user-support nightmare, as I >> stated earlier. If you refer to the mailing list archives from about >> four or five years ago, you'll may find that this was discussed at >> length on the video4linux and linux-dvb mailing lists. In the end I >> believe this is the solution that satisfied everybody the best. >> >> -Mike Krufky >> > >> > Thanks >> > Guennadi >> > >> >> >> >> Regards, >> >> >> >> Hans >> >> >> >> > Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> >> >> > --- >> >> > drivers/media/common/tuners/Kconfig | 23 +---------------------- >> >> > drivers/media/radio/Kconfig | 1 - >> >> > drivers/media/rc/Kconfig | 16 +--------------- >> >> > drivers/media/rc/keymaps/Kconfig | 1 - >> >> > drivers/media/video/Kconfig | 7 ++----- >> >> > 5 files changed, 4 insertions(+), 44 deletions(-) >> >> > >> >> > diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig >> >> > index 996302a..1e53057 100644 >> >> > --- a/drivers/media/common/tuners/Kconfig >> >> > +++ b/drivers/media/common/tuners/Kconfig >> >> > @@ -33,7 +33,7 @@ config MEDIA_TUNER >> >> > select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE >> >> > >> >> > config MEDIA_TUNER_CUSTOMISE >> >> > - bool "Customize analog and hybrid tuner modules to build" >> >> > + bool "Select analog and hybrid tuner modules to build" >> >> > depends on MEDIA_TUNER >> >> > default y if EXPERT >> >> > help >> >> > @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE >> >> > tristate "Simple tuner support" >> >> > depends on VIDEO_MEDIA && I2C >> >> > select MEDIA_TUNER_TDA9887 >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > Say Y here to include support for various simple tuners. >> >> > >> >> > @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 >> >> > depends on VIDEO_MEDIA && I2C >> >> > select MEDIA_TUNER_TDA827X >> >> > select MEDIA_TUNER_TDA18271 >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE >> >> > help >> >> > Say Y here to include support for Philips TDA9885/6/7 >> >> > analog IF demodulator. >> >> > @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 >> >> > tristate "TEA 5761 radio tuner (EXPERIMENTAL)" >> >> > depends on VIDEO_MEDIA && I2C >> >> > depends on EXPERIMENTAL >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > 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_CUSTOMISE >> >> > 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_CUSTOMISE >> >> > 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > 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 >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > A driver for the silicon tuner XC5000 from Xceive. >> >> > This device is only used inside a SiP called together with a >> >> > @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 >> >> > config MEDIA_TUNER_XC4000 >> >> > tristate "Xceive XC4000 silicon tuner" >> >> > depends on VIDEO_MEDIA && I2C >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > A driver for the silicon tuner XC4000 from Xceive. >> >> > This device is only used inside a SiP called together with a >> >> > @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 >> >> > config MEDIA_TUNER_MXL5005S >> >> > tristate "MaxLinear MSL5005S silicon tuner" >> >> > depends on VIDEO_MEDIA && I2C >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > A driver for the silicon tuner MXL5005S from MaxLinear. >> >> > >> >> > config MEDIA_TUNER_MXL5007T >> >> > tristate "MaxLinear MxL5007T silicon tuner" >> >> > depends on VIDEO_MEDIA && I2C >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > A driver for the silicon tuner MxL5007T from MaxLinear. >> >> > >> >> > config MEDIA_TUNER_MC44S803 >> >> > tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" >> >> > depends on VIDEO_MEDIA && I2C >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > Say Y here to support the Freescale MC44S803 based tuners >> >> > >> >> > config MEDIA_TUNER_MAX2165 >> >> > tristate "Maxim MAX2165 silicon tuner" >> >> > depends on VIDEO_MEDIA && I2C >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > A driver for the silicon tuner MAX2165 from Maxim. >> >> > >> >> > config MEDIA_TUNER_TDA18218 >> >> > tristate "NXP TDA18218 silicon tuner" >> >> > depends on VIDEO_MEDIA && I2C >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > NXP TDA18218 silicon tuner driver. >> >> > >> >> > config MEDIA_TUNER_TDA18212 >> >> > tristate "NXP TDA18212 silicon tuner" >> >> > depends on VIDEO_MEDIA && I2C >> >> > - default m if MEDIA_TUNER_CUSTOMISE >> >> > help >> >> > NXP TDA18212 silicon tuner driver. >> >> > >> >> > diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig >> >> > index 52798a1..0195335 100644 >> >> > --- a/drivers/media/radio/Kconfig >> >> > +++ b/drivers/media/radio/Kconfig >> >> > @@ -5,7 +5,6 @@ >> >> > menuconfig RADIO_ADAPTERS >> >> > bool "Radio Adapters" >> >> > depends on VIDEO_V4L2 >> >> > - default y >> >> > ---help--- >> >> > Say Y here to enable selecting AM/FM radio adapters. >> >> > >> >> > diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig >> >> > index 899f783..2a4f829 100644 >> >> > --- a/drivers/media/rc/Kconfig >> >> > +++ b/drivers/media/rc/Kconfig >> >> > @@ -1,7 +1,6 @@ >> >> > menuconfig RC_CORE >> >> > tristate "Remote Controller adapters" >> >> > depends on INPUT >> >> > - default INPUT >> >> > ---help--- >> >> > Enable support for Remote Controllers on Linux. This is >> >> > needed in order to support several video capture adapters. >> >> > @@ -11,12 +10,9 @@ menuconfig RC_CORE >> >> > if you don't need IR, as otherwise, you may not be able to >> >> > compile the driver for your adapter. >> >> > >> >> > -if RC_CORE >> >> > - >> >> > config LIRC >> >> > tristate >> >> > - default y >> >> > - >> >> > + depends on RC_CORE >> >> > ---help--- >> >> > Enable this option to build the Linux Infrared Remote >> >> > Control (LIRC) core device interface driver. The LIRC >> >> > @@ -30,7 +26,6 @@ config IR_NEC_DECODER >> >> > tristate "Enable IR raw decoder for the NEC protocol" >> >> > depends on RC_CORE >> >> > select BITREVERSE >> >> > - default y >> >> > >> >> > ---help--- >> >> > Enable this option if you have IR with NEC protocol, and >> >> > @@ -40,7 +35,6 @@ config IR_RC5_DECODER >> >> > tristate "Enable IR raw decoder for the RC-5 protocol" >> >> > depends on RC_CORE >> >> > select BITREVERSE >> >> > - default y >> >> > >> >> > ---help--- >> >> > Enable this option if you have IR with RC-5 protocol, and >> >> > @@ -50,7 +44,6 @@ config IR_RC6_DECODER >> >> > tristate "Enable IR raw decoder for the RC6 protocol" >> >> > depends on RC_CORE >> >> > select BITREVERSE >> >> > - default y >> >> > >> >> > ---help--- >> >> > Enable this option if you have an infrared remote control which >> >> > @@ -60,7 +53,6 @@ config IR_JVC_DECODER >> >> > tristate "Enable IR raw decoder for the JVC protocol" >> >> > depends on RC_CORE >> >> > select BITREVERSE >> >> > - default y >> >> > >> >> > ---help--- >> >> > Enable this option if you have an infrared remote control which >> >> > @@ -69,7 +61,6 @@ config IR_JVC_DECODER >> >> > config IR_SONY_DECODER >> >> > tristate "Enable IR raw decoder for the Sony protocol" >> >> > depends on RC_CORE >> >> > - default y >> >> > >> >> > ---help--- >> >> > Enable this option if you have an infrared remote control which >> >> > @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER >> >> > tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" >> >> > depends on RC_CORE >> >> > select BITREVERSE >> >> > - default y >> >> > >> >> > ---help--- >> >> > Enable this option if you have IR with RC-5 (streamzap) protocol, >> >> > @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER >> >> > tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" >> >> > depends on RC_CORE >> >> > select BITREVERSE >> >> > - default y >> >> > >> >> > ---help--- >> >> > Enable this option if you have a Microsoft Remote Keyboard for >> >> > @@ -102,7 +91,6 @@ config IR_LIRC_CODEC >> >> > tristate "Enable IR to LIRC bridge" >> >> > depends on RC_CORE >> >> > depends on LIRC >> >> > - default y >> >> > >> >> > ---help--- >> >> > Enable this option to pass raw IR to and from userspace via >> >> > @@ -236,5 +224,3 @@ config RC_LOOPBACK >> >> > >> >> > To compile this driver as a module, choose M here: the module will >> >> > be called rc_loopback. >> >> > - >> >> > -endif #RC_CORE >> >> > diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig >> >> > index 8e615fd..dbaacf1 100644 >> >> > --- a/drivers/media/rc/keymaps/Kconfig >> >> > +++ b/drivers/media/rc/keymaps/Kconfig >> >> > @@ -1,7 +1,6 @@ >> >> > config RC_MAP >> >> > tristate "Compile Remote Controller keymap modules" >> >> > depends on RC_CORE >> >> > - default y >> >> > >> >> > ---help--- >> >> > This option enables the compilation of lots of Remote >> >> > diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig >> >> > index f574dc0..d26443d 100644 >> >> > --- a/drivers/media/video/Kconfig >> >> > +++ b/drivers/media/video/Kconfig >> >> > @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG >> >> > menuconfig VIDEO_CAPTURE_DRIVERS >> >> > bool "Video capture adapters" >> >> > depends on VIDEO_V4L2 >> >> > - default y >> >> > ---help--- >> >> > Say Y here to enable selecting the video adapters for >> >> > webcams, analog TV, and hybrid analog/digital TV. >> >> > @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO >> >> > >> >> > config VIDEO_IR_I2C >> >> > tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO >> >> > - depends on I2C && RC_CORE >> >> > - default y >> >> > + depends on I2C >> >> > + select RC_CORE >> >> > ---help--- >> >> > Most boards have an IR chip directly connected via GPIO. However, >> >> > some video boards have the IR connected via I2C bus. >> >> > @@ -556,7 +555,6 @@ config VIDEO_VIU >> >> > tristate "Freescale VIU Video Driver" >> >> > depends on VIDEO_V4L2 && PPC_MPC512x >> >> > select VIDEOBUF_DMA_CONTIG >> >> > - default y >> >> > ---help--- >> >> > Support for Freescale VIU video driver. This device captures >> >> > video data, or overlays video on DIU frame buffer. >> >> > @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" >> >> > menuconfig V4L_USB_DRIVERS >> >> > bool "V4L USB devices" >> >> > depends on USB >> >> > - default y >> >> > >> >> > if V4L_USB_DRIVERS && USB >> >> > >> >> > >> >> >> > >> > --- >> > Guennadi Liakhovetski, Ph.D. >> > Freelance Open-Source Software Developer >> > http://www.open-technology.de/ >> > -- >> > To unsubscribe from this list: send the line "unsubscribe linux-media" in >> > the body of a message to majordomo@vger.kernel.org >> > More majordomo info at http://vger.kernel.org/majordomo-info.html >> > >> > > --- > Guennadi Liakhovetski, Ph.D. > Freelance Open-Source Software Developer > http://www.open-technology.de/ > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, 2011-08-30 at 21:39 +0200, Hans Verkuil wrote: > On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > > None of the media drivers are compulsory, let users select which drivers > > they want to build, instead of having to unselect them one by one. > > I disagree with this: while this is fine for SoCs, for a generic kernel I > think it is better to build it all. Even expert users can have a hard time > figuring out what chip is in a particular device. Yes, also if a driver is broken, a considerable amount of time could have passed before it is known. tvboxspy -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tuesday, August 30, 2011 23:31:06 Guennadi Liakhovetski wrote: > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > On Tuesday, August 30, 2011 22:12:09 Guennadi Liakhovetski wrote: > > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > > > > > On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > > > > > None of the media drivers are compulsory, let users select which drivers > > > > > they want to build, instead of having to unselect them one by one. > > > > > > > > I disagree with this: while this is fine for SoCs, for a generic kernel I > > > > think it is better to build it all. Even expert users can have a hard time > > > > figuring out what chip is in a particular device. > > > > > > Then could someone, please, explain to me, why I don't find this > > > "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C - > > > you name them. Is there something special about media, that I'm missing, > > > or are all others just user-unfriendly? Why are distro-kernels, > > > allmodconfig, allyesconfig not enough for media and we think it's > > > necessary to build everything "just in case?" > > > > That's actually a good question. I certainly think that the more obscure > > drivers can be disabled by default. But I also think that you want to keep > > a certain subset of commonly used drivers enabled. I'm thinking bttv, uvc, > > perhaps gspca. > > Good, this is a good beginning! It was actually the purpose of my patch - > to make us actually consider which drivers we need enabled per default, > and which we don't, instead of just enabling all. > > > As far as I can see, alsa enables for example HD Audio, which almost all > > modern hw supports. We should do something similar for v4l. > > Yes, agree. > > > And we should really reorder some of the entries in the menu: one of the > > first drivers you see are parallel port webcams and other very obscure > > devices. > > Ok. > > So, how should we proceed? What I certainly would like to disable > completely or to 99% are remote controls and tuners. The rest are actually > disabled by default, which is great. Or at least I would like to have a > single switch "disable all," ideally active by default. One of the > possibilities would be to take the patch as is and _then_ begin to think, > which drivers we want enabled by default. I just think, that the correct > approach is to think, which drivers we need enabled by default - as > exceptions, instead of - which drivers we can afford to disable. I would propose to start by reorganizing the menu. E.g. make a submenu for old legacy bus drivers (parallel port, ISA), for platform drivers, and for 'rare' drivers (need a better name for that :-) ). For example the Hexium PCI drivers are very rare, and few people have them. Once that is done we can look at disabling those legacy/platform/rare drivers. Regards, Hans > > Thanks > Guennadi > --- > Guennadi Liakhovetski, Ph.D. > Freelance Open-Source Software Developer > http://www.open-technology.de/ > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, 31 Aug 2011, Hans Verkuil wrote: > On Tuesday, August 30, 2011 23:31:06 Guennadi Liakhovetski wrote: > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > > > On Tuesday, August 30, 2011 22:12:09 Guennadi Liakhovetski wrote: > > > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > > > > > > > On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > > > > > > None of the media drivers are compulsory, let users select which > drivers > > > > > > they want to build, instead of having to unselect them one by one. > > > > > > > > > > I disagree with this: while this is fine for SoCs, for a generic > kernel I > > > > > think it is better to build it all. Even expert users can have a hard > time > > > > > figuring out what chip is in a particular device. > > > > > > > > Then could someone, please, explain to me, why I don't find this > > > > "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C > - > > > > you name them. Is there something special about media, that I'm missing, > > > > or are all others just user-unfriendly? Why are distro-kernels, > > > > allmodconfig, allyesconfig not enough for media and we think it's > > > > necessary to build everything "just in case?" > > > > > > That's actually a good question. I certainly think that the more obscure > > > drivers can be disabled by default. But I also think that you want to keep > > > a certain subset of commonly used drivers enabled. I'm thinking bttv, uvc, > > > perhaps gspca. > > > > Good, this is a good beginning! It was actually the purpose of my patch - > > to make us actually consider which drivers we need enabled per default, > > and which we don't, instead of just enabling all. > > > > > As far as I can see, alsa enables for example HD Audio, which almost all > > > modern hw supports. We should do something similar for v4l. > > > > Yes, agree. > > > > > And we should really reorder some of the entries in the menu: one of the > > > first drivers you see are parallel port webcams and other very obscure > > > devices. > > > > Ok. > > > > So, how should we proceed? What I certainly would like to disable > > completely or to 99% are remote controls and tuners. The rest are actually > > disabled by default, which is great. Or at least I would like to have a > > single switch "disable all," ideally active by default. One of the > > possibilities would be to take the patch as is and _then_ begin to think, > > which drivers we want enabled by default. I just think, that the correct > > approach is to think, which drivers we need enabled by default - as > > exceptions, instead of - which drivers we can afford to disable. > > I would propose to start by reorganizing the menu. E.g. make a submenu for > old legacy bus drivers (parallel port, ISA), for platform drivers, and for > 'rare' drivers (need a better name for that :-) ). For example the Hexium > PCI drivers are very rare, and few people have them. Sure, this can be done, not sure whether I'm a suitable person for this task - I don't have a very good overview of the present market situation;-) > Once that is done we can look at disabling those legacy/platform/rare drivers. I'm not sure any of those are actually enabled. What concerns me most are tuner and remote controller drivers. Do they also belong to your "rare" category? Do you agree, that they have to be disabled by default? Thanks Guennadi --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer http://www.open-technology.de/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wednesday, August 31, 2011 10:26:08 Guennadi Liakhovetski wrote: > On Wed, 31 Aug 2011, Hans Verkuil wrote: > > > On Tuesday, August 30, 2011 23:31:06 Guennadi Liakhovetski wrote: > > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > > > > > On Tuesday, August 30, 2011 22:12:09 Guennadi Liakhovetski wrote: > > > > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > > > > > > > > > On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > > > > > > > None of the media drivers are compulsory, let users select which > > drivers > > > > > > > they want to build, instead of having to unselect them one by one. > > > > > > > > > > > > I disagree with this: while this is fine for SoCs, for a generic > > kernel I > > > > > > think it is better to build it all. Even expert users can have a hard > > time > > > > > > figuring out what chip is in a particular device. > > > > > > > > > > Then could someone, please, explain to me, why I don't find this > > > > > "convenience" in any other kernel driver class? Wireless, ALSA, USB, I2C > > - > > > > > you name them. Is there something special about media, that I'm missing, > > > > > or are all others just user-unfriendly? Why are distro-kernels, > > > > > allmodconfig, allyesconfig not enough for media and we think it's > > > > > necessary to build everything "just in case?" > > > > > > > > That's actually a good question. I certainly think that the more obscure > > > > drivers can be disabled by default. But I also think that you want to keep > > > > a certain subset of commonly used drivers enabled. I'm thinking bttv, uvc, > > > > perhaps gspca. > > > > > > Good, this is a good beginning! It was actually the purpose of my patch - > > > to make us actually consider which drivers we need enabled per default, > > > and which we don't, instead of just enabling all. > > > > > > > As far as I can see, alsa enables for example HD Audio, which almost all > > > > modern hw supports. We should do something similar for v4l. > > > > > > Yes, agree. > > > > > > > And we should really reorder some of the entries in the menu: one of the > > > > first drivers you see are parallel port webcams and other very obscure > > > > devices. > > > > > > Ok. > > > > > > So, how should we proceed? What I certainly would like to disable > > > completely or to 99% are remote controls and tuners. The rest are actually > > > disabled by default, which is great. Or at least I would like to have a > > > single switch "disable all," ideally active by default. One of the > > > possibilities would be to take the patch as is and _then_ begin to think, > > > which drivers we want enabled by default. I just think, that the correct > > > approach is to think, which drivers we need enabled by default - as > > > exceptions, instead of - which drivers we can afford to disable. > > > > I would propose to start by reorganizing the menu. E.g. make a submenu for > > old legacy bus drivers (parallel port, ISA), for platform drivers, and for > > 'rare' drivers (need a better name for that :-) ). For example the Hexium > > PCI drivers are very rare, and few people have them. > > Sure, this can be done, not sure whether I'm a suitable person for this > task - I don't have a very good overview of the present market > situation;-) > > > Once that is done we can look at disabling those legacy/platform/rare drivers. > > I'm not sure any of those are actually enabled. What concerns me most are > tuner and remote controller drivers. Do they also belong to your "rare" > category? Do you agree, that they have to be disabled by default? I can't comment on the remote controller drivers as I haven't been involved with that. With regards to the tuners: perhaps it is sufficient to default MEDIA_ATTACH to 'y'? That should prevent building those tuners that are not needed. I wouldn't change anything else here. Regards, Hans -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, 31 Aug 2011, Hans Verkuil wrote: > On Wednesday, August 31, 2011 10:26:08 Guennadi Liakhovetski wrote: > > On Wed, 31 Aug 2011, Hans Verkuil wrote: > > > > > On Tuesday, August 30, 2011 23:31:06 Guennadi Liakhovetski wrote: > > > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > > > > > > > On Tuesday, August 30, 2011 22:12:09 Guennadi Liakhovetski wrote: > > > > > > On Tue, 30 Aug 2011, Hans Verkuil wrote: > > > > > > > > > > > > > On Tuesday, August 30, 2011 19:22:00 Guennadi Liakhovetski wrote: > > > > > > > > None of the media drivers are compulsory, let users select which > > > drivers > > > > > > > > they want to build, instead of having to unselect them one by > one. > > > > > > > > > > > > > > I disagree with this: while this is fine for SoCs, for a generic > > > kernel I > > > > > > > think it is better to build it all. Even expert users can have a > hard > > > time > > > > > > > figuring out what chip is in a particular device. > > > > > > > > > > > > Then could someone, please, explain to me, why I don't find this > > > > > > "convenience" in any other kernel driver class? Wireless, ALSA, USB, > I2C > > > - > > > > > > you name them. Is there something special about media, that I'm > missing, > > > > > > or are all others just user-unfriendly? Why are distro-kernels, > > > > > > allmodconfig, allyesconfig not enough for media and we think it's > > > > > > necessary to build everything "just in case?" > > > > > > > > > > That's actually a good question. I certainly think that the more > obscure > > > > > drivers can be disabled by default. But I also think that you want to > keep > > > > > a certain subset of commonly used drivers enabled. I'm thinking bttv, > uvc, > > > > > perhaps gspca. > > > > > > > > Good, this is a good beginning! It was actually the purpose of my patch > - > > > > to make us actually consider which drivers we need enabled per default, > > > > and which we don't, instead of just enabling all. > > > > > > > > > As far as I can see, alsa enables for example HD Audio, which almost > all > > > > > modern hw supports. We should do something similar for v4l. > > > > > > > > Yes, agree. > > > > > > > > > And we should really reorder some of the entries in the menu: one of > the > > > > > first drivers you see are parallel port webcams and other very obscure > > > > > devices. > > > > > > > > Ok. > > > > > > > > So, how should we proceed? What I certainly would like to disable > > > > completely or to 99% are remote controls and tuners. The rest are > actually > > > > disabled by default, which is great. Or at least I would like to have a > > > > single switch "disable all," ideally active by default. One of the > > > > possibilities would be to take the patch as is and _then_ begin to > think, > > > > which drivers we want enabled by default. I just think, that the correct > > > > approach is to think, which drivers we need enabled by default - as > > > > exceptions, instead of - which drivers we can afford to disable. > > > > > > I would propose to start by reorganizing the menu. E.g. make a submenu for > > > old legacy bus drivers (parallel port, ISA), for platform drivers, and for > > > 'rare' drivers (need a better name for that :-) ). For example the Hexium > > > PCI drivers are very rare, and few people have them. > > > > Sure, this can be done, not sure whether I'm a suitable person for this > > task - I don't have a very good overview of the present market > > situation;-) > > > > > Once that is done we can look at disabling those legacy/platform/rare > drivers. > > > > I'm not sure any of those are actually enabled. What concerns me most are > > tuner and remote controller drivers. Do they also belong to your "rare" > > category? Do you agree, that they have to be disabled by default? > > I can't comment on the remote controller drivers as I haven't been involved > with that. Mauro? > With regards to the tuners: perhaps it is sufficient to default MEDIA_ATTACH > to 'y'? That should prevent building those tuners that are not needed. Sorry, I don't see how this should work. I mean tuners under drivers/media/common/tuners/. > I wouldn't change anything else here. Thanks Guennadi --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer http://www.open-technology.de/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Em 31-08-2011 06:06, Guennadi Liakhovetski escreveu: >>>> I would propose to start by reorganizing the menu. E.g. make a submenu for >>>> old legacy bus drivers (parallel port, ISA), for platform drivers, and for >>>> 'rare' drivers (need a better name for that :-) ). For example the Hexium >>>> PCI drivers are very rare, and few people have them. >>> >>> Sure, this can be done, not sure whether I'm a suitable person for this >>> task - I don't have a very good overview of the present market >>> situation;-) It is hard to say what's "rare". While we know a few examples, nobody has a worldwide situation about what's rare. Of course, parallel port and ISA are things that makes sense to put into a separate sub-menu, as those devices are not common at all. >>>> Once that is done we can look at disabling those legacy/platform/rare >> drivers. >>> >>> I'm not sure any of those are actually enabled. What concerns me most are >>> tuner and remote controller drivers. Do they also belong to your "rare" >>> category? Do you agree, that they have to be disabled by default? >> >> I can't comment on the remote controller drivers as I haven't been involved >> with that. > > Mauro? If RC is disabled, most PC cards don't work (bttv, cx88, ivtv, dvb-usb, ...). Ok, this is due to a lack of proper module support on those drivers, but changing it requires some work on each driver that depends on RC. Also, if RC is selected, the RC decoder protocols need to be enabled by default, as otherwise several devices will stop working, as, on modern devices, there's no hardware anymore to decode the IR pulses. The RC protocol Kconfig options are there, in fact, to allow disabling some RC decoding protocol when people are 100% sure that such software decoder won't be needed on some particular environment. >> With regards to the tuners: perhaps it is sufficient to default MEDIA_ATTACH >> to 'y'? That should prevent building those tuners that are not needed. > > Sorry, I don't see how this should work. I mean tuners under > drivers/media/common/tuners/. > >> I wouldn't change anything else here. Tuners are required for all TV and DVB cards. Maybe we can put an explicit Kconfig item for TV devices, and change the config stuff to something like: config MEDIA_NEED_TUNER tristate menuconfig MEDIA_TV tristate "TV and grabber cards" select MEDIA_NEED_TUNER ... menuconfig MEDIA_WEBCAMS tristate "Webcameras" ... config DVB_CORE tristate "DVB for Linux" depends on NET && INET select CRC32 select MEDIA_NEED_TUNER config MEDIA_TUNER_TDA827X tristate "Philips TDA827X silicon tuner" depends on VIDEO_MEDIA && I2C default MEDIA_NEED_TUNER if MEDIA_TUNER_CUSTOMIZE help A DVB-T silicon tuner module. Say Y when you want to support this tuner. There's one problem with the above strategy: on a few drivers, the same driver is used for both webcams and TV. I know that em28xx has this problem, as the same driver also supports the non-UVC em27xx-based webcams. I think that the same is true also for usbvision. If we put those devices under the "TV and grabber cards", people that have just a em28xx-based webcam won't find them inside the MEDIA_WEBCAMS menus. Of course, we can workaround it, by creating a "fake" item inside the webcams menu, like: menuconfig MEDIA_WEBCAMS tristate "Webcameras" config MEDIA_EM27xx tristate "em27xx-based webcams" and put some glue magic between MEDIA_EM27xx and em28xx: config VIDEO_EM28XX depends on MEDIA_EM27xx if MEDIA_EM27xx > > Thanks > Guennadi > --- > Guennadi Liakhovetski, Ph.D. > Freelance Open-Source Software Developer > http://www.open-technology.de/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wednesday, August 31, 2011 14:06:34 Mauro Carvalho Chehab wrote: > Em 31-08-2011 06:06, Guennadi Liakhovetski escreveu: > >>>> I would propose to start by reorganizing the menu. E.g. make a submenu for > >>>> old legacy bus drivers (parallel port, ISA), for platform drivers, and for > >>>> 'rare' drivers (need a better name for that :-) ). For example the Hexium > >>>> PCI drivers are very rare, and few people have them. > >>> > >>> Sure, this can be done, not sure whether I'm a suitable person for this > >>> task - I don't have a very good overview of the present market > >>> situation;-) > > It is hard to say what's "rare". While we know a few examples, nobody has a > worldwide situation about what's rare. I actually have a pretty good overview of that when it comes to video capture. Going through the menu it is IMHO reasonably to classify the following drivers as rare: w9966 (still haven't been able to find hardware to test this) cpia2 (after a long hunt I finally tracked down a cpia2-based webcam) mxb hexium (orion and gemini drivers) As an aside: the cpia2 menu entry should really move to the 'V4L USB devices' section. I think making a menu with 'legacy drivers' containing the parallel port webcams (bw-qcam, c-qcam, w9966), the cpia2 driver, the ISA pms driver and the 'rare' mxb and hexium drivers would go a long way to cleaning up the v4l menu. And by reordering the rest of the menu so 'popular' drivers like saa7134 come before zoran and the motion eye drivers etc. would also make it easier to navigate the menu. The USB devices should be moved up to the top. I also think a 'Sensors' submenu will be useful. Right now most sensors are under SoC camera, but once the soc-camera dependency is removed we can move them all under their own submenu. Regards, Hans -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Em 31-08-2011 09:41, Hans Verkuil escreveu: > On Wednesday, August 31, 2011 14:06:34 Mauro Carvalho Chehab wrote: >> Em 31-08-2011 06:06, Guennadi Liakhovetski escreveu: >>>>>> I would propose to start by reorganizing the menu. E.g. make a submenu > for >>>>>> old legacy bus drivers (parallel port, ISA), for platform drivers, and > for >>>>>> 'rare' drivers (need a better name for that :-) ). For example the > Hexium >>>>>> PCI drivers are very rare, and few people have them. >>>>> >>>>> Sure, this can be done, not sure whether I'm a suitable person for this >>>>> task - I don't have a very good overview of the present market >>>>> situation;-) >> >> It is hard to say what's "rare". While we know a few examples, nobody has a >> worldwide situation about what's rare. > > I actually have a pretty good overview of that when it comes to video capture. > > Going through the menu it is IMHO reasonably to classify the following drivers > as rare: > > w9966 (still haven't been able to find hardware to test this) > cpia2 (after a long hunt I finally tracked down a cpia2-based webcam) > mxb > hexium (orion and gemini drivers) Not many. Also, I'm sure that some DVB devices are also "rare". I think that the main question is: are you _sure_ that all the remaining devices are "not rare"? If we're creating an item for those devices, we should be sure that we'll put there everything that falls into that category, otherwise it will be missy. Btw, there are also some cases where a device is found only on some specific market, like the ISDB-S cards (only found in Japan, AFAIK). Those devices will be "rare" outside Japan, as people would have a device there only if they have an ISDB-S generator, or if they're on some place where the Japan Satellites can be seen. The same applies to some drivers focused at the other Asian standards. I doubt that, when one of such devices become "rare" (e. g. after years after the end of such device sales) that we'll be able to detect it. > As an aside: the cpia2 menu entry should really move to the 'V4L USB devices' > section. Agreed. > I think making a menu with 'legacy drivers' containing the parallel port > webcams (bw-qcam, c-qcam, w9966), the cpia2 driver, the ISA pms driver and the > 'rare' mxb and hexium drivers would go a long way to cleaning up the v4l menu. a "parallel port" menu would make sense. Let's put it in the end. The same applies to ISA drivers. > And by reordering the rest of the menu so 'popular' drivers like saa7134 come > before zoran and the motion eye drivers etc. would also make it easier to > navigate the menu. Not sure about that. Maybe using an alphabetical order would be better. > The USB devices should be moved up to the top. Agreed. > I also think a 'Sensors' submenu will be useful. Right now most sensors are > under SoC camera, but once the soc-camera dependency is removed we can move > them all under their own submenu. We're putting all I2C drivers under the menu "Encoders/decoders and other helper chips", including the very few sensors drivers that don't belong to soc-camera. They're organized there by function. I don't mind reordering it or breaking it into sub-menus, provided that we will to the same thing for everything that falls into the same category. > > Regards, > > Hans Cheers, Mauro -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, 31 Aug 2011, Mauro Carvalho Chehab wrote: > Em 31-08-2011 09:41, Hans Verkuil escreveu: [snip] > > And by reordering the rest of the menu so 'popular' drivers like saa7134 come > > before zoran and the motion eye drivers etc. would also make it easier to > > navigate the menu. > > Not sure about that. Maybe using an alphabetical order would be better. Agree, alphabetic is easier to navigate. Thanks Guennadi --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer http://www.open-technology.de/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig index 996302a..1e53057 100644 --- a/drivers/media/common/tuners/Kconfig +++ b/drivers/media/common/tuners/Kconfig @@ -33,7 +33,7 @@ config MEDIA_TUNER select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE config MEDIA_TUNER_CUSTOMISE - bool "Customize analog and hybrid tuner modules to build" + bool "Select analog and hybrid tuner modules to build" depends on MEDIA_TUNER default y if EXPERT help @@ -52,7 +52,6 @@ config MEDIA_TUNER_SIMPLE tristate "Simple tuner support" depends on VIDEO_MEDIA && I2C select MEDIA_TUNER_TDA9887 - default m if MEDIA_TUNER_CUSTOMISE help Say Y here to include support for various simple tuners. @@ -61,28 +60,24 @@ config MEDIA_TUNER_TDA8290 depends on VIDEO_MEDIA && I2C select MEDIA_TUNER_TDA827X select MEDIA_TUNER_TDA18271 - default m if MEDIA_TUNER_CUSTOMISE 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 MEDIA_TUNER_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 MEDIA_TUNER_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_CUSTOMISE help Say Y here to include support for Philips TDA9885/6/7 analog IF demodulator. @@ -91,63 +86,54 @@ config MEDIA_TUNER_TEA5761 tristate "TEA 5761 radio tuner (EXPERIMENTAL)" depends on VIDEO_MEDIA && I2C depends on EXPERIMENTAL - default m if MEDIA_TUNER_CUSTOMISE 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_CUSTOMISE 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_CUSTOMISE 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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 MEDIA_TUNER_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 - default m if MEDIA_TUNER_CUSTOMISE 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 - default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner XC5000 from Xceive. This device is only used inside a SiP called together with a @@ -156,7 +142,6 @@ config MEDIA_TUNER_XC5000 config MEDIA_TUNER_XC4000 tristate "Xceive XC4000 silicon tuner" depends on VIDEO_MEDIA && I2C - default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner XC4000 from Xceive. This device is only used inside a SiP called together with a @@ -165,42 +150,36 @@ config MEDIA_TUNER_XC4000 config MEDIA_TUNER_MXL5005S tristate "MaxLinear MSL5005S silicon tuner" depends on VIDEO_MEDIA && I2C - default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner MXL5005S from MaxLinear. config MEDIA_TUNER_MXL5007T tristate "MaxLinear MxL5007T silicon tuner" depends on VIDEO_MEDIA && I2C - default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner MxL5007T from MaxLinear. config MEDIA_TUNER_MC44S803 tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" depends on VIDEO_MEDIA && I2C - default m if MEDIA_TUNER_CUSTOMISE help Say Y here to support the Freescale MC44S803 based tuners config MEDIA_TUNER_MAX2165 tristate "Maxim MAX2165 silicon tuner" depends on VIDEO_MEDIA && I2C - default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner MAX2165 from Maxim. config MEDIA_TUNER_TDA18218 tristate "NXP TDA18218 silicon tuner" depends on VIDEO_MEDIA && I2C - default m if MEDIA_TUNER_CUSTOMISE help NXP TDA18218 silicon tuner driver. config MEDIA_TUNER_TDA18212 tristate "NXP TDA18212 silicon tuner" depends on VIDEO_MEDIA && I2C - default m if MEDIA_TUNER_CUSTOMISE help NXP TDA18212 silicon tuner driver. diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index 52798a1..0195335 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -5,7 +5,6 @@ menuconfig RADIO_ADAPTERS bool "Radio Adapters" depends on VIDEO_V4L2 - default y ---help--- Say Y here to enable selecting AM/FM radio adapters. diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig index 899f783..2a4f829 100644 --- a/drivers/media/rc/Kconfig +++ b/drivers/media/rc/Kconfig @@ -1,7 +1,6 @@ menuconfig RC_CORE tristate "Remote Controller adapters" depends on INPUT - default INPUT ---help--- Enable support for Remote Controllers on Linux. This is needed in order to support several video capture adapters. @@ -11,12 +10,9 @@ menuconfig RC_CORE if you don't need IR, as otherwise, you may not be able to compile the driver for your adapter. -if RC_CORE - config LIRC tristate - default y - + depends on RC_CORE ---help--- Enable this option to build the Linux Infrared Remote Control (LIRC) core device interface driver. The LIRC @@ -30,7 +26,6 @@ config IR_NEC_DECODER tristate "Enable IR raw decoder for the NEC protocol" depends on RC_CORE select BITREVERSE - default y ---help--- Enable this option if you have IR with NEC protocol, and @@ -40,7 +35,6 @@ config IR_RC5_DECODER tristate "Enable IR raw decoder for the RC-5 protocol" depends on RC_CORE select BITREVERSE - default y ---help--- Enable this option if you have IR with RC-5 protocol, and @@ -50,7 +44,6 @@ config IR_RC6_DECODER tristate "Enable IR raw decoder for the RC6 protocol" depends on RC_CORE select BITREVERSE - default y ---help--- Enable this option if you have an infrared remote control which @@ -60,7 +53,6 @@ config IR_JVC_DECODER tristate "Enable IR raw decoder for the JVC protocol" depends on RC_CORE select BITREVERSE - default y ---help--- Enable this option if you have an infrared remote control which @@ -69,7 +61,6 @@ config IR_JVC_DECODER config IR_SONY_DECODER tristate "Enable IR raw decoder for the Sony protocol" depends on RC_CORE - default y ---help--- Enable this option if you have an infrared remote control which @@ -79,7 +70,6 @@ config IR_RC5_SZ_DECODER tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" depends on RC_CORE select BITREVERSE - default y ---help--- Enable this option if you have IR with RC-5 (streamzap) protocol, @@ -91,7 +81,6 @@ config IR_MCE_KBD_DECODER tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" depends on RC_CORE select BITREVERSE - default y ---help--- Enable this option if you have a Microsoft Remote Keyboard for @@ -102,7 +91,6 @@ config IR_LIRC_CODEC tristate "Enable IR to LIRC bridge" depends on RC_CORE depends on LIRC - default y ---help--- Enable this option to pass raw IR to and from userspace via @@ -236,5 +224,3 @@ config RC_LOOPBACK To compile this driver as a module, choose M here: the module will be called rc_loopback. - -endif #RC_CORE diff --git a/drivers/media/rc/keymaps/Kconfig b/drivers/media/rc/keymaps/Kconfig index 8e615fd..dbaacf1 100644 --- a/drivers/media/rc/keymaps/Kconfig +++ b/drivers/media/rc/keymaps/Kconfig @@ -1,7 +1,6 @@ config RC_MAP tristate "Compile Remote Controller keymap modules" depends on RC_CORE - default y ---help--- This option enables the compilation of lots of Remote diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig index f574dc0..d26443d 100644 --- a/drivers/media/video/Kconfig +++ b/drivers/media/video/Kconfig @@ -73,7 +73,6 @@ config VIDEOBUF2_DMA_SG menuconfig VIDEO_CAPTURE_DRIVERS bool "Video capture adapters" depends on VIDEO_V4L2 - default y ---help--- Say Y here to enable selecting the video adapters for webcams, analog TV, and hybrid analog/digital TV. @@ -113,8 +112,8 @@ config VIDEO_HELPER_CHIPS_AUTO config VIDEO_IR_I2C tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO - depends on I2C && RC_CORE - default y + depends on I2C + select RC_CORE ---help--- Most boards have an IR chip directly connected via GPIO. However, some video boards have the IR connected via I2C bus. @@ -556,7 +555,6 @@ config VIDEO_VIU tristate "Freescale VIU Video Driver" depends on VIDEO_V4L2 && PPC_MPC512x select VIDEOBUF_DMA_CONTIG - default y ---help--- Support for Freescale VIU video driver. This device captures video data, or overlays video on DIU frame buffer. @@ -986,7 +984,6 @@ source "drivers/media/video/s5p-tv/Kconfig" menuconfig V4L_USB_DRIVERS bool "V4L USB devices" depends on USB - default y if V4L_USB_DRIVERS && USB
None of the media drivers are compulsory, let users select which drivers they want to build, instead of having to unselect them one by one. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/common/tuners/Kconfig | 23 +---------------------- drivers/media/radio/Kconfig | 1 - drivers/media/rc/Kconfig | 16 +--------------- drivers/media/rc/keymaps/Kconfig | 1 - drivers/media/video/Kconfig | 7 ++----- 5 files changed, 4 insertions(+), 44 deletions(-)