Commit 6ca187ab authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

V4L/DVB (10251): cx25840: add comments explaining what the init() does.

Signed-off-by: default avatarHans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent c7d29e2f
...@@ -1101,6 +1101,16 @@ static void log_audio_status(struct i2c_client *client) ...@@ -1101,6 +1101,16 @@ static void log_audio_status(struct i2c_client *client)
/* ----------------------------------------------------------------------- */ /* ----------------------------------------------------------------------- */
/* This init operation must be called to load the driver's firmware.
Without this the audio standard detection will fail and you will
only get mono.
Since loading the firmware is often problematic when the driver is
compiled into the kernel I recommend postponing calling this function
until the first open of the video device. Another reason for
postponing it is that loading this firmware takes a long time (seconds)
due to the slow i2c bus speed. So it will speed up the boot process if
you can avoid loading the fw as long as the video device isn't used. */
static int cx25840_init(struct v4l2_subdev *sd, u32 val) static int cx25840_init(struct v4l2_subdev *sd, u32 val)
{ {
struct cx25840_state *state = to_state(sd); struct cx25840_state *state = to_state(sd);
......
...@@ -21,6 +21,18 @@ ...@@ -21,6 +21,18 @@
#ifndef _CX25840_H_ #ifndef _CX25840_H_
#define _CX25840_H_ #define _CX25840_H_
/* Note that the cx25840 driver requires that the bridge driver calls the
v4l2_subdev's init operation in order to load the driver's firmware.
Without this the audio standard detection will fail and you will
only get mono.
Since loading the firmware is often problematic when the driver is
compiled into the kernel I recommend postponing calling this function
until the first open of the video device. Another reason for
postponing it is that loading this firmware takes a long time (seconds)
due to the slow i2c bus speed. So it will speed up the boot process if
you can avoid loading the fw as long as the video device isn't used. */
enum cx25840_video_input { enum cx25840_video_input {
/* Composite video inputs In1-In8 */ /* Composite video inputs In1-In8 */
CX25840_COMPOSITE1 = 1, CX25840_COMPOSITE1 = 1,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment