[media] adv7604: select YPbPr if RGB_RANGE_FULL/LIMITED is set for VGA_COMP inputs
Signed-off-by: Mats Randgaard <matrandg@cisco.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
Родитель
9833239e13
Коммит
d261e8428b
|
@ -949,17 +949,26 @@ static void set_rgb_quantization_range(struct v4l2_subdev *sd)
|
|||
}
|
||||
break;
|
||||
case V4L2_DV_RGB_RANGE_LIMITED:
|
||||
/* RGB limited range (16-235) */
|
||||
io_write_and_or(sd, 0x02, 0x0f, 0x00);
|
||||
if (state->selected_input == ADV7604_INPUT_VGA_COMP) {
|
||||
/* YCrCb limited range (16-235) */
|
||||
io_write_and_or(sd, 0x02, 0x0f, 0x20);
|
||||
} else {
|
||||
/* RGB limited range (16-235) */
|
||||
io_write_and_or(sd, 0x02, 0x0f, 0x00);
|
||||
}
|
||||
break;
|
||||
case V4L2_DV_RGB_RANGE_FULL:
|
||||
/* RGB full range (0-255) */
|
||||
io_write_and_or(sd, 0x02, 0x0f, 0x10);
|
||||
if (state->selected_input == ADV7604_INPUT_VGA_COMP) {
|
||||
/* YCrCb full range (0-255) */
|
||||
io_write_and_or(sd, 0x02, 0x0f, 0x60);
|
||||
} else {
|
||||
/* RGB full range (0-255) */
|
||||
io_write_and_or(sd, 0x02, 0x0f, 0x10);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static int adv7604_s_ctrl(struct v4l2_ctrl *ctrl)
|
||||
{
|
||||
struct v4l2_subdev *sd = to_sd(ctrl);
|
||||
|
|
Загрузка…
Ссылка в новой задаче