aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/i2c/s5c73m3/s5c73m3-core.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/media/i2c/s5c73m3/s5c73m3-core.c b/drivers/media/i2c/s5c73m3/s5c73m3-core.c
index ce8fcf22253a..cb52438e53ac 100644
--- a/drivers/media/i2c/s5c73m3/s5c73m3-core.c
+++ b/drivers/media/i2c/s5c73m3/s5c73m3-core.c
@@ -1457,6 +1457,12 @@ static int s5c73m3_oif_registered(struct v4l2_subdev *sd)
1457 return ret; 1457 return ret;
1458} 1458}
1459 1459
1460static void s5c73m3_oif_unregistered(struct v4l2_subdev *sd)
1461{
1462 struct s5c73m3 *state = oif_sd_to_s5c73m3(sd);
1463 v4l2_device_unregister_subdev(&state->sensor_sd);
1464}
1465
1460static const struct v4l2_subdev_internal_ops s5c73m3_internal_ops = { 1466static const struct v4l2_subdev_internal_ops s5c73m3_internal_ops = {
1461 .open = s5c73m3_open, 1467 .open = s5c73m3_open,
1462}; 1468};
@@ -1474,6 +1480,7 @@ static const struct v4l2_subdev_ops s5c73m3_subdev_ops = {
1474 1480
1475static const struct v4l2_subdev_internal_ops oif_internal_ops = { 1481static const struct v4l2_subdev_internal_ops oif_internal_ops = {
1476 .registered = s5c73m3_oif_registered, 1482 .registered = s5c73m3_oif_registered,
1483 .unregistered = s5c73m3_oif_unregistered,
1477 .open = s5c73m3_oif_open, 1484 .open = s5c73m3_oif_open,
1478}; 1485};
1479 1486