It is more than nice to have all those frontend pointers when
attaching tuner to the frontend in question. Make that possible
attaching tuners after dvb_register_frontend()
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
                goto err;
        }
 
-       if (adap->dev->props->tuner_attach) {
-               ret = adap->dev->props->tuner_attach(adap);
-               if (ret < 0) {
-                       pr_debug("%s: tuner_attach() failed=%d\n", __func__,
-                                       ret);
-                       goto err_dvb_frontend_detach;
-               }
-       }
-
        for (i = 0; i < MAX_NO_OF_FE_PER_ADAP && adap->fe[i]; i++) {
                adap->fe[i]->id = i;
 
                count_registered++;
        }
 
+       if (adap->dev->props->tuner_attach) {
+               ret = adap->dev->props->tuner_attach(adap);
+               if (ret < 0) {
+                       pr_debug("%s: tuner_attach() failed=%d\n", __func__,
+                                       ret);
+                       goto err_dvb_unregister_frontend;
+               }
+       }
+
        adap->num_frontends_initialized = count_registered;
 
        return 0;