From 5b3dc8cde57ba49c3655028697bf679a9345af13 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sun, 16 Oct 2005 19:03:31 +0000 Subject: - after msp34xxg_reset, msp_wake_thread should be called to activate autodetection again. Signed-off-by: Mauro Carvalho Chehab --- linux/drivers/media/video/msp3400-driver.c | 15 ++++++--------- linux/drivers/media/video/msp3400.c | 15 ++++++--------- v4l/ChangeLog | 8 ++++++++ 3 files changed, 20 insertions(+), 18 deletions(-) diff --git a/linux/drivers/media/video/msp3400-driver.c b/linux/drivers/media/video/msp3400-driver.c index 1f9ba22eb..91b7204a1 100644 --- a/linux/drivers/media/video/msp3400-driver.c +++ b/linux/drivers/media/video/msp3400-driver.c @@ -1861,10 +1861,9 @@ static int msp_command(struct i2c_client *client, unsigned int cmd, void *arg) dprintk("msp34xx: AUDC_SET_RADIO\n"); msp->norm = VIDEO_MODE_RADIO; dprintk("msp34xx: switching to radio mode\n"); - if (IS_MSP34XX_G(msp)) { + if (IS_MSP34XX_G(msp)) msp34xxg_reset(client); - break; - } + msp->watch_stereo = 0; switch (msp->opmode) { case OPMODE_MANUAL: @@ -1981,10 +1980,9 @@ static int msp_command(struct i2c_client *client, unsigned int cmd, void *arg) dprintk("msp34xx: VIDIOCSCHAN (norm=%d)\n",vc->norm); msp->norm = vc->norm; - if (IS_MSP34XX_G(msp)) { + if (IS_MSP34XX_G(msp)) msp34xxg_reset(client); - break; - } + msp_wake_thread(client); break; } @@ -1994,10 +1992,9 @@ static int msp_command(struct i2c_client *client, unsigned int cmd, void *arg) { /* new channel -- kick audio carrier scan */ dprintk("msp34xx: VIDIOCSFREQ\n"); - if (IS_MSP34XX_G(msp)) { + if (IS_MSP34XX_G(msp)) msp34xxg_reset(client); - break; - } + msp_wake_thread(client); break; } diff --git a/linux/drivers/media/video/msp3400.c b/linux/drivers/media/video/msp3400.c index 1f9ba22eb..91b7204a1 100644 --- a/linux/drivers/media/video/msp3400.c +++ b/linux/drivers/media/video/msp3400.c @@ -1861,10 +1861,9 @@ static int msp_command(struct i2c_client *client, unsigned int cmd, void *arg) dprintk("msp34xx: AUDC_SET_RADIO\n"); msp->norm = VIDEO_MODE_RADIO; dprintk("msp34xx: switching to radio mode\n"); - if (IS_MSP34XX_G(msp)) { + if (IS_MSP34XX_G(msp)) msp34xxg_reset(client); - break; - } + msp->watch_stereo = 0; switch (msp->opmode) { case OPMODE_MANUAL: @@ -1981,10 +1980,9 @@ static int msp_command(struct i2c_client *client, unsigned int cmd, void *arg) dprintk("msp34xx: VIDIOCSCHAN (norm=%d)\n",vc->norm); msp->norm = vc->norm; - if (IS_MSP34XX_G(msp)) { + if (IS_MSP34XX_G(msp)) msp34xxg_reset(client); - break; - } + msp_wake_thread(client); break; } @@ -1994,10 +1992,9 @@ static int msp_command(struct i2c_client *client, unsigned int cmd, void *arg) { /* new channel -- kick audio carrier scan */ dprintk("msp34xx: VIDIOCSFREQ\n"); - if (IS_MSP34XX_G(msp)) { + if (IS_MSP34XX_G(msp)) msp34xxg_reset(client); - break; - } + msp_wake_thread(client); break; } diff --git a/v4l/ChangeLog b/v4l/ChangeLog index 15e05c8ce..e55836df9 100644 --- a/v4l/ChangeLog +++ b/v4l/ChangeLog @@ -1,3 +1,11 @@ +2005-10-16 19:01 mchehab + + * ../linux/drivers/media/video/msp3400.c: (msp_command): + - after msp34xxg_reset, msp_wake_thread should be called to + activate autodetection again. + + Signed-off-by: Mauro Carvalho Chehab + 2005-10-16 17:42 mrechberger * ../linux/drivers/usb/media/em2820-core.c: (em2820_init_isoc), -- cgit v1.2.3