Commit 2ab9c967 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'media/v5.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media

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
...@@ -446,7 +446,8 @@ static int si2157_set_params(struct dvb_frontend *fe) ...@@ -446,7 +446,8 @@ static int si2157_set_params(struct dvb_frontend *fe)
struct dtv_frontend_properties *c = &fe->dtv_property_cache; struct dtv_frontend_properties *c = &fe->dtv_property_cache;
int ret; int ret;
struct si2157_cmd cmd; struct si2157_cmd cmd;
u8 bandwidth, delivery_system; u8 bw, delivery_system;
u32 bandwidth;
u32 if_frequency = 5000000; u32 if_frequency = 5000000;
dev_dbg(&client->dev, dev_dbg(&client->dev,
...@@ -458,18 +459,22 @@ static int si2157_set_params(struct dvb_frontend *fe) ...@@ -458,18 +459,22 @@ static int si2157_set_params(struct dvb_frontend *fe)
goto err; goto err;
} }
if (SUPPORTS_1700KHz(dev) && c->bandwidth_hz <= 1700000) if (SUPPORTS_1700KHz(dev) && c->bandwidth_hz <= 1700000) {
bandwidth = 0x09; bandwidth = 1700000;
if (c->bandwidth_hz <= 6000000) bw = 9;
bandwidth = 0x06; } else if (c->bandwidth_hz <= 6000000) {
if (SUPPORTS_1700KHz(dev) && c->bandwidth_hz <= 6100000) bandwidth = 6000000;
bandwidth = 0x10; bw = 6;
else if (c->bandwidth_hz <= 7000000) } else if (SUPPORTS_1700KHz(dev) && c->bandwidth_hz <= 6100000) {
bandwidth = 0x07; bandwidth = 6100000;
else if (c->bandwidth_hz <= 8000000) bw = 10;
bandwidth = 0x08; } else if (c->bandwidth_hz <= 7000000) {
else bandwidth = 7000000;
bandwidth = 0x0f; bw = 7;
} else {
bandwidth = 8000000;
bw = 8;
}
switch (c->delivery_system) { switch (c->delivery_system) {
case SYS_ATSC: case SYS_ATSC:
...@@ -485,6 +490,7 @@ static int si2157_set_params(struct dvb_frontend *fe) ...@@ -485,6 +490,7 @@ static int si2157_set_params(struct dvb_frontend *fe)
delivery_system = 0x20; delivery_system = 0x20;
break; break;
case SYS_DVBC_ANNEX_A: case SYS_DVBC_ANNEX_A:
case SYS_DVBC_ANNEX_C:
delivery_system = 0x30; delivery_system = 0x30;
break; break;
case SYS_ISDBT: case SYS_ISDBT:
...@@ -499,7 +505,7 @@ static int si2157_set_params(struct dvb_frontend *fe) ...@@ -499,7 +505,7 @@ static int si2157_set_params(struct dvb_frontend *fe)
} }
memcpy(cmd.args, "\x14\x00\x03\x07\x00\x00", 6); 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) if (dev->inversion)
cmd.args[5] = 0x01; cmd.args[5] = 0x01;
cmd.wlen = 6; cmd.wlen = 6;
......
...@@ -29,8 +29,6 @@ ...@@ -29,8 +29,6 @@
#include "isp_acquisition_defs.h" #include "isp_acquisition_defs.h"
#include "input_system_ctrl_defs.h" #include "input_system_ctrl_defs.h"
typedef struct input_system_cfg2400_s input_system_cfg2400_t;
struct target_cfg2400_s { struct target_cfg2400_s {
input_switch_cfg_channel_t input_switch_channel_cfg; input_switch_cfg_channel_t input_switch_channel_cfg;
target_isp_cfg_t target_isp_cfg; target_isp_cfg_t target_isp_cfg;
......
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