Lines Matching refs:ov5647
80 struct ov5647 { struct
91 static inline struct ov5647 *to_state(struct v4l2_subdev *sd) in to_state() argument
93 return container_of(sd, struct ov5647, sd); in to_state()
350 struct ov5647 *ov5647 = to_state(sd); in ov5647_sensor_power() local
353 mutex_lock(&ov5647->lock); in ov5647_sensor_power()
355 if (on && !ov5647->power_count) { in ov5647_sensor_power()
358 ret = clk_prepare_enable(ov5647->xclk); in ov5647_sensor_power()
367 clk_disable_unprepare(ov5647->xclk); in ov5647_sensor_power()
375 clk_disable_unprepare(ov5647->xclk); in ov5647_sensor_power()
380 } else if (!on && ov5647->power_count == 1) { in ov5647_sensor_power()
394 clk_disable_unprepare(ov5647->xclk); in ov5647_sensor_power()
398 ov5647->power_count += on ? 1 : -1; in ov5647_sensor_power()
399 WARN_ON(ov5647->power_count < 0); in ov5647_sensor_power()
402 mutex_unlock(&ov5647->lock); in ov5647_sensor_power()
553 struct ov5647 *sensor; in ov5647_probe()
617 struct ov5647 *ov5647 = to_state(sd); in ov5647_remove() local
619 v4l2_async_unregister_subdev(&ov5647->sd); in ov5647_remove()
620 media_entity_cleanup(&ov5647->sd.entity); in ov5647_remove()
622 mutex_destroy(&ov5647->lock); in ov5647_remove()