|
@@ -585,6 +585,9 @@ static void unregister_dvb(struct cx231xx_dvb *dvb)
|
|
|
dvb->demux.dmx.remove_frontend(&dvb->demux.dmx, &dvb->fe_hw);
|
|
|
dvb_dmxdev_release(&dvb->dmxdev);
|
|
|
dvb_dmx_release(&dvb->demux);
|
|
|
+ dvb_unregister_frontend(dvb->frontend);
|
|
|
+ dvb_frontend_detach(dvb->frontend);
|
|
|
+ dvb_unregister_adapter(&dvb->adapter);
|
|
|
/* remove I2C tuner */
|
|
|
client = dvb->i2c_client_tuner;
|
|
|
if (client) {
|
|
@@ -597,9 +600,6 @@ static void unregister_dvb(struct cx231xx_dvb *dvb)
|
|
|
module_put(client->dev.driver->owner);
|
|
|
i2c_unregister_device(client);
|
|
|
}
|
|
|
- dvb_unregister_frontend(dvb->frontend);
|
|
|
- dvb_frontend_detach(dvb->frontend);
|
|
|
- dvb_unregister_adapter(&dvb->adapter);
|
|
|
}
|
|
|
|
|
|
static int dvb_init(struct cx231xx *dev)
|