Lines Matching refs:sd
196 int (*log_status)(struct v4l2_subdev *sd);
197 int (*s_io_pin_config)(struct v4l2_subdev *sd, size_t n,
199 int (*init)(struct v4l2_subdev *sd, u32 val);
200 int (*load_fw)(struct v4l2_subdev *sd);
201 int (*reset)(struct v4l2_subdev *sd, u32 val);
202 int (*s_gpio)(struct v4l2_subdev *sd, u32 val);
203 long (*command)(struct v4l2_subdev *sd, unsigned int cmd, void *arg);
204 long (*ioctl)(struct v4l2_subdev *sd, unsigned int cmd, void *arg);
206 long (*compat_ioctl32)(struct v4l2_subdev *sd, unsigned int cmd,
210 int (*g_register)(struct v4l2_subdev *sd, struct v4l2_dbg_register *reg);
211 int (*s_register)(struct v4l2_subdev *sd, const struct v4l2_dbg_register *reg);
213 int (*s_power)(struct v4l2_subdev *sd, int on);
214 int (*interrupt_service_routine)(struct v4l2_subdev *sd,
216 int (*subscribe_event)(struct v4l2_subdev *sd, struct v4l2_fh *fh,
218 int (*unsubscribe_event)(struct v4l2_subdev *sd, struct v4l2_fh *fh,
273 int (*standby)(struct v4l2_subdev *sd);
274 int (*s_radio)(struct v4l2_subdev *sd);
275 int (*s_frequency)(struct v4l2_subdev *sd, const struct v4l2_frequency *freq);
276 int (*g_frequency)(struct v4l2_subdev *sd, struct v4l2_frequency *freq);
277 int (*enum_freq_bands)(struct v4l2_subdev *sd, struct v4l2_frequency_band *band);
278 int (*g_tuner)(struct v4l2_subdev *sd, struct v4l2_tuner *vt);
279 int (*s_tuner)(struct v4l2_subdev *sd, const struct v4l2_tuner *vt);
280 int (*g_modulator)(struct v4l2_subdev *sd, struct v4l2_modulator *vm);
281 int (*s_modulator)(struct v4l2_subdev *sd, const struct v4l2_modulator *vm);
282 int (*s_type_addr)(struct v4l2_subdev *sd, struct tuner_setup *type);
283 int (*s_config)(struct v4l2_subdev *sd, const struct v4l2_priv_tun_config *config);
313 int (*s_clock_freq)(struct v4l2_subdev *sd, u32 freq);
314 int (*s_i2s_clock_freq)(struct v4l2_subdev *sd, u32 freq);
315 int (*s_routing)(struct v4l2_subdev *sd, u32 input, u32 output, u32 config);
316 int (*s_stream)(struct v4l2_subdev *sd, int enable);
485 int (*s_routing)(struct v4l2_subdev *sd, u32 input, u32 output, u32 config);
486 int (*s_crystal_freq)(struct v4l2_subdev *sd, u32 freq, u32 flags);
487 int (*g_std)(struct v4l2_subdev *sd, v4l2_std_id *norm);
488 int (*s_std)(struct v4l2_subdev *sd, v4l2_std_id norm);
489 int (*s_std_output)(struct v4l2_subdev *sd, v4l2_std_id std);
490 int (*g_std_output)(struct v4l2_subdev *sd, v4l2_std_id *std);
491 int (*querystd)(struct v4l2_subdev *sd, v4l2_std_id *std);
492 int (*g_tvnorms)(struct v4l2_subdev *sd, v4l2_std_id *std);
493 int (*g_tvnorms_output)(struct v4l2_subdev *sd, v4l2_std_id *std);
494 int (*g_input_status)(struct v4l2_subdev *sd, u32 *status);
495 int (*s_stream)(struct v4l2_subdev *sd, int enable);
496 int (*g_pixelaspect)(struct v4l2_subdev *sd, struct v4l2_fract *aspect);
497 int (*g_frame_interval)(struct v4l2_subdev *sd,
499 int (*s_frame_interval)(struct v4l2_subdev *sd,
501 int (*s_dv_timings)(struct v4l2_subdev *sd,
503 int (*g_dv_timings)(struct v4l2_subdev *sd,
505 int (*query_dv_timings)(struct v4l2_subdev *sd,
507 int (*s_rx_buffer)(struct v4l2_subdev *sd, void *buf,
509 int (*pre_streamon)(struct v4l2_subdev *sd, u32 flags);
510 int (*post_streamoff)(struct v4l2_subdev *sd);
549 int (*decode_vbi_line)(struct v4l2_subdev *sd, struct v4l2_decode_vbi_line *vbi_line);
550 int (*s_vbi_data)(struct v4l2_subdev *sd, const struct v4l2_sliced_vbi_data *vbi_data);
551 int (*g_vbi_data)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_data *vbi_data);
552 int (*g_sliced_vbi_cap)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_cap *cap);
553 int (*s_raw_fmt)(struct v4l2_subdev *sd, struct v4l2_vbi_format *fmt);
554 int (*g_sliced_fmt)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_format *fmt);
555 int (*s_sliced_fmt)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_format *fmt);
569 int (*g_skip_top_lines)(struct v4l2_subdev *sd, u32 *lines);
570 int (*g_skip_frames)(struct v4l2_subdev *sd, u32 *frames);
668 int (*rx_read)(struct v4l2_subdev *sd, u8 *buf, size_t count,
671 int (*rx_g_parameters)(struct v4l2_subdev *sd,
673 int (*rx_s_parameters)(struct v4l2_subdev *sd,
677 int (*tx_write)(struct v4l2_subdev *sd, u8 *buf, size_t count,
680 int (*tx_g_parameters)(struct v4l2_subdev *sd,
682 int (*tx_s_parameters)(struct v4l2_subdev *sd,
841 int (*init_cfg)(struct v4l2_subdev *sd,
843 int (*enum_mbus_code)(struct v4l2_subdev *sd,
846 int (*enum_frame_size)(struct v4l2_subdev *sd,
849 int (*enum_frame_interval)(struct v4l2_subdev *sd,
852 int (*get_fmt)(struct v4l2_subdev *sd,
855 int (*set_fmt)(struct v4l2_subdev *sd,
858 int (*get_selection)(struct v4l2_subdev *sd,
861 int (*set_selection)(struct v4l2_subdev *sd,
864 int (*get_edid)(struct v4l2_subdev *sd, struct v4l2_edid *edid);
865 int (*set_edid)(struct v4l2_subdev *sd, struct v4l2_edid *edid);
866 int (*dv_timings_cap)(struct v4l2_subdev *sd,
868 int (*enum_dv_timings)(struct v4l2_subdev *sd,
871 int (*link_validate)(struct v4l2_subdev *sd, struct media_link *link,
875 int (*get_frame_desc)(struct v4l2_subdev *sd, unsigned int pad,
877 int (*set_frame_desc)(struct v4l2_subdev *sd, unsigned int pad,
879 int (*get_mbus_config)(struct v4l2_subdev *sd, unsigned int pad,
881 int (*set_routing)(struct v4l2_subdev *sd,
885 int (*enable_streams)(struct v4l2_subdev *sd,
888 int (*disable_streams)(struct v4l2_subdev *sd,
944 int (*registered)(struct v4l2_subdev *sd);
945 void (*unregistered)(struct v4l2_subdev *sd);
946 int (*open)(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh);
947 int (*close)(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh);
948 void (*release)(struct v4l2_subdev *sd);
999 * @owner_v4l2_dev: true if the &sd->owner matches the owner of @v4l2_dev->dev
1150 * @sd: pointer to &struct v4l2_subdev
1155 v4l2_subdev_get_pad_format(struct v4l2_subdev *sd,
1161 if (WARN_ON(pad >= sd->entity.num_pads))
1170 * @sd: pointer to &struct v4l2_subdev
1175 v4l2_subdev_get_pad_crop(struct v4l2_subdev *sd,
1181 if (WARN_ON(pad >= sd->entity.num_pads))
1190 * @sd: pointer to &struct v4l2_subdev
1195 v4l2_subdev_get_pad_compose(struct v4l2_subdev *sd,
1201 if (WARN_ON(pad >= sd->entity.num_pads))
1210 #define v4l2_subdev_get_try_format(sd, state, pad) \
1211 v4l2_subdev_get_pad_format(sd, state, pad)
1213 #define v4l2_subdev_get_try_crop(sd, state, pad) \
1214 v4l2_subdev_get_pad_crop(sd, state, pad)
1216 #define v4l2_subdev_get_try_compose(sd, state, pad) \
1217 v4l2_subdev_get_pad_compose(sd, state, pad)
1226 * @sd: pointer to &struct v4l2_subdev
1229 static inline void v4l2_set_subdevdata(struct v4l2_subdev *sd, void *p)
1231 sd->dev_priv = p;
1237 * @sd: pointer to &struct v4l2_subdev
1241 static inline void *v4l2_get_subdevdata(const struct v4l2_subdev *sd)
1243 return sd->dev_priv;
1249 * @sd: pointer to &struct v4l2_subdev
1252 static inline void v4l2_set_subdev_hostdata(struct v4l2_subdev *sd, void *p)
1254 sd->host_priv = p;
1260 * @sd: pointer to &struct v4l2_subdev
1264 static inline void *v4l2_get_subdev_hostdata(const struct v4l2_subdev *sd)
1266 return sd->host_priv;
1291 * @sd: pointer to &struct v4l2_subdev
1299 int v4l2_subdev_link_validate_default(struct v4l2_subdev *sd,
1338 * @sd: pointer to &struct v4l2_subdev for which the state is being allocated.
1346 struct v4l2_subdev_state *__v4l2_subdev_state_alloc(struct v4l2_subdev *sd,
1361 * @sd: The subdev
1373 #define v4l2_subdev_init_finalize(sd) \
1377 ":" __stringify(__LINE__) ":sd->active_state->lock"; \
1378 __v4l2_subdev_init_finalize(sd, name, &__key); \
1381 int __v4l2_subdev_init_finalize(struct v4l2_subdev *sd, const char *name,
1386 * @sd: The subdevice
1392 void v4l2_subdev_cleanup(struct v4l2_subdev *sd);
1421 * @sd: The subdevice
1431 v4l2_subdev_get_unlocked_active_state(struct v4l2_subdev *sd)
1433 if (sd->active_state)
1434 lockdep_assert_not_held(sd->active_state->lock);
1435 return sd->active_state;
1442 * @sd: The subdevice
1452 v4l2_subdev_get_locked_active_state(struct v4l2_subdev *sd)
1454 if (sd->active_state)
1455 lockdep_assert_held(sd->active_state->lock);
1456 return sd->active_state;
1462 * @sd: The subdevice
1470 v4l2_subdev_lock_and_get_active_state(struct v4l2_subdev *sd)
1472 if (sd->active_state)
1473 v4l2_subdev_lock_state(sd->active_state);
1474 return sd->active_state;
1481 * @sd: subdevice
1493 int v4l2_subdev_get_fmt(struct v4l2_subdev *sd, struct v4l2_subdev_state *state,
1498 * @sd: The subdevice
1508 int v4l2_subdev_set_routing(struct v4l2_subdev *sd,
1528 * @sd: The subdevice
1536 int v4l2_subdev_set_routing_with_fmt(struct v4l2_subdev *sd,
1695 * @sd: The subdevice
1703 int v4l2_subdev_routing_validate(struct v4l2_subdev *sd,
1709 * @sd: The subdevice
1734 int v4l2_subdev_enable_streams(struct v4l2_subdev *sd, u32 pad,
1739 * @sd: The subdevice
1764 int v4l2_subdev_disable_streams(struct v4l2_subdev *sd, u32 pad,
1770 * @sd: The subdevice
1782 int v4l2_subdev_s_stream_helper(struct v4l2_subdev *sd, int enable);
1791 * @sd: pointer to the &struct v4l2_subdev to be initialized
1794 void v4l2_subdev_init(struct v4l2_subdev *sd,
1802 * @sd: pointer to the &struct v4l2_subdev
1810 * Example: err = v4l2_subdev_call(sd, video, s_std, norm);
1812 #define v4l2_subdev_call(sd, o, f, args...) \
1814 struct v4l2_subdev *__sd = (sd); \
1834 * @sd: pointer to the &struct v4l2_subdev
1846 #define v4l2_subdev_call_state_active(sd, o, f, args...) \
1850 state = v4l2_subdev_get_unlocked_active_state(sd); \
1853 __result = v4l2_subdev_call(sd, o, f, state, ##args); \
1864 * @sd: pointer to the &struct v4l2_subdev
1878 #define v4l2_subdev_call_state_try(sd, o, f, args...) \
1885 __v4l2_subdev_state_alloc(sd, name, &__key); \
1887 __result = v4l2_subdev_call(sd, o, f, state, ##args); \
1896 * @sd: pointer to the &struct v4l2_subdev
1901 #define v4l2_subdev_has_op(sd, o, f) \
1902 ((sd)->ops->o && (sd)->ops->o->f)
1906 * @sd: The subdev for which to deliver the event
1914 void v4l2_subdev_notify_event(struct v4l2_subdev *sd,