|
@@ -528,7 +528,7 @@ int dvb_register_device(struct dvb_adapter *adap, struct dvb_device **pdvbdev,
|
|
EXPORT_SYMBOL(dvb_register_device);
|
|
EXPORT_SYMBOL(dvb_register_device);
|
|
|
|
|
|
|
|
|
|
-void dvb_unregister_device(struct dvb_device *dvbdev)
|
|
|
|
|
|
+void dvb_remove_device(struct dvb_device *dvbdev)
|
|
{
|
|
{
|
|
if (!dvbdev)
|
|
if (!dvbdev)
|
|
return;
|
|
return;
|
|
@@ -542,9 +542,26 @@ void dvb_unregister_device(struct dvb_device *dvbdev)
|
|
device_destroy(dvb_class, MKDEV(DVB_MAJOR, dvbdev->minor));
|
|
device_destroy(dvb_class, MKDEV(DVB_MAJOR, dvbdev->minor));
|
|
|
|
|
|
list_del (&dvbdev->list_head);
|
|
list_del (&dvbdev->list_head);
|
|
|
|
+}
|
|
|
|
+EXPORT_SYMBOL(dvb_remove_device);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+void dvb_free_device(struct dvb_device *dvbdev)
|
|
|
|
+{
|
|
|
|
+ if (!dvbdev)
|
|
|
|
+ return;
|
|
|
|
+
|
|
kfree (dvbdev->fops);
|
|
kfree (dvbdev->fops);
|
|
kfree (dvbdev);
|
|
kfree (dvbdev);
|
|
}
|
|
}
|
|
|
|
+EXPORT_SYMBOL(dvb_free_device);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+void dvb_unregister_device(struct dvb_device *dvbdev)
|
|
|
|
+{
|
|
|
|
+ dvb_remove_device(dvbdev);
|
|
|
|
+ dvb_free_device(dvbdev);
|
|
|
|
+}
|
|
EXPORT_SYMBOL(dvb_unregister_device);
|
|
EXPORT_SYMBOL(dvb_unregister_device);
|
|
|
|
|
|
|
|
|