[linuxtv-commits] [hg:v4l-dvb] Simplifies Kconfig rules.

2008-05-06 Thread Patch from Mauro Carvalho Chehab
The patch number 7847 was added via Mauro Carvalho Chehab [EMAIL PROTECTED]
to http://linuxtv.org/hg/v4l-dvb master development tree.

Kernel patches in this development tree may be modified to be backward
compatible with older kernels. Compatibility modifications will be
removed before inclusion into the mainstream Kernel

If anyone has any objections, please let us know by sending a message to:
[EMAIL PROTECTED]

--

From: Mauro Carvalho Chehab  [EMAIL PROTECTED]
Simplifies Kconfig rules.


Since all tuners are dependent of I2C, move I2C dependency to MEDIA_TUNER.
Also, simplifies the dependencies for the other Kconfig items.

Signed-off-by: Mauro Carvalho Chehab [EMAIL PROTECTED]


---

 linux/drivers/media/common/tuners/Kconfig |   20 
 1 file changed, 4 insertions(+), 16 deletions(-)

diff -r 98acaa345fce -r 60d463d16845 linux/drivers/media/common/tuners/Kconfig
--- a/linux/drivers/media/common/tuners/Kconfig Tue May 06 09:35:58 2008 -0300
+++ b/linux/drivers/media/common/tuners/Kconfig Tue May 06 09:38:24 2008 -0300
@@ -19,8 +19,8 @@ config MEDIA_ATTACH
 
 config MEDIA_TUNER
tristate
-   default DVB_CORE || VIDEO_DEV
-   depends on DVB_CORE || VIDEO_DEV
+   default VIDEO_MEDIA  I2C
+   depends on VIDEO_MEDIA  I2C
select MEDIA_TUNER_XC2028 if !MEDIA_TUNER_CUSTOMIZE
select MEDIA_TUNER_XC5000 if !MEDIA_TUNER_CUSTOMIZE
select MEDIA_TUNER_MT20XX if !MEDIA_TUNER_CUSTOMIZE
@@ -46,7 +46,6 @@ if MEDIA_TUNER_CUSTOMIZE
 
 config MEDIA_TUNER_SIMPLE
tristate Simple tuner support
-   depends on I2C
select MEDIA_TUNER_TDA9887
default m if MEDIA_TUNER_CUSTOMIZE
help
@@ -54,7 +53,6 @@ config MEDIA_TUNER_SIMPLE
 
 config MEDIA_TUNER_TDA8290
tristate TDA 8290/8295 + 8275(a)/18271 tuner combo
-   depends on I2C
select MEDIA_TUNER_TDA827X
select MEDIA_TUNER_TDA18271
default m if MEDIA_TUNER_CUSTOMIZE
@@ -63,21 +61,18 @@ config MEDIA_TUNER_TDA8290
 
 config MEDIA_TUNER_TDA827X
tristate Philips TDA827X silicon tuner
-   depends on DVB_CORE  I2C
default m if DVB_FE_CUSTOMISE
help
  A DVB-T silicon tuner module. Say Y when you want to support this 
tuner.
 
 config MEDIA_TUNER_TDA18271
tristate NXP TDA18271 silicon tuner
-   depends on I2C
default m if DVB_FE_CUSTOMISE
help
  A silicon tuner module. Say Y when you want to support this tuner.
 
 config MEDIA_TUNER_TDA9887
tristate TDA 9885/6/7 analog IF demodulator
-   depends on I2C
default m if MEDIA_TUNER_CUSTOMIZE
help
  Say Y here to include support for Philips TDA9885/6/7
@@ -85,63 +80,56 @@ config MEDIA_TUNER_TDA9887
 
 config MEDIA_TUNER_TEA5761
tristate TEA 5761 radio tuner (EXPERIMENTAL)
-   depends on I2C  EXPERIMENTAL
+   depends on EXPERIMENTAL
default m if MEDIA_TUNER_CUSTOMIZE
help
  Say Y here to include support for the Philips TEA5761 radio tuner.
 
 config MEDIA_TUNER_TEA5767
tristate TEA 5767 radio tuner
-   depends on I2C
default m if MEDIA_TUNER_CUSTOMIZE
help
  Say Y here to include support for the Philips TEA5767 radio tuner.
 
 config MEDIA_TUNER_MT20XX
