Lines Matching refs:gspca_dev

48 	struct gspca_dev gspca_dev;	/* !! must be the first item */  member
82 static int vicam_control_msg(struct gspca_dev *gspca_dev, u8 request, in vicam_control_msg() argument
87 ret = usb_control_msg(gspca_dev->dev, in vicam_control_msg()
88 usb_sndctrlpipe(gspca_dev->dev, 0), in vicam_control_msg()
98 static int vicam_set_camera_power(struct gspca_dev *gspca_dev, int state) in vicam_set_camera_power() argument
102 ret = vicam_control_msg(gspca_dev, 0x50, state, 0, NULL, 0); in vicam_set_camera_power()
107 ret = vicam_control_msg(gspca_dev, 0x55, 1, 0, NULL, 0); in vicam_set_camera_power()
115 static int vicam_read_frame(struct gspca_dev *gspca_dev, u8 *data, int size) in vicam_read_frame() argument
118 u8 *req_data = gspca_dev->usb_buf; in vicam_read_frame()
119 s32 expo = v4l2_ctrl_g_ctrl(gspca_dev->exposure); in vicam_read_frame()
120 s32 gain = v4l2_ctrl_g_ctrl(gspca_dev->gain); in vicam_read_frame()
124 if (gspca_dev->pixfmt.width == 256) in vicam_read_frame()
126 if (gspca_dev->pixfmt.height <= 122) { in vicam_read_frame()
128 unscaled_height = gspca_dev->pixfmt.height * 2; in vicam_read_frame()
130 unscaled_height = gspca_dev->pixfmt.height; in vicam_read_frame()
155 mutex_lock(&gspca_dev->usb_lock); in vicam_read_frame()
156 ret = vicam_control_msg(gspca_dev, 0x51, 0x80, 0, req_data, 16); in vicam_read_frame()
157 mutex_unlock(&gspca_dev->usb_lock); in vicam_read_frame()
161 ret = usb_bulk_msg(gspca_dev->dev, in vicam_read_frame()
162 usb_rcvbulkpipe(gspca_dev->dev, 0x81), in vicam_read_frame()
184 struct gspca_dev *gspca_dev = &sd->gspca_dev; in vicam_dostream() local
188 frame_sz = gspca_dev->cam.cam_mode[gspca_dev->curr_mode].sizeimage + in vicam_dostream()
196 while (gspca_dev->present && gspca_dev->streaming) { in vicam_dostream()
198 if (gspca_dev->frozen) in vicam_dostream()
201 ret = vicam_read_frame(gspca_dev, buffer, frame_sz); in vicam_dostream()
210 gspca_frame_add(gspca_dev, FIRST_PACKET, in vicam_dostream()
213 gspca_frame_add(gspca_dev, LAST_PACKET, NULL, 0); in vicam_dostream()
220 static int sd_config(struct gspca_dev *gspca_dev, in sd_config() argument
223 struct cam *cam = &gspca_dev->cam; in sd_config()
224 struct sd *sd = (struct sd *)gspca_dev; in sd_config()
238 static int sd_init(struct gspca_dev *gspca_dev) in sd_init() argument
246 &gspca_dev->dev->dev); in sd_init()
259 ret = vicam_control_msg(gspca_dev, 0xff, 0, 0, firmware_buf, in sd_init()
272 static int sd_start(struct gspca_dev *gspca_dev) in sd_start() argument
274 struct sd *sd = (struct sd *)gspca_dev; in sd_start()
277 ret = vicam_set_camera_power(gspca_dev, 1); in sd_start()
290 static void sd_stop0(struct gspca_dev *gspca_dev) in sd_stop0() argument
292 struct sd *dev = (struct sd *)gspca_dev; in sd_stop0()
295 mutex_unlock(&gspca_dev->usb_lock); in sd_stop0()
299 mutex_lock(&gspca_dev->usb_lock); in sd_stop0()
301 if (gspca_dev->present) in sd_stop0()
302 vicam_set_camera_power(gspca_dev, 0); in sd_stop0()
305 static int sd_init_controls(struct gspca_dev *gspca_dev) in sd_init_controls() argument
307 struct v4l2_ctrl_handler *hdl = &gspca_dev->ctrl_handler; in sd_init_controls()
309 gspca_dev->vdev.ctrl_handler = hdl; in sd_init_controls()
311 gspca_dev->exposure = v4l2_ctrl_new_std(hdl, NULL, in sd_init_controls()
313 gspca_dev->gain = v4l2_ctrl_new_std(hdl, NULL, in sd_init_controls()