|
@@ -150,6 +150,8 @@ static int tda18212_set_params(struct dvb_frontend *fe)
|
|
#define DVBT2_8 5
|
|
#define DVBT2_8 5
|
|
#define DVBC_6 6
|
|
#define DVBC_6 6
|
|
#define DVBC_8 7
|
|
#define DVBC_8 7
|
|
|
|
+ #define ATSC_VSB 8
|
|
|
|
+ #define ATSC_QAM 9
|
|
static const u8 bw_params[][3] = {
|
|
static const u8 bw_params[][3] = {
|
|
/* reg: 0f 13 23 */
|
|
/* reg: 0f 13 23 */
|
|
[DVBT_6] = { 0xb3, 0x20, 0x03 },
|
|
[DVBT_6] = { 0xb3, 0x20, 0x03 },
|
|
@@ -160,6 +162,8 @@ static int tda18212_set_params(struct dvb_frontend *fe)
|
|
[DVBT2_8] = { 0xbc, 0x22, 0x01 },
|
|
[DVBT2_8] = { 0xbc, 0x22, 0x01 },
|
|
[DVBC_6] = { 0x92, 0x50, 0x03 },
|
|
[DVBC_6] = { 0x92, 0x50, 0x03 },
|
|
[DVBC_8] = { 0x92, 0x53, 0x03 },
|
|
[DVBC_8] = { 0x92, 0x53, 0x03 },
|
|
|
|
+ [ATSC_VSB] = { 0x7d, 0x20, 0x63 },
|
|
|
|
+ [ATSC_QAM] = { 0x7d, 0x20, 0x63 },
|
|
};
|
|
};
|
|
|
|
|
|
dev_dbg(&priv->i2c->dev,
|
|
dev_dbg(&priv->i2c->dev,
|
|
@@ -171,6 +175,14 @@ static int tda18212_set_params(struct dvb_frontend *fe)
|
|
fe->ops.i2c_gate_ctrl(fe, 1); /* open I2C-gate */
|
|
fe->ops.i2c_gate_ctrl(fe, 1); /* open I2C-gate */
|
|
|
|
|
|
switch (c->delivery_system) {
|
|
switch (c->delivery_system) {
|
|
|
|
+ case SYS_ATSC:
|
|
|
|
+ if_khz = priv->cfg->if_atsc_vsb;
|
|
|
|
+ i = ATSC_VSB;
|
|
|
|
+ break;
|
|
|
|
+ case SYS_DVBC_ANNEX_B:
|
|
|
|
+ if_khz = priv->cfg->if_atsc_qam;
|
|
|
|
+ i = ATSC_QAM;
|
|
|
|
+ break;
|
|
case SYS_DVBT:
|
|
case SYS_DVBT:
|
|
switch (c->bandwidth_hz) {
|
|
switch (c->bandwidth_hz) {
|
|
case 6000000:
|
|
case 6000000:
|