Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9ab1ba38e6a25a480234f196aa26239e28ac2407
Commit:     9ab1ba38e6a25a480234f196aa26239e28ac2407
Parent:     982dd1bdaab39185ccd55cafd3c099b7fee5f2dd
Author:     Trent Piepho <[EMAIL PROTECTED]>
AuthorDate: Fri Apr 27 12:31:28 2007 -0300
Committer:  Mauro Carvalho Chehab <[EMAIL PROTECTED]>
CommitDate: Fri Apr 27 15:44:01 2007 -0300

    V4L/DVB (5361): Dvb-pll: Fix Kconfig files and allow dvb-pll to be optional
    
    A number of drivers selected DVB_PLL when they did not need it, and some
    that did need it did not select it.
    
    The DVB_PLL option is given a name and help text, so that it will show up
    in the config menu.  DVB_PLL support can be turned on if an out-of-tree
    driver needs it.
    
    The standard dvb fe customization support is added to dvb-pll.h.  Since
    all modules which select DVB_PLL do so unconditionally, it is not
    possible to turn dvb-pll off when an enabled module selects it, unlike
    most of the other frontend/tuner drivers.  This is because the users of
    dvb-pll have static references to dvb-pll symbols other than the attach
    function.  If these references are removed, then dvb-pll will be
    disablable as the other frontend/tuner drivers are.
    
    Signed-off-by: Trent Piepho <[EMAIL PROTECTED]>
    Signed-off-by: Mauro Carvalho Chehab <[EMAIL PROTECTED]>
---
 drivers/media/dvb/dvb-usb/Kconfig      |    4 ++++
 drivers/media/dvb/frontends/Kconfig    |    6 +++++-
 drivers/media/dvb/frontends/dvb-pll.h  |   11 +++++++++++
 drivers/media/dvb/pluto2/Kconfig       |    1 -
 drivers/media/dvb/ttpci/Kconfig        |    4 ----
 drivers/media/dvb/ttusb-budget/Kconfig |    1 -
 6 files changed, 20 insertions(+), 7 deletions(-)

diff --git a/drivers/media/dvb/dvb-usb/Kconfig 
b/drivers/media/dvb/dvb-usb/Kconfig
index 80f67a5..cb727b8 100644
--- a/drivers/media/dvb/dvb-usb/Kconfig
+++ b/drivers/media/dvb/dvb-usb/Kconfig
@@ -33,6 +33,7 @@ config DVB_USB_A800
 config DVB_USB_DIBUSB_MB
        tristate "DiBcom USB DVB-T devices (based on the DiB3000M-B) (see help 
for device list)"
        depends on DVB_USB
+       select DVB_PLL
        select DVB_DIB3000MB
        select DVB_TUNER_MT2060 if !DVB_FE_CUSTOMISE
        help
@@ -88,6 +89,7 @@ config DVB_USB_DIB0700
 config DVB_USB_UMT_010
        tristate "HanfTek UMT-010 DVB-T USB2.0 support"
        depends on DVB_USB
+       select DVB_PLL
        select DVB_DIB3000MC
        select DVB_TUNER_MT2060 if !DVB_FE_CUSTOMISE
        help
@@ -96,6 +98,7 @@ config DVB_USB_UMT_010
 config DVB_USB_CXUSB
        tristate "Conexant USB2.0 hybrid reference design support"
        depends on DVB_USB
+       select DVB_PLL
        select DVB_CX22702 if !DVB_FE_CUSTOMISE
        select DVB_LGDT330X if !DVB_FE_CUSTOMISE
        select DVB_TUNER_LGH06XF if !DVB_FE_CUSTOMISE
@@ -140,6 +143,7 @@ config DVB_USB_AU6610
 config DVB_USB_DIGITV
        tristate "Nebula Electronics uDigiTV DVB-T USB2.0 support"
        depends on DVB_USB
+       select DVB_PLL
        select DVB_NXT6000 if !DVB_FE_CUSTOMISE
        select DVB_MT352 if !DVB_FE_CUSTOMISE
        help
diff --git a/drivers/media/dvb/frontends/Kconfig 
b/drivers/media/dvb/frontends/Kconfig
index a205e0b..b255cbe 100644
--- a/drivers/media/dvb/frontends/Kconfig
+++ b/drivers/media/dvb/frontends/Kconfig
@@ -280,8 +280,12 @@ comment "Tuners/PLL support"
        depends on DVB_CORE
 
 config DVB_PLL
-       tristate
+       tristate "Generic I2C PLL based tuners"
        depends on DVB_CORE && I2C
+       default m if DVB_FE_CUSTOMISE
+       help
+         This module driver a number of tuners based on PLL chips with a
+         common I2C interface. Say Y when you want to support these tuners.
 
 config DVB_TDA826X
        tristate "Philips TDA826X silicon tuner"
diff --git a/drivers/media/dvb/frontends/dvb-pll.h 
b/drivers/media/dvb/frontends/dvb-pll.h
index 681186a..a5bd928 100644
--- a/drivers/media/dvb/frontends/dvb-pll.h
+++ b/drivers/media/dvb/frontends/dvb-pll.h
@@ -59,9 +59,20 @@ extern int dvb_pll_configure(struct dvb_pll_desc *desc, u8 
*buf,
  * @param desc dvb_pll_desc to use.
  * @return Frontend pointer on success, NULL on failure
  */
+#if defined(CONFIG_DVB_PLL) || (defined(CONFIG_DVB_PLL_MODULE) && 
defined(MODULE))
 extern struct dvb_frontend *dvb_pll_attach(struct dvb_frontend *fe,
                                           int pll_addr,
                                           struct i2c_adapter *i2c,
                                           struct dvb_pll_desc *desc);
+#else
+static inline struct dvb_frontend *dvb_pll_attach(struct dvb_frontend *fe,
+                                          int pll_addr,
+                                          struct i2c_adapter *i2c,
+                                          struct dvb_pll_desc *desc)
+{
+       printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__);
+       return NULL;
+}
+#endif
 
 #endif
diff --git a/drivers/media/dvb/pluto2/Kconfig b/drivers/media/dvb/pluto2/Kconfig
index 9b84b1b..7d8e6e8 100644
--- a/drivers/media/dvb/pluto2/Kconfig
+++ b/drivers/media/dvb/pluto2/Kconfig
@@ -2,7 +2,6 @@ config DVB_PLUTO2
        tristate "Pluto2 cards"
        depends on DVB_CORE && PCI && I2C
        select I2C_ALGOBIT
-       select DVB_PLL
        select DVB_TDA1004X
        help
          Support for PCI cards based on the Pluto2 FPGA like the Satelco
diff --git a/drivers/media/dvb/ttpci/Kconfig b/drivers/media/dvb/ttpci/Kconfig
index eec7ccf..3cd319f 100644
--- a/drivers/media/dvb/ttpci/Kconfig
+++ b/drivers/media/dvb/ttpci/Kconfig
@@ -3,7 +3,6 @@ config DVB_AV7110
        depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
        select FW_LOADER if !DVB_AV7110_FIRMWARE
        select VIDEO_SAA7146_VV
-       select DVB_PLL
        select DVB_VES1820 if !DVB_FE_CUSTOMISE
        select DVB_VES1X93 if !DVB_FE_CUSTOMISE
        select DVB_STV0299 if !DVB_FE_CUSTOMISE
@@ -62,7 +61,6 @@ config DVB_BUDGET
        tristate "Budget cards"
        depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
        select VIDEO_SAA7146
-       select DVB_PLL
        select DVB_STV0299 if !DVB_FE_CUSTOMISE
        select DVB_VES1X93 if !DVB_FE_CUSTOMISE
        select DVB_VES1820 if !DVB_FE_CUSTOMISE
@@ -87,7 +85,6 @@ config DVB_BUDGET_CI
        tristate "Budget cards with onboard CI connector"
        depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
        select VIDEO_SAA7146
-       select DVB_PLL
        select DVB_STV0297 if !DVB_FE_CUSTOMISE
        select DVB_STV0299 if !DVB_FE_CUSTOMISE
        select DVB_TDA1004X if !DVB_FE_CUSTOMISE
@@ -130,7 +127,6 @@ config DVB_BUDGET_PATCH
        tristate "AV7110 cards with Budget Patch"
        depends on DVB_CORE && DVB_BUDGET && VIDEO_V4L1
        select DVB_AV7110
-       select DVB_PLL
        select DVB_STV0299 if !DVB_FE_CUSTOMISE
        select DVB_VES1X93 if !DVB_FE_CUSTOMISE
        select DVB_TDA8083 if !DVB_FE_CUSTOMISE
diff --git a/drivers/media/dvb/ttusb-budget/Kconfig 
b/drivers/media/dvb/ttusb-budget/Kconfig
index e78ea92..f546bcc 100644
--- a/drivers/media/dvb/ttusb-budget/Kconfig
+++ b/drivers/media/dvb/ttusb-budget/Kconfig
@@ -1,7 +1,6 @@
 config DVB_TTUSB_BUDGET
        tristate "Technotrend/Hauppauge Nova-USB devices"
        depends on DVB_CORE && USB && I2C
-       select DVB_PLL
        select DVB_CX22700 if !DVB_FE_CUSTOMISE
        select DVB_TDA1004X if !DVB_FE_CUSTOMISE
        select DVB_VES1820 if !DVB_FE_CUSTOMISE
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to