V4L/DVB (10250): cx25840: fix regression: fw not loaded on first use
With the conversion to v4l2_subdev one bit of code was accidentally dropped: on receiving the first command the driver has to load the fw. A new init() command was introduced to do that explicitly for bridge drivers that are converted to use v4l2_subdev, but old drivers that are not yet converted no longer worked. This patch fixes this regression for these old drivers. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
cf8e193a48
commit
ba390f0055
|
@ -1382,6 +1382,14 @@ static int cx25840_log_status(struct v4l2_subdev *sd)
|
|||
|
||||
static int cx25840_command(struct i2c_client *client, unsigned cmd, void *arg)
|
||||
{
|
||||
/* ignore this command */
|
||||
if (cmd == TUNER_SET_TYPE_ADDR)
|
||||
return 0;
|
||||
|
||||
/* Old-style drivers rely on initialization on first use, so
|
||||
call the init whenever a command is issued to this driver.
|
||||
New-style drivers using v4l2_subdev should call init explicitly. */
|
||||
cx25840_init(i2c_get_clientdata(client), 0);
|
||||
return v4l2_subdev_command(i2c_get_clientdata(client), cmd, arg);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue