diff options
author | Steven Toth <stoth@linuxtv.org> | 2008-10-11 11:25:25 -0400 |
---|---|---|
committer | Steven Toth <stoth@linuxtv.org> | 2008-10-11 11:25:25 -0400 |
commit | c7951305101e9009d4bc82aa07be66d093904edf (patch) | |
tree | bfe5b3a721d4629f444b320950159e4fbdc98fef /linux/drivers/media | |
parent | 42a8a26016ce0bf6da80cb446f0e3889064bfaa0 (diff) | |
download | mediapointer-dvb-s2-c7951305101e9009d4bc82aa07be66d093904edf.tar.gz mediapointer-dvb-s2-c7951305101e9009d4bc82aa07be66d093904edf.tar.bz2 |
cx23885: MFE related OOPS fix
From: Steven Toth <stoth@linuxtv.org>
Bug: the tree generated an oops when the cx23885 was laoded. This avoids
the oops by ensuring the mutex is correctly initialised before it's used.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Diffstat (limited to 'linux/drivers/media')
-rw-r--r-- | linux/drivers/media/video/cx23885/cx23885-core.c | 4 | ||||
-rw-r--r-- | linux/drivers/media/video/cx23885/cx23885-dvb.c | 5 |
2 files changed, 4 insertions, 5 deletions
diff --git a/linux/drivers/media/video/cx23885/cx23885-core.c b/linux/drivers/media/video/cx23885/cx23885-core.c index c050cd2ce..74df1f92a 100644 --- a/linux/drivers/media/video/cx23885/cx23885-core.c +++ b/linux/drivers/media/video/cx23885/cx23885-core.c @@ -644,6 +644,10 @@ static int cx23885_init_tsport(struct cx23885_dev *dev, struct cx23885_tsport *p port->mpegq.timeout.data = (unsigned long)port; init_timer(&port->mpegq.timeout); + mutex_init(&port->frontends.lock); + INIT_LIST_HEAD(&port->frontends.frontend.felist); + port->frontends.active_fe_id = 0; + switch(portno) { case 1: port->reg_gpcnt = VID_B_GPCNT; diff --git a/linux/drivers/media/video/cx23885/cx23885-dvb.c b/linux/drivers/media/video/cx23885/cx23885-dvb.c index 5f32c1550..dac1a1c9a 100644 --- a/linux/drivers/media/video/cx23885/cx23885-dvb.c +++ b/linux/drivers/media/video/cx23885/cx23885-dvb.c @@ -315,11 +315,6 @@ 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) { |