Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d4a2cea4 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

[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: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 59aea928
Loading
Loading
Loading
Loading
+13 −6
Original line number Diff line number Diff line
@@ -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;
}
+13 −6
Original line number Diff line number Diff line
@@ -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;
}