Lines Matching defs:dw9714_dev
63 static int dw9714_t_focus_vcm(struct dw9714_device *dw9714_dev, u16 val)
65 struct i2c_client *client = v4l2_get_subdevdata(&dw9714_dev->sd);
67 dw9714_dev->current_val = val;
113 static void dw9714_subdev_cleanup(struct dw9714_device *dw9714_dev)
115 v4l2_async_unregister_subdev(&dw9714_dev->sd);
116 v4l2_ctrl_handler_free(&dw9714_dev->ctrls_vcm);
117 media_entity_cleanup(&dw9714_dev->sd.entity);
139 struct dw9714_device *dw9714_dev;
142 dw9714_dev = devm_kzalloc(&client->dev, sizeof(*dw9714_dev),
144 if (dw9714_dev == NULL)
147 v4l2_i2c_subdev_init(&dw9714_dev->sd, client, &dw9714_ops);
148 dw9714_dev->sd.flags |= V4L2_SUBDEV_FL_HAS_DEVNODE;
149 dw9714_dev->sd.internal_ops = &dw9714_int_ops;
151 rval = dw9714_init_controls(dw9714_dev);
155 rval = media_entity_pads_init(&dw9714_dev->sd.entity, 0, NULL);
159 dw9714_dev->sd.entity.function = MEDIA_ENT_F_LENS;
161 rval = v4l2_async_register_subdev(&dw9714_dev->sd);
172 v4l2_ctrl_handler_free(&dw9714_dev->ctrls_vcm);
173 media_entity_cleanup(&dw9714_dev->sd.entity);
181 struct dw9714_device *dw9714_dev = sd_to_dw9714_vcm(sd);
184 dw9714_subdev_cleanup(dw9714_dev);
198 struct dw9714_device *dw9714_dev = sd_to_dw9714_vcm(sd);
201 for (val = dw9714_dev->current_val & ~(DW9714_CTRL_STEPS - 1);
222 struct dw9714_device *dw9714_dev = sd_to_dw9714_vcm(sd);
225 for (val = dw9714_dev->current_val % DW9714_CTRL_STEPS;
226 val < dw9714_dev->current_val + DW9714_CTRL_STEPS - 1;