diff options
author | Darron Broad <darron@kewl.org> | 2008-10-11 16:24:30 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-10-17 22:23:21 +0200 |
commit | f972e0bd9361594071d3e68e2342c53b51a1d42b (patch) | |
tree | 11c12c47199beaea21f2258020be5c64f4202958 | |
parent | V4L/DVB (9223): MFE: Fix a number of bugs and some tidying up (diff) | |
download | linux-f972e0bd9361594071d3e68e2342c53b51a1d42b.tar.xz linux-f972e0bd9361594071d3e68e2342c53b51a1d42b.zip |
V4L/DVB (9224): MFE: bugfix: add missing frontend allocation
When using MFE on a setup with both and HVR-3000 and ASUS P7131
card it was noticed that frontend allocation for saa7134
adapters was missing. This patch adds that allocation for
both saa7134 and cx23885 adapters.
Signed-off-by: Darron Broad <darron@kewl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/video/cx23885/cx23885-dvb.c | 13 | ||||
-rw-r--r-- | drivers/media/video/saa7134/saa7134-dvb.c | 12 |
2 files changed, 25 insertions, 0 deletions
diff --git a/drivers/media/video/cx23885/cx23885-dvb.c b/drivers/media/video/cx23885/cx23885-dvb.c index d8c25a802561..c14878f74bcc 100644 --- a/drivers/media/video/cx23885/cx23885-dvb.c +++ b/drivers/media/video/cx23885/cx23885-dvb.c @@ -314,6 +314,19 @@ static int dvb_register(struct cx23885_tsport *port) struct cx23885_i2c *i2c_bus = NULL; struct videobuf_dvb_frontend *fe0; + /* FIXME: add support for multi-frontend */ + mutex_init(&port->frontends.lock); + INIT_LIST_HEAD(&port->frontends.frontend.felist); + port->frontends.active_fe_id = 0; + + printk(KERN_INFO "%s() allocating 1 frontend\n", __func__); + + if (videobuf_dvb_alloc_frontend(dev, &port->frontends, 1) == NULL) { + printk(KERN_ERR "%s() failed to alloc\n", __func__); + return -ENOMEM; + } + + /* Get the first frontend */ fe0 = videobuf_dvb_get_frontend(&port->frontends, 1); if (!fe0) return -EINVAL; diff --git a/drivers/media/video/saa7134/saa7134-dvb.c b/drivers/media/video/saa7134/saa7134-dvb.c index cdb5f5dfe4d9..30ae0cbe78a0 100644 --- a/drivers/media/video/saa7134/saa7134-dvb.c +++ b/drivers/media/video/saa7134/saa7134-dvb.c @@ -951,6 +951,18 @@ static int dvb_init(struct saa7134_dev *dev) int attach_xc3028 = 0; struct videobuf_dvb_frontend *fe0; + /* FIXME: add support for multi-frontend */ + mutex_init(&dev->frontends.lock); + INIT_LIST_HEAD(&dev->frontends.frontend.felist); + dev->frontends.active_fe_id = 0; + + printk(KERN_INFO "%s() allocating 1 frontend\n", __func__); + + if (videobuf_dvb_alloc_frontend(dev, &dev->frontends, 1) == NULL) { + printk(KERN_ERR "%s() failed to alloc\n", __func__); + return -ENOMEM; + } + /* Get the first frontend */ fe0 = videobuf_dvb_get_frontend(&dev->frontends, 1); if (!fe0) |