usbvc_state_t
usbvc_state_t *usbvcp;
usbvc_state_t *usbvcp;
usbvc_init_power_mgmt(usbvc_state_t *usbvcp)
usbvc_destroy_power_mgmt(usbvc_state_t *usbvcp)
usbvc_pm_busy_component(usbvc_state_t *usbvcp)
usbvc_pm_idle_component(usbvc_state_t *usbvcp)
usbvc_pwrlvl0(usbvc_state_t *usbvcp)
usbvc_pwrlvl1(usbvc_state_t *usbvcp)
usbvc_pwrlvl2(usbvc_state_t *usbvcp)
usbvc_pwrlvl3(usbvc_state_t *usbvcp)
usbvc_state_t *usbvcp = ddi_get_soft_state(usbvc_statep, instance);
usbvc_resume_operation(usbvc_state_t *usbvcp)
usbvc_state_t *usbvcp = ddi_get_soft_state(usbvc_statep, instance);
usbvc_restore_device_state(dev_info_t *dip, usbvc_state_t *usbvcp)
usbvc_state_t *usbvcp = ddi_get_soft_state(usbvc_statep, instance);
usbvc_state_t *usbvcp = ddi_get_soft_state(usbvc_statep, instance);
usbvc_init_sync_objs(usbvc_state_t *usbvcp)
usbvc_fini_sync_objs(usbvc_state_t *usbvcp)
static void usbvc_cleanup(dev_info_t *, usbvc_state_t *);
usbvc_init_lists(usbvc_state_t *usbvcp)
usbvc_fini_lists(usbvc_state_t *usbvcp)
usbvc_free_ctrl_descr(usbvc_state_t *usbvcp)
usbvc_free_stream_descr(usbvc_state_t *usbvcp)
static void usbvc_init_power_mgmt(usbvc_state_t *);
static void usbvc_destroy_power_mgmt(usbvc_state_t *);
static void usbvc_pm_busy_component(usbvc_state_t *);
static void usbvc_pm_idle_component(usbvc_state_t *);
static int usbvc_pwrlvl0(usbvc_state_t *);
static int usbvc_pwrlvl1(usbvc_state_t *);
static int usbvc_pwrlvl2(usbvc_state_t *);
static int usbvc_pwrlvl3(usbvc_state_t *);
usbvc_parse_ctrl_if(usbvc_state_t *usbvcp)
static void usbvc_restore_device_state(dev_info_t *, usbvc_state_t *);
static void usbvc_init_sync_objs(usbvc_state_t *);
static void usbvc_fini_sync_objs(usbvc_state_t *);
static void usbvc_init_lists(usbvc_state_t *);
static void usbvc_fini_lists(usbvc_state_t *);
static void usbvc_free_ctrl_descr(usbvc_state_t *);
static void usbvc_free_stream_descr(usbvc_state_t *);
static usbvc_stream_if_t *usbvc_parse_stream_if(usbvc_state_t *, int);
static int usbvc_parse_ctrl_if(usbvc_state_t *);
static int usbvc_parse_stream_ifs(usbvc_state_t *);
static void usbvc_parse_color_still(usbvc_state_t *,
static void usbvc_parse_frames(usbvc_state_t *, usbvc_format_group_t *,
static int usbvc_parse_format_group(usbvc_state_t *,
static int usbvc_parse_format_groups(usbvc_state_t *, usbvc_stream_if_t *);
static int usbvc_parse_stream_header(usbvc_state_t *, usbvc_stream_if_t *);
usbvc_parse_stream_if(usbvc_state_t *usbvcp, int if_num)
static int usbvc_alloc_read_bufs(usbvc_state_t *, usbvc_stream_if_t *);
static int usbvc_read_buf(usbvc_state_t *, struct buf *);
static void usbvc_free_read_bufs(usbvc_state_t *, usbvc_stream_if_t *);
static void usbvc_close_isoc_pipe(usbvc_state_t *, usbvc_stream_if_t *);
usbvc_parse_stream_ifs(usbvc_state_t *usbvcp)
usbvc_parse_color_still(usbvc_state_t *usbvcp, usbvc_format_group_t *fmtgrp,
static int usbvc_set_alt(usbvc_state_t *, usbvc_stream_if_t *);
static int usbvc_decode_stream_header(usbvc_state_t *, usbvc_buf_grp_t *,
static int usbvc_serialize_access(usbvc_state_t *, boolean_t);
static void usbvc_release_access(usbvc_state_t *);
static int usbvc_set_default_stream_fmt(usbvc_state_t *);
usbvc_parse_frames(usbvc_state_t *usbvcp, usbvc_format_group_t *fmtgrp,
usbvc_parse_format_group(usbvc_state_t *usbvcp, usbvc_format_group_t *fmtgrp,
usbvc_parse_format_groups(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if)
usbvc_parse_stream_header(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if)
usbvc_alloc_read_bufs(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if)
usbvc_read_buf(usbvc_state_t *usbvcp, struct buf *bp)
usbvc_free_read_bufs(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if)
usbvc_alloc_map_bufs(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if,
usbvc_free_map_bufs(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if)
usbvc_open_isoc_pipe(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if)
usbvc_close_isoc_pipe(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if)
usbvc_start_isoc_polling(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if,
sizeof (usbvc_state_t), USBVC_INITIAL_SOFT_SPACE)) != 0) {
usbvc_state_t *usbvcp =
(usbvc_state_t *)isoc_req->isoc_client_private;
usbvc_state_t *usbvcp =
(usbvc_state_t *)isoc_req->isoc_client_private;
usbvc_set_alt(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if)
usbvc_decode_stream_header(usbvc_state_t *usbvcp, usbvc_buf_grp_t *bufgrp,
usbvc_serialize_access(usbvc_state_t *usbvcp, boolean_t waitsig)
usbvc_release_access(usbvc_state_t *usbvcp)
usbvc_state_t *usbvcp;
usbvc_vc_get_ctrl(usbvc_state_t *usbvcp, uint8_t req_code, uint8_t entity_id,
usbvc_vc_set_ctrl(usbvc_state_t *usbvcp, uint8_t req_code, uint8_t entity_id,
usbvc_vs_set_probe_commit(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if,
usbvc_vs_get_probe(usbvc_state_t *usbvcp, usbvc_stream_if_t *strm_if,
usbvc_set_default_stream_fmt(usbvc_state_t *usbvcp)
usbvc_state_t *usbvcp = NULL;
usbvc_state_t *usbvcp = ddi_get_soft_state(usbvc_statep, instance);
usbvc_cleanup(dev_info_t *dip, usbvc_state_t *usbvcp)
usbvc_state_t *usbvcp =
usbvc_state_t *usbvcp =
usbvc_state_t *usbvcp =
usbvc_state_t *usbvcp = ddi_get_soft_state(usbvc_statep,
usbvc_state_t *usbvcp =
usbvc_state_t *usbvcp =
usbvc_v4l2_get_format(usbvc_state_t *usbvcp, struct v4l2_format *format)
usbvc_v4l2_ioctl(usbvc_state_t *usbvcp, int cmd, intptr_t arg, int mode)
usbvc_v4l2_query_buf(usbvc_state_t *usbvcp, usbvc_buf_t *usbvc_buf,
usbvc_v4l2_enqueue_buf(usbvc_state_t *usbvcp, usbvc_buf_t *usbvc_buf,
usbvc_v4l2_dequeue_buffer(usbvc_state_t *usbvcp, struct v4l2_buffer *buf,
usbvc_v4l2_match_ctrl(usbvc_state_t *usbvcp, usbvc_v4l2_ctrl_t *ctrl,
usbvc_v4l2_query_ctrl(usbvc_state_t *usbvcp, struct v4l2_queryctrl *queryctrl)
usbvc_v4l2_get_ctrl(usbvc_state_t *usbvcp, struct v4l2_control *v4l2_ctrl)
usbvc_v4l2_set_ctrl(usbvc_state_t *usbvcp, struct v4l2_control *v4l2_ctrl)
usbvc_v4l2_set_parm(usbvc_state_t *usbvcp, struct v4l2_streamparm *parm)
usbvc_v4l2_get_parm(usbvc_state_t *usbvcp, struct v4l2_streamparm *parm)
static int usbvc_v4l2_set_format(usbvc_state_t *, struct v4l2_format *);
static int usbvc_v4l2_get_format(usbvc_state_t *, struct v4l2_format *);
static void usbvc_v4l2_query_buf(usbvc_state_t *, usbvc_buf_t *,
static int usbvc_v4l2_enqueue_buf(usbvc_state_t *, usbvc_buf_t *,
static int usbvc_v4l2_dequeue_buffer(usbvc_state_t *,
static int usbvc_v4l2_query_ctrl(usbvc_state_t *, struct v4l2_queryctrl *);
static int usbvc_v4l2_get_ctrl(usbvc_state_t *, struct v4l2_control *);
static int usbvc_v4l2_set_ctrl(usbvc_state_t *, struct v4l2_control *);
static int usbvc_v4l2_set_parm(usbvc_state_t *, struct v4l2_streamparm *);
static int usbvc_v4l2_get_parm(usbvc_state_t *, struct v4l2_streamparm *);
usbvc_v4l2_set_format(usbvc_state_t *usbvcp, struct v4l2_format *format)
_NOTE(MUTEX_PROTECTS_DATA(usbvc_state_t::usbvc_mutex, usbvc_state_t))
_NOTE(DATA_READABLE_WITHOUT_LOCK(usbvc_state_t::{
int usbvc_open_isoc_pipe(usbvc_state_t *, usbvc_stream_if_t *);
int usbvc_start_isoc_polling(usbvc_state_t *, usbvc_stream_if_t *, uchar_t);
int usbvc_vc_set_ctrl(usbvc_state_t *, uint8_t, uint8_t,
int usbvc_vc_get_ctrl(usbvc_state_t *, uint8_t, uint8_t,
int usbvc_vs_set_probe_commit(usbvc_state_t *, usbvc_stream_if_t *,
void usbvc_free_map_bufs(usbvc_state_t *, usbvc_stream_if_t *);
int usbvc_alloc_map_bufs(usbvc_state_t *, usbvc_stream_if_t *, int, int);
int usbvc_vs_get_probe(usbvc_state_t *, usbvc_stream_if_t *,
int usbvc_v4l2_ioctl(usbvc_state_t *, int, intptr_t, int);