Skip to content

Commit

Permalink
V4L/DVB (9224): MFE: bugfix: add missing frontend allocation
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Darron Broad authored and Mauro Carvalho Chehab committed Oct 17, 2008
1 parent 92abe9e commit f972e0b
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 0 deletions.
13 changes: 13 additions & 0 deletions drivers/media/video/cx23885/cx23885-dvb.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
12 changes: 12 additions & 0 deletions drivers/media/video/saa7134/saa7134-dvb.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down

0 comments on commit f972e0b

Please sign in to comment.