diff options
Diffstat (limited to 'drivers/media/i2c/smiapp/smiapp-core.c')
-rw-r--r-- | drivers/media/i2c/smiapp/smiapp-core.c | 30 |
1 files changed, 5 insertions, 25 deletions
diff --git a/drivers/media/i2c/smiapp/smiapp-core.c b/drivers/media/i2c/smiapp/smiapp-core.c index 9873b3d764db..8a58c641bc47 100644 --- a/drivers/media/i2c/smiapp/smiapp-core.c +++ b/drivers/media/i2c/smiapp/smiapp-core.c @@ -2530,8 +2530,9 @@ static int smiapp_register_subdev(struct smiapp_sensor *sensor, return 0; } -static int smiapp_register_subdevs(struct smiapp_sensor *sensor) +static int smiapp_registered(struct v4l2_subdev *subdev) { + struct smiapp_sensor *sensor = to_smiapp_sensor(subdev); int rval; if (sensor->scaler) { @@ -2819,25 +2820,6 @@ out_power_off: return rval; } -static int smiapp_registered(struct v4l2_subdev *subdev) -{ - struct smiapp_sensor *sensor = to_smiapp_sensor(subdev); - struct i2c_client *client = v4l2_get_subdevdata(subdev); - int rval; - - if (!client->dev.of_node) { - rval = smiapp_init(sensor); - if (rval) - return rval; - } - - rval = smiapp_register_subdevs(sensor); - if (rval) - smiapp_cleanup(sensor); - - return rval; -} - static int smiapp_open(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh) { struct smiapp_subdev *ssd = to_smiapp_subdev(sd); @@ -3079,11 +3061,9 @@ static int smiapp_probe(struct i2c_client *client, sensor->src->sensor = sensor; sensor->src->pads[0].flags = MEDIA_PAD_FL_SOURCE; - if (client->dev.of_node) { - rval = smiapp_init(sensor); - if (rval) - goto out_media_entity_cleanup; - } + rval = smiapp_init(sensor); + if (rval) + goto out_media_entity_cleanup; rval = media_entity_pads_init(&sensor->src->sd.entity, 2, sensor->src->pads); |