|
@@ -269,8 +269,10 @@ void v4l2_device_unregister_subdev(struct v4l2_subdev *sd)
|
|
sd->v4l2_dev = NULL;
|
|
sd->v4l2_dev = NULL;
|
|
|
|
|
|
#if defined(CONFIG_MEDIA_CONTROLLER)
|
|
#if defined(CONFIG_MEDIA_CONTROLLER)
|
|
- if (v4l2_dev->mdev)
|
|
|
|
|
|
+ if (v4l2_dev->mdev) {
|
|
|
|
+ media_entity_remove_links(&sd->entity);
|
|
media_device_unregister_entity(&sd->entity);
|
|
media_device_unregister_entity(&sd->entity);
|
|
|
|
+ }
|
|
#endif
|
|
#endif
|
|
video_unregister_device(sd->devnode);
|
|
video_unregister_device(sd->devnode);
|
|
module_put(sd->owner);
|
|
module_put(sd->owner);
|