Commit 2ab9c967 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull media fixes from Mauro Carvalho Chehab:

 - some fixes at si2157 tuning logic

 - a warning fix on atomisp when used with clang

* tag 'media/v5.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
  media: si2157: add support for DVB-C Annex C
  media: si2157: fix bandwidth stored in dev
  media: si2157: fix 6MHz & 6.1MHz bandwidth setting
  media: atomisp: Do not define input_system_cfg2400_t twice
parents 49008f0c 8d4ff818
Loading
Loading
Loading
Loading
+20 −14
Original line number Diff line number Diff line
@@ -446,7 +446,8 @@ static int si2157_set_params(struct dvb_frontend *fe)
	struct dtv_frontend_properties *c = &fe->dtv_property_cache;
	int ret;
	struct si2157_cmd cmd;
	u8 bandwidth, delivery_system;
	u8 bw, delivery_system;
	u32 bandwidth;
	u32 if_frequency = 5000000;

	dev_dbg(&client->dev,
@@ -458,18 +459,22 @@ static int si2157_set_params(struct dvb_frontend *fe)
		goto err;
	}

	if (SUPPORTS_1700KHz(dev) && c->bandwidth_hz <= 1700000)
		bandwidth = 0x09;
	if (c->bandwidth_hz <= 6000000)
		bandwidth = 0x06;
	if (SUPPORTS_1700KHz(dev) && c->bandwidth_hz <= 6100000)
		bandwidth = 0x10;
	else if (c->bandwidth_hz <= 7000000)
		bandwidth = 0x07;
	else if (c->bandwidth_hz <= 8000000)
		bandwidth = 0x08;
	else
		bandwidth = 0x0f;
	if (SUPPORTS_1700KHz(dev) && c->bandwidth_hz <= 1700000) {
		bandwidth = 1700000;
		bw = 9;
	} else if (c->bandwidth_hz <= 6000000) {
		bandwidth = 6000000;
		bw = 6;
	} else if (SUPPORTS_1700KHz(dev) && c->bandwidth_hz <= 6100000) {
		bandwidth = 6100000;
		bw = 10;
	} else if (c->bandwidth_hz <= 7000000) {
		bandwidth = 7000000;
		bw = 7;
	} else {
		bandwidth = 8000000;
		bw = 8;
	}

	switch (c->delivery_system) {
	case SYS_ATSC:
@@ -485,6 +490,7 @@ static int si2157_set_params(struct dvb_frontend *fe)
			delivery_system = 0x20;
			break;
	case SYS_DVBC_ANNEX_A:
	case SYS_DVBC_ANNEX_C:
			delivery_system = 0x30;
			break;
	case SYS_ISDBT:
@@ -499,7 +505,7 @@ static int si2157_set_params(struct dvb_frontend *fe)
	}

	memcpy(cmd.args, "\x14\x00\x03\x07\x00\x00", 6);
	cmd.args[4] = delivery_system | bandwidth;
	cmd.args[4] = delivery_system | bw;
	if (dev->inversion)
		cmd.args[5] = 0x01;
	cmd.wlen = 6;
+0 −2
Original line number Diff line number Diff line
@@ -29,8 +29,6 @@
#include "isp_acquisition_defs.h"
#include "input_system_ctrl_defs.h"

typedef struct input_system_cfg2400_s		input_system_cfg2400_t;

struct target_cfg2400_s {
	input_switch_cfg_channel_t		input_switch_channel_cfg;
	target_isp_cfg_t	target_isp_cfg;