summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2007-08-04 10:00:07 +0200
committerHans Verkuil <hverkuil@xs4all.nl>2007-08-04 10:00:07 +0200
commitfa8db046b18cc7b04150493f8dafab37a47b2d40 (patch)
tree8ec6cc235bd074545f40dd73db60c4e3167dd668 /linux/drivers/media/video
parentcac01e9a0e9486d3ef54daba5176f692f84bf1c8 (diff)
downloadmediapointer-dvb-s2-fa8db046b18cc7b04150493f8dafab37a47b2d40.tar.gz
mediapointer-dvb-s2-fa8db046b18cc7b04150493f8dafab37a47b2d40.tar.bz2
cx25840: resetting also requires reloading the firmware
From: Hans Verkuil <hverkuil@xs4all.nl> Resetting without reloading the firmware is not enough. Sometimes the firmware is 'stuck' and needs to be reloaded. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Diffstat (limited to 'linux/drivers/media/video')
-rw-r--r--linux/drivers/media/video/cx25840/cx25840-core.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/linux/drivers/media/video/cx25840/cx25840-core.c b/linux/drivers/media/video/cx25840/cx25840-core.c
index 77aca112c..3392dacbd 100644
--- a/linux/drivers/media/video/cx25840/cx25840-core.c
+++ b/linux/drivers/media/video/cx25840/cx25840-core.c
@@ -190,7 +190,7 @@ static void cx25836_initialize(struct i2c_client *client)
cx25840_and_or(client, 0x15b, ~0x1e, 0x10);
}
-static void cx25840_initialize(struct i2c_client *client, int loadfw)
+static void cx25840_initialize(struct i2c_client *client)
{
struct cx25840_state *state = i2c_get_clientdata(client);
@@ -208,8 +208,7 @@ static void cx25840_initialize(struct i2c_client *client, int loadfw)
cx25840_write(client, 0x13c, 0x01);
cx25840_write(client, 0x13c, 0x00);
/* 5. */
- if (loadfw)
- cx25840_loadfw(client);
+ cx25840_loadfw(client);
/* 6. */
cx25840_write(client, 0x115, 0x8c);
cx25840_write(client, 0x116, 0x07);
@@ -649,7 +648,7 @@ static int cx25840_command(struct i2c_client *client, unsigned int cmd,
if (state->is_cx25836)
cx25836_initialize(client);
else
- cx25840_initialize(client, 1);
+ cx25840_initialize(client);
}
switch (cmd) {
@@ -852,7 +851,7 @@ static int cx25840_command(struct i2c_client *client, unsigned int cmd,
if (state->is_cx25836)
cx25836_initialize(client);
else
- cx25840_initialize(client, 0);
+ cx25840_initialize(client);
break;
case VIDIOC_G_CHIP_IDENT: