[media] dvb: Initialize all cache values
authorMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 1 Jan 2012 19:11:10 +0000 (16:11 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 4 Jan 2012 19:28:45 +0000 (17:28 -0200)
By default, initialize the frontend current delivery system with
the first one. This warrants that a DVBv3 application will be able
to tune to it, after the removal of ops->init.type filling at
the drivers.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/dvb-core/dvb_frontend.c

index d030cd3de64345f5d0c56bf2d472301672062f03..b72b87ecc3e377d0cb9cc25188662744780cef41 100644 (file)
@@ -873,17 +873,22 @@ static int dvb_frontend_clear_cache(struct dvb_frontend *fe)
        memset(c, 0, sizeof(struct dtv_frontend_properties));
 
        c->state = DTV_CLEAR;
-       c->delivery_system = SYS_UNDEFINED;
-       c->inversion = INVERSION_AUTO;
-       c->fec_inner = FEC_AUTO;
+
+       c->delivery_system = fe->ops.delsys[0];
+
        c->transmission_mode = TRANSMISSION_MODE_AUTO;
-       c->bandwidth_hz = BANDWIDTH_AUTO;
+       c->bandwidth_hz = 0;    /* AUTO */
        c->guard_interval = GUARD_INTERVAL_AUTO;
        c->hierarchy = HIERARCHY_AUTO;
-       c->symbol_rate = QAM_AUTO;
+       c->symbol_rate = 0;
        c->code_rate_HP = FEC_AUTO;
        c->code_rate_LP = FEC_AUTO;
+       c->fec_inner = FEC_AUTO;
        c->rolloff = ROLLOFF_AUTO;
+       c->voltage = SEC_VOLTAGE_OFF;
+       c->modulation = QAM_AUTO;
+       c->sectone = SEC_TONE_OFF;
+       c->pilot = PILOT_AUTO;
 
        c->isdbt_partial_reception = -1;
        c->isdbt_sb_mode = -1;
@@ -898,6 +903,9 @@ static int dvb_frontend_clear_cache(struct dvb_frontend *fe)
                c->layer[i].segment_count = -1;
        }
 
+       c->isdbs_ts_id = 0;
+       c->dvbt2_plp_id = 0;
+
        return 0;
 }