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