V4L: fix cx25840 firmware loading
PATCH 6/7 V4L: fix cx25840 firmware loading
From: Hans Verkuil <[email protected]>
Date: Thu, 15 Feb 2007 03:40:34 -0300
Subject: [PATCH] V4L: fix cx25840 firmware loading
Due to changes in the i2c handling in 2.6.20 this cx25840 bug surfaced, causing the firmware load to fail for the ivtv driver. The correct sequence is to first attach the i2c client, then use the client's device to load the firmware.
Signed-off-by Hans Verkuil <[email protected]>
Acked-by Mike Isely <[email protected]>
Signed-off-by Mauro Carvalho Chehab <[email protected]>
Signed-off-by Michael Krufky <[email protected]>
(cherry picked from commit d55c7aec666658495e5b57a6b194c8c2a1ac255f)
--- drivers/media/video/cx25840/cx25840-core.c | 4 ++-- drivers/media/video/cx25840/cx25840-firmware.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-)
drivers/media/video/cx25840/cx25840-core.c +2 -2
@@ -907,13 +907,13 @@ static int cx25840_detect_client(struct i2c_adapter *adapter, int address, state->vbi_line_offset =8 ; state->id = id; +i2c_attach_client (client); +if (state->is_cx25836)cx25836_initialize (client);else cx25840_initialize (client,1 ); -i2c_attach_client (client); -return 0 ; }
drivers/media/video/cx25840/cx25840-firmware.c +1 -1
@@ -37,7 +37,7 @@*/ #define FWSEND 48 -#define FWDEV (x) &((x)->adapter->dev) +#define FWDEV (x) &((x)->dev)static char *firmware =FWFILE ;