tristate Microtune 2032 / 2050 tuners
-   depends on I2C
default m if MEDIA_TUNER_CUSTOMIZE
help
  Say Y here to include support for the MT2032 / MT2050 tuner.
 
 config MEDIA_TUNER_MT2060
tristate Microtune MT2060 silicon IF tuner
-   depends on I2C
default m if DVB_FE_CUSTOMISE
help
  A driver for the silicon IF tuner MT2060 from Microtune.
 
 config MEDIA_TUNER_MT2266
tristate Microtune MT2266 silicon tuner
-   depends on I2C
default m if DVB_FE_CUSTOMISE
help
  A driver for the silicon baseband tuner MT2266 from Microtune.
 
 config MEDIA_TUNER_MT2131
tristate Microtune MT2131 silicon tuner
-   depends on I2C
default m if DVB_FE_CUSTOMISE
help
  A driver for the silicon baseband tuner MT2131 from Microtune.
 
 config MEDIA_TUNER_QT1010
tristate Quantek QT1010 silicon tuner
-   depends on DVB_CORE  I2C
default m if DVB_FE_CUSTOMISE
help
  A driver for the silicon tuner QT1010 from Quantek.
 
 config MEDIA_TUNER_XC2028
tristate XCeive xc2028/xc3028 tuners
-   depends on I2C  FW_LOADER
+   depends on FW_LOADER
default m if MEDIA_TUNER_CUSTOMIZE
help
  Say Y here to include support for the xc2028/xc3028 tuners.
 
 config MEDIA_TUNER_XC5000
tristate Xceive XC5000 silicon tuner
-   depends on I2C
select FW_LOADER
default m if DVB_FE_CUSTOMISE
help


---

Patch is available at: 
http://linuxtv.org/hg/v4l-dvb/rev/60d463d16845ad35f18faf6f0e1f3138bd3b7f62

___
linuxtv-commits mailing 

Re: [linuxtv-commits] [hg:v4l-dvb] Simplifies Kconfig rules.

2008-05-06 Thread Mauro Carvalho Chehab
On Tue, 6 May 2008 10:43:12 -0400
Michael Krufky [EMAIL PROTECTED] wrote:

 Mauro,
 
 I disagree with this change.  All of the tuners in this list depend on
 I2C, but not all tuners do, in general.  Likewise, you are moving the
 depends on I2C to MEDIA_TUNER , but these tuner modules do not
 depend on MEDIA_TUNER.
 
 I think this patch should be reverted.  I think you had a nice idea to
 make the Kconfig menus simpler, but I don't think we gain anything
 from this change at all.  In fact, this causes additional errors for
 if we select these tuner modules and do not select MEDIA_TUNER, in
 cases where we want DVB support without video4linux.

It seems that you didn't got what's happening at common/tuners/Kconfig:

config MEDIA_TUNER
  tristate
   -   default DVB_CORE || VIDEO_DEV
   -   depends on DVB_CORE || VIDEO_DEV
   +   default VIDEO_MEDIA  I2C
   +   depends on VIDEO_MEDIA  I2C
  select MEDIA_TUNER_XC2028 if !MEDIA_TUNER_CUSTOMIZE
  select MEDIA_TUNER_XC5000 if !MEDIA_TUNER_CUSTOMIZE
  select MEDIA_TUNER_MT20XX if !MEDIA_TUNER_CUSTOMIZE

With or without the patch, if DVB_CORE and/or VIDEO_DEV is 'Y' or 'M', this
symbol is 'Y' or 'M'. So, DVB won't break without V4L. So, if you have only
DVB_CORE = 'M', MEDIA_TUNER = 'M'.

This patch (together with another patch) is needed to fix a bug reported by
Alistair, at LKML.

In fact, this will fix some issues that happens if DVB_CORE is 'Y' and
VIDEO_DEV is 'M' (or the reverse), since, on those cases, all tuner drivers
should be 'Y'.

Also, it should be noticed that _all_ tuners that can be shared between DVB and 
V4L
need to support I2C, since this is a requirement for tuner-core to work.

What this patch does is to replace DVB_CORE || VIDEO_DEV to VIDEO_MEDIA, and to 
replace:

(DVB_CORE || VIDEO_DEV)  I2C (that is common to all tuners under 
common/tuners) to:
MEDIA_TUNER.

What happens is that our Kconfig stuff is so complex that even small changes
are breaking the Kbuild. We really need to make things simpler, otherwise we
will keep breaking it on every new kernel.


Cheers,
Mauro

___
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits