Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 285242
b: refs/heads/master
c: fda23fa
h: refs/heads/master
v: v3
  • Loading branch information
Antti Palosaari authored and Mauro Carvalho Chehab committed Nov 24, 2011
1 parent 96e14a0 commit 94efc17
Show file tree
Hide file tree
Showing 7 changed files with 37 additions and 40 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 8cffcc78996c25a04423e294faa1bb5bba3e420e
refs/heads/master: fda23faaff3b28a987c22da5f3a17b9f3d4acef8
7 changes: 0 additions & 7 deletions trunk/drivers/media/dvb/dvb-usb/anysee.c
Original file line number Diff line number Diff line change
Expand Up @@ -366,13 +366,6 @@ static struct isl6423_config anysee_isl6423_config = {
static struct cxd2820r_config anysee_cxd2820r_config = {
.i2c_address = 0x6d, /* (0xda >> 1) */
.ts_mode = 0x38,
.if_dvbt_6 = 3550,
.if_dvbt_7 = 3700,
.if_dvbt_8 = 4150,
.if_dvbt2_6 = 3250,
.if_dvbt2_7 = 4000,
.if_dvbt2_8 = 4000,
.if_dvbc = 5000,
};

/*
Expand Down
13 changes: 0 additions & 13 deletions trunk/drivers/media/dvb/frontends/cxd2820r.h
Original file line number Diff line number Diff line change
Expand Up @@ -63,19 +63,6 @@ struct cxd2820r_config {
*/
bool spec_inv;

/* IFs for all used modes.
* Default: none, must set
* Values: <kHz>
*/
u16 if_dvbt_6;
u16 if_dvbt_7;
u16 if_dvbt_8;
u16 if_dvbt2_5;
u16 if_dvbt2_6;
u16 if_dvbt2_7;
u16 if_dvbt2_8;
u16 if_dvbc;

/* GPIOs for all used modes.
* Default: none, disabled
* Values: <see above>
Expand Down
13 changes: 12 additions & 1 deletion trunk/drivers/media/dvb/frontends/cxd2820r_c.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ int cxd2820r_set_frontend_c(struct dvb_frontend *fe,
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
int ret, i;
u8 buf[2];
u32 if_freq;
u16 if_ctl;
u64 num;
struct reg_val_mask tab[] = {
Expand Down Expand Up @@ -70,7 +71,17 @@ int cxd2820r_set_frontend_c(struct dvb_frontend *fe,
priv->delivery_system = SYS_DVBC_ANNEX_AC;
priv->ber_running = 0; /* tune stops BER counter */

num = priv->cfg.if_dvbc;
/* program IF frequency */
if (fe->ops.tuner_ops.get_if_frequency) {
ret = fe->ops.tuner_ops.get_if_frequency(fe, &if_freq);
if (ret)
goto error;
} else
if_freq = 0;

dbg("%s: if_freq=%d", __func__, if_freq);

num = if_freq / 1000; /* Hz => kHz */
num *= 0x4000;
if_ctl = cxd2820r_div_u64_round_closest(num, 41000);
buf[0] = (if_ctl >> 8) & 0x3f;
Expand Down
17 changes: 12 additions & 5 deletions trunk/drivers/media/dvb/frontends/cxd2820r_t.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ int cxd2820r_set_frontend_t(struct dvb_frontend *fe,
struct cxd2820r_priv *priv = fe->demodulator_priv;
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
int ret, i;
u32 if_khz, if_ctl;
u32 if_freq, if_ctl;
u64 num;
u8 buf[3], bw_param;
u8 bw_params1[][5] = {
Expand Down Expand Up @@ -80,25 +80,32 @@ int cxd2820r_set_frontend_t(struct dvb_frontend *fe,

switch (c->bandwidth_hz) {
case 6000000:
if_khz = priv->cfg.if_dvbt_6;
i = 0;
bw_param = 2;
break;
case 7000000:
if_khz = priv->cfg.if_dvbt_7;
i = 1;
bw_param = 1;
break;
case 8000000:
if_khz = priv->cfg.if_dvbt_8;
i = 2;
bw_param = 0;
break;
default:
return -EINVAL;
}

num = if_khz;
/* program IF frequency */
if (fe->ops.tuner_ops.get_if_frequency) {
ret = fe->ops.tuner_ops.get_if_frequency(fe, &if_freq);
if (ret)
goto error;
} else
if_freq = 0;

dbg("%s: if_freq=%d", __func__, if_freq);

num = if_freq / 1000; /* Hz => kHz */
num *= 0x1000000;
if_ctl = cxd2820r_div_u64_round_closest(num, 41000);
buf[0] = ((if_ctl >> 16) & 0xff);
Expand Down
18 changes: 12 additions & 6 deletions trunk/drivers/media/dvb/frontends/cxd2820r_t2.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ int cxd2820r_set_frontend_t2(struct dvb_frontend *fe,
struct cxd2820r_priv *priv = fe->demodulator_priv;
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
int ret, i;
u32 if_khz, if_ctl;
u32 if_freq, if_ctl;
u64 num;
u8 buf[3], bw_param;
u8 bw_params1[][5] = {
Expand Down Expand Up @@ -93,30 +93,36 @@ int cxd2820r_set_frontend_t2(struct dvb_frontend *fe,

switch (c->bandwidth_hz) {
case 5000000:
if_khz = priv->cfg.if_dvbt2_5;
i = 0;
bw_param = 3;
break;
case 6000000:
if_khz = priv->cfg.if_dvbt2_6;
i = 1;
bw_param = 2;
break;
case 7000000:
if_khz = priv->cfg.if_dvbt2_7;
i = 2;
bw_param = 1;
break;
case 8000000:
if_khz = priv->cfg.if_dvbt2_8;
i = 3;
bw_param = 0;
break;
default:
return -EINVAL;
}

num = if_khz;
/* program IF frequency */
if (fe->ops.tuner_ops.get_if_frequency) {
ret = fe->ops.tuner_ops.get_if_frequency(fe, &if_freq);
if (ret)
goto error;
} else
if_freq = 0;

dbg("%s: if_freq=%d", __func__, if_freq);

num = if_freq / 1000; /* Hz => kHz */
num *= 0x1000000;
if_ctl = cxd2820r_div_u64_round_closest(num, 41000);
buf[0] = ((if_ctl >> 16) & 0xff);
Expand Down
7 changes: 0 additions & 7 deletions trunk/drivers/media/video/em28xx/em28xx-dvb.c
Original file line number Diff line number Diff line change
Expand Up @@ -500,13 +500,6 @@ static struct tda10023_config em28xx_tda10023_config = {
static struct cxd2820r_config em28xx_cxd2820r_config = {
.i2c_address = (0xd8 >> 1),
.ts_mode = CXD2820R_TS_SERIAL,
.if_dvbt_6 = 3300,
.if_dvbt_7 = 3500,
.if_dvbt_8 = 4000,
.if_dvbt2_6 = 3300,
.if_dvbt2_7 = 3500,
.if_dvbt2_8 = 4000,
.if_dvbc = 5000,

/* enable LNA for DVB-T2 and DVB-C */
.gpio_dvbt2[0] = CXD2820R_GPIO_E | CXD2820R_GPIO_O | CXD2820R_GPIO_L,
Expand Down

0 comments on commit 94efc17

Please sign in to comment.