[media] r820t: remove redundant initializations in r820t_attach()
authorGianluca Gennari <gennarone@gmail.com>
Sun, 2 Jun 2013 17:30:09 +0000 (14:30 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 19 Jun 2013 14:07:18 +0000 (11:07 -0300)
fe->tuner_priv and fe->ops.tuner_ops are initialized twice in r820t_attach().
Remove the redundant initializations and also move fe->ops.tuner_ops
initialization outside of the mutex lock (as in the xc4000 tuner code for example).

Signed-off-by: Gianluca Gennari <gennarone@gmail.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/tuners/r820t.c

index 64f97389d5b037bf41151ee0ecd4837f96cb9041..63062a9b4003071e0cf9fe5df7d7b8fedd5e0117 100644 (file)
@@ -2310,8 +2310,6 @@ struct dvb_frontend *r820t_attach(struct dvb_frontend *fe,
                break;
        }
 
-       memcpy(&fe->ops.tuner_ops, &r820t_tuner_ops, sizeof(r820t_tuner_ops));
-
        if (fe->ops.i2c_gate_ctrl)
                fe->ops.i2c_gate_ctrl(fe, 1);
 
@@ -2326,15 +2324,14 @@ struct dvb_frontend *r820t_attach(struct dvb_frontend *fe,
 
        tuner_info("Rafael Micro r820t successfully identified\n");
 
-       fe->tuner_priv = priv;
-       memcpy(&fe->ops.tuner_ops, &r820t_tuner_ops,
-                       sizeof(struct dvb_tuner_ops));
-
        if (fe->ops.i2c_gate_ctrl)
                fe->ops.i2c_gate_ctrl(fe, 0);
 
        mutex_unlock(&r820t_list_mutex);
 
+       memcpy(&fe->ops.tuner_ops, &r820t_tuner_ops,
+                       sizeof(struct dvb_tuner_ops));
+
        return fe;
 err:
        if (fe->ops.i2c_gate_ctrl)