Lines Matching refs:sru

29 static inline u32 vsp1_sru_read(struct vsp1_sru *sru, u32 reg)  in vsp1_sru_read()  argument
31 return vsp1_read(sru->entity.vsp1, reg); in vsp1_sru_read()
34 static inline void vsp1_sru_write(struct vsp1_sru *sru, u32 reg, u32 data) in vsp1_sru_write() argument
36 vsp1_write(sru->entity.vsp1, reg, data); in vsp1_sru_write()
83 struct vsp1_sru *sru = in sru_s_ctrl() local
92 value = vsp1_sru_read(sru, VI6_SRU_CTRL0); in sru_s_ctrl()
96 vsp1_sru_write(sru, VI6_SRU_CTRL0, value); in sru_s_ctrl()
98 vsp1_sru_write(sru, VI6_SRU_CTRL2, param->ctrl2); in sru_s_ctrl()
126 struct vsp1_sru *sru = to_sru(subdev); in sru_s_stream() local
132 ret = vsp1_entity_set_streaming(&sru->entity, enable); in sru_s_stream()
139 input = &sru->entity.formats[SRU_PAD_SINK]; in sru_s_stream()
140 output = &sru->entity.formats[SRU_PAD_SOURCE]; in sru_s_stream()
154 mutex_lock(sru->ctrls.lock); in sru_s_stream()
155 ctrl0 |= vsp1_sru_read(sru, VI6_SRU_CTRL0) in sru_s_stream()
157 vsp1_sru_write(sru, VI6_SRU_CTRL0, ctrl0); in sru_s_stream()
158 mutex_unlock(sru->ctrls.lock); in sru_s_stream()
160 vsp1_sru_write(sru, VI6_SRU_CTRL1, VI6_SRU_CTRL1_PARAM5); in sru_s_stream()
177 struct vsp1_sru *sru = to_sru(subdev); in sru_enum_mbus_code() local
192 format = vsp1_entity_get_pad_format(&sru->entity, cfg, in sru_enum_mbus_code()
204 struct vsp1_sru *sru = to_sru(subdev); in sru_enum_frame_size() local
207 format = vsp1_entity_get_pad_format(&sru->entity, cfg, in sru_enum_frame_size()
237 struct vsp1_sru *sru = to_sru(subdev); in sru_get_format() local
239 fmt->format = *vsp1_entity_get_pad_format(&sru->entity, cfg, fmt->pad, in sru_get_format()
245 static void sru_try_format(struct vsp1_sru *sru, struct v4l2_subdev_pad_config *cfg, in sru_try_format() argument
266 format = vsp1_entity_get_pad_format(&sru->entity, cfg, in sru_try_format()
299 struct vsp1_sru *sru = to_sru(subdev); in sru_set_format() local
302 sru_try_format(sru, cfg, fmt->pad, &fmt->format, fmt->which); in sru_set_format()
304 format = vsp1_entity_get_pad_format(&sru->entity, cfg, fmt->pad, in sru_set_format()
310 format = vsp1_entity_get_pad_format(&sru->entity, cfg, in sru_set_format()
314 sru_try_format(sru, cfg, SRU_PAD_SOURCE, format, fmt->which); in sru_set_format()
347 struct vsp1_sru *sru; in vsp1_sru_create() local
350 sru = devm_kzalloc(vsp1->dev, sizeof(*sru), GFP_KERNEL); in vsp1_sru_create()
351 if (sru == NULL) in vsp1_sru_create()
354 sru->entity.type = VSP1_ENTITY_SRU; in vsp1_sru_create()
356 ret = vsp1_entity_init(vsp1, &sru->entity, 2); in vsp1_sru_create()
361 subdev = &sru->entity.subdev; in vsp1_sru_create()
368 v4l2_set_subdevdata(subdev, sru); in vsp1_sru_create()
374 v4l2_ctrl_handler_init(&sru->ctrls, 1); in vsp1_sru_create()
375 v4l2_ctrl_new_custom(&sru->ctrls, &sru_intensity_control, NULL); in vsp1_sru_create()
377 sru->entity.subdev.ctrl_handler = &sru->ctrls; in vsp1_sru_create()
379 if (sru->ctrls.error) { in vsp1_sru_create()
381 ret = sru->ctrls.error; in vsp1_sru_create()
382 vsp1_entity_destroy(&sru->entity); in vsp1_sru_create()
386 return sru; in vsp1_sru_create()