[media] tw9603/6.c: use two separate const tables for the 50/60hz setup

Using two separate tables to setup the registers for 50 or 60 hz is
better than the non-const table that is filled in at runtime.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Hans Verkuil 2013-03-25 06:23:23 -03:00 committed by Mauro Carvalho Chehab
parent 59aea928d5
commit d4a2cea4f2
2 changed files with 26 additions and 12 deletions

View File

@ -127,15 +127,22 @@ static int tw9903_s_std(struct v4l2_subdev *sd, v4l2_std_id norm)
{
struct tw9903 *dec = to_state(sd);
bool is_60hz = norm & V4L2_STD_525_60;
u8 regs[] = {
0x05, is_60hz ? 0x80 : 0x00,
0x07, is_60hz ? 0x02 : 0x12,
0x08, is_60hz ? 0x14 : 0x18,
0x09, is_60hz ? 0xf0 : 0x20,
static const u8 config_60hz[] = {
0x05, 0x80,
0x07, 0x02,
0x08, 0x14,
0x09, 0xf0,
0, 0,
};
static const u8 config_50hz[] = {
0x05, 0x00,
0x07, 0x12,
0x08, 0x18,
0x09, 0x20,
0, 0,
};
write_regs(sd, regs);
write_regs(sd, is_60hz ? config_60hz : config_50hz);
dec->norm = norm;
return 0;
}

View File

@ -98,15 +98,22 @@ static int tw9906_s_std(struct v4l2_subdev *sd, v4l2_std_id norm)
{
struct tw9906 *dec = to_state(sd);
bool is_60hz = norm & V4L2_STD_525_60;
u8 regs[] = {
0x05, is_60hz ? 0x81 : 0x01,
0x07, is_60hz ? 0x02 : 0x12,
0x08, is_60hz ? 0x14 : 0x18,
0x09, is_60hz ? 0xf0 : 0x20,
static const u8 config_60hz[] = {
0x05, 0x81,
0x07, 0x02,
0x08, 0x14,
0x09, 0xf0,
0, 0,
};
static const u8 config_50hz[] = {
0x05, 0x01,
0x07, 0x12,
0x08, 0x18,
0x09, 0x20,
0, 0,
};
write_regs(sd, regs);
write_regs(sd, is_60hz ? config_60hz : config_50hz);
dec->norm = norm;
return 0;
}