static int tda826x_set_params(struct dvb_frontend *fe, struct dvb_frontend_parameters *params)
 {
+       struct dtv_frontend_properties *p = &fe->dtv_property_cache;
        struct tda826x_priv *priv = fe->tuner_priv;
        int ret;
        u32 div;
 
        dprintk("%s:\n", __func__);
 
-       div = (params->frequency + (1000-1)) / 1000;
+       div = (p->frequency + (1000-1)) / 1000;
 
        /* BW = ((1 + RO) * SR/2 + 5) * 1.3      [SR in MSPS, BW in MHz] */
        /* with R0 = 0.35 and some transformations: */
-       ksyms = params->u.qpsk.symbol_rate / 1000;
+       ksyms = p->symbol_rate / 1000;
        bandwidth = (878 * ksyms + 6500000) / 1000000 + 1;
        if (bandwidth < 5)
                bandwidth = 5;