diff options
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/dvb-core/dvb_frontend.c | 1 | ||||
-rw-r--r-- | drivers/media/dvb-core/dvb_frontend.h | 7 |
2 files changed, 7 insertions, 1 deletions
diff --git a/drivers/media/dvb-core/dvb_frontend.c b/drivers/media/dvb-core/dvb_frontend.c index 2465b0d7f43c..667c5e7aaa3e 100644 --- a/drivers/media/dvb-core/dvb_frontend.c +++ b/drivers/media/dvb-core/dvb_frontend.c @@ -2756,6 +2756,7 @@ void dvb_frontend_detach(struct dvb_frontend* fe) dvb_frontend_invoke_release(fe, fe->ops.release_sec); dvb_frontend_invoke_release(fe, fe->ops.tuner_ops.release); dvb_frontend_invoke_release(fe, fe->ops.analog_ops.release); + dvb_frontend_invoke_release(fe, fe->ops.detach); dvb_frontend_invoke_release(fe, fe->ops.release); } EXPORT_SYMBOL(dvb_frontend_detach); diff --git a/drivers/media/dvb-core/dvb_frontend.h b/drivers/media/dvb-core/dvb_frontend.h index 5bfb16bf188f..d5355718f365 100644 --- a/drivers/media/dvb-core/dvb_frontend.h +++ b/drivers/media/dvb-core/dvb_frontend.h @@ -330,7 +330,11 @@ struct dtv_frontend_properties; * * @info: embedded struct dvb_tuner_info with tuner properties * @delsys: Delivery systems supported by the frontend - * @release: callback function called when frontend is dettached. + * @detach: callback function called when frontend is detached. + * drivers should clean up, but not yet free the struct + * dvb_frontend allocation. + * @release: callback function called when frontend is ready to be + * freed. * drivers should free any allocated memory. * @release_sec: callback function requesting that the Satelite Equipment * Control (SEC) driver to release and free any memory @@ -415,6 +419,7 @@ struct dvb_frontend_ops { u8 delsys[MAX_DELSYS]; + void (*detach)(struct dvb_frontend *fe); void (*release)(struct dvb_frontend* fe); void (*release_sec)(struct dvb_frontend* fe); |