diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-02-04 12:56:39 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-03-21 20:32:02 -0300 |
commit | 900f734b3bafb4e111b9ec5d865c448a9911b2ab (patch) | |
tree | bd2dbb7c257596f132dcd8cd78c117d540cc1c43 | |
parent | 7d275bf840a8f390b8fd3d686545e09ef01f7915 (diff) | |
download | linux-900f734b3bafb4e111b9ec5d865c448a9911b2ab.tar.gz linux-900f734b3bafb4e111b9ec5d865c448a9911b2ab.tar.bz2 linux-900f734b3bafb4e111b9ec5d865c448a9911b2ab.zip |
[media] tuner-core: Don't use a static var for xc5000_cfg
A static var is evil, especially if a device has two boards with
xc5000. Instead, just like the other drivers, use stack to store
its config during setup.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/video/tuner-core.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/media/video/tuner-core.c b/drivers/media/video/tuner-core.c index 70ff416c0ced..16939cad987c 100644 --- a/drivers/media/video/tuner-core.c +++ b/drivers/media/video/tuner-core.c @@ -66,7 +66,6 @@ module_param_string(ntsc, ntsc, sizeof(ntsc), 0644); * Static vars */ -static struct xc5000_config xc5000_cfg; static LIST_HEAD(tuner_list); /* @@ -338,9 +337,12 @@ static void set_type(struct i2c_client *c, unsigned int type, break; case TUNER_XC5000: { - xc5000_cfg.i2c_address = t->i2c->addr; - /* if_khz will be set when the digital dvb_attach() occurs */ - xc5000_cfg.if_khz = 0; + struct xc5000_config xc5000_cfg = { + .i2c_address = t->i2c->addr, + /* if_khz will be set at dvb_attach() */ + .if_khz = 0, + }; + if (!dvb_attach(xc5000_attach, &t->fe, t->i2c->adapter, &xc5000_cfg)) goto attach_failed; |