Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8ca4083b50752d588f8b8b1e5e5776fb17d00304
Commit:     8ca4083b50752d588f8b8b1e5e5776fb17d00304
Parent:     91c9d4a16710b047781248a38e7000ce9de324af
Author:     Michael Krufky <[EMAIL PROTECTED]>
AuthorDate: Sun Dec 16 20:11:46 2007 -0300
Committer:  Mauro Carvalho Chehab <[EMAIL PROTECTED]>
CommitDate: Fri Jan 25 19:03:55 2008 -0200

    V4L/DVB (6842): tda9887: remove dependency on struct tuner
    
    Signed-off-by: Michael Krufky <[EMAIL PROTECTED]>
    Signed-off-by: Mauro Carvalho Chehab <[EMAIL PROTECTED]>
---
 drivers/media/video/tda9887.c    |   22 +++++++++++-----------
 drivers/media/video/tda9887.h    |   13 +++++++++----
 drivers/media/video/tuner-core.c |    2 +-
 3 files changed, 21 insertions(+), 16 deletions(-)

diff --git a/drivers/media/video/tda9887.c b/drivers/media/video/tda9887.c
index 95d9742..0b5dc37 100644
--- a/drivers/media/video/tda9887.c
+++ b/drivers/media/video/tda9887.c
@@ -9,6 +9,7 @@
 #include <linux/videodev.h>
 #include <media/v4l2-common.h>
 #include <media/tuner.h>
+#include "tuner-driver.h"
 #include "tuner-i2c.h"
 #include "tda9887.h"
 
@@ -665,26 +666,25 @@ static struct analog_tuner_ops tda9887_tuner_ops = {
        .set_config     = tda9887_set_config,
 };
 
-int tda9887_attach(struct tuner *t)
+struct dvb_frontend *tda9887_attach(struct dvb_frontend *fe,
+                                   struct i2c_adapter *i2c_adap,
+                                   u8 i2c_addr)
 {
        struct tda9887_priv *priv = NULL;
 
        priv = kzalloc(sizeof(struct tda9887_priv), GFP_KERNEL);
        if (priv == NULL)
-               return -ENOMEM;
-       t->fe.analog_demod_priv = priv;
+               return NULL;
+       fe->analog_demod_priv = priv;
 
-       priv->i2c_props.addr = t->i2c->addr;
-       priv->i2c_props.adap = t->i2c->adapter;
+       priv->i2c_props.addr = i2c_addr;
+       priv->i2c_props.adap = i2c_adap;
 
-       strlcpy(t->i2c->name, "tda9887", sizeof(t->i2c->name));
+       tda9887_info("tda988[5/6/7] found\n");
 
-       tda9887_info("tda988[5/6/7] found @ 0x%x (%s)\n", t->i2c->addr,
-                    t->i2c->driver->driver.name);
+       fe->ops.analog_demod_ops = &tda9887_tuner_ops;
 
-       t->fe.ops.analog_demod_ops = &tda9887_tuner_ops;
-
-       return 0;
+       return fe;
 }
 EXPORT_SYMBOL_GPL(tda9887_attach);
 
diff --git a/drivers/media/video/tda9887.h b/drivers/media/video/tda9887.h
index b879f0e..8f873a8 100644
--- a/drivers/media/video/tda9887.h
+++ b/drivers/media/video/tda9887.h
@@ -17,16 +17,21 @@
 #ifndef __TDA9887_H__
 #define __TDA9887_H__
 
-#include "tuner-driver.h"
+#include <linux/i2c.h>
+#include "dvb_frontend.h"
 
 /* ------------------------------------------------------------------------ */
 #if defined(CONFIG_TUNER_TDA9887) || (defined(CONFIG_TUNER_TDA9887_MODULE) && 
defined(MODULE))
-extern int tda9887_attach(struct tuner *t);
+extern struct dvb_frontend *tda9887_attach(struct dvb_frontend *fe,
+                                          struct i2c_adapter *i2c_adap,
+                                          u8 i2c_addr);
 #else
-static inline int tda9887_attach(struct tuner *t)
+static inline struct dvb_frontend *tda9887_attach(struct dvb_frontend *fe,
+                                                 struct i2c_adapter *i2c_adap,
+                                                 u8 i2c_addr)
 {
        printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__);
-       return -EINVAL;
+       return NULL;
 }
 #endif
 
diff --git a/drivers/media/video/tuner-core.c b/drivers/media/video/tuner-core.c
index 695f39e..d51f3af 100644
--- a/drivers/media/video/tuner-core.c
+++ b/drivers/media/video/tuner-core.c
@@ -408,7 +408,7 @@ static void set_type(struct i2c_client *c, unsigned int 
type,
                break;
        }
        case TUNER_TDA9887:
-               tda9887_attach(t);
+               tda9887_attach(&t->fe, t->i2c->adapter, t->i2c->addr);
                break;
        default:
                attach_simple_tuner(t);
-
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