Lines Matching refs:gspca_dev

59 	struct gspca_dev gspca_dev;	/* !! must be the first item */  member
99 static void jlj_write2(struct gspca_dev *gspca_dev, unsigned char *command) in jlj_write2() argument
103 if (gspca_dev->usb_err < 0) in jlj_write2()
105 memcpy(gspca_dev->usb_buf, command, 2); in jlj_write2()
106 retval = usb_bulk_msg(gspca_dev->dev, in jlj_write2()
107 usb_sndbulkpipe(gspca_dev->dev, 3), in jlj_write2()
108 gspca_dev->usb_buf, 2, NULL, 500); in jlj_write2()
111 gspca_dev->usb_buf[0], retval); in jlj_write2()
112 gspca_dev->usb_err = retval; in jlj_write2()
117 static void jlj_read1(struct gspca_dev *gspca_dev, unsigned char *response) in jlj_read1() argument
121 if (gspca_dev->usb_err < 0) in jlj_read1()
123 retval = usb_bulk_msg(gspca_dev->dev, in jlj_read1()
124 usb_rcvbulkpipe(gspca_dev->dev, 0x84), in jlj_read1()
125 gspca_dev->usb_buf, 1, NULL, 500); in jlj_read1()
126 *response = gspca_dev->usb_buf[0]; in jlj_read1()
129 gspca_dev->usb_buf[0], retval); in jlj_read1()
130 gspca_dev->usb_err = retval; in jlj_read1()
134 static void setfreq(struct gspca_dev *gspca_dev, s32 val) in setfreq() argument
143 jlj_write2(gspca_dev, freq_commands[0]); in setfreq()
144 jlj_write2(gspca_dev, freq_commands[1]); in setfreq()
147 static void setcamquality(struct gspca_dev *gspca_dev, s32 val) in setcamquality() argument
160 jlj_write2(gspca_dev, quality_commands[0]); in setcamquality()
161 jlj_write2(gspca_dev, quality_commands[1]); in setcamquality()
164 static void setautogain(struct gspca_dev *gspca_dev, s32 val) in setautogain() argument
173 jlj_write2(gspca_dev, autogain_commands[0]); in setautogain()
174 jlj_write2(gspca_dev, autogain_commands[1]); in setautogain()
177 static void setred(struct gspca_dev *gspca_dev, s32 val) in setred() argument
186 jlj_write2(gspca_dev, setred_commands[0]); in setred()
187 jlj_write2(gspca_dev, setred_commands[1]); in setred()
190 static void setgreen(struct gspca_dev *gspca_dev, s32 val) in setgreen() argument
199 jlj_write2(gspca_dev, setgreen_commands[0]); in setgreen()
200 jlj_write2(gspca_dev, setgreen_commands[1]); in setgreen()
203 static void setblue(struct gspca_dev *gspca_dev, s32 val) in setblue() argument
212 jlj_write2(gspca_dev, setblue_commands[0]); in setblue()
213 jlj_write2(gspca_dev, setblue_commands[1]); in setblue()
216 static int jlj_start(struct gspca_dev *gspca_dev) in jlj_start() argument
221 struct sd *sd = (struct sd *) gspca_dev; in jlj_start()
226 {{0x71, 0x81 - gspca_dev->curr_mode}, 0, 0}, in jlj_start()
259 jlj_write2(gspca_dev, start_commands[i].instruction); in jlj_start()
263 jlj_read1(gspca_dev, &response); in jlj_start()
265 setcamquality(gspca_dev, v4l2_ctrl_g_ctrl(sd->jpegqual)); in jlj_start()
267 setfreq(gspca_dev, v4l2_ctrl_g_ctrl(sd->freq)); in jlj_start()
268 if (gspca_dev->usb_err < 0) in jlj_start()
270 return gspca_dev->usb_err; in jlj_start()
273 static void sd_pkt_scan(struct gspca_dev *gspca_dev, in sd_pkt_scan() argument
276 struct sd *sd = (struct sd *) gspca_dev; in sd_pkt_scan()
292 gspca_frame_add(gspca_dev, FIRST_PACKET, in sd_pkt_scan()
295 gspca_frame_add(gspca_dev, INTER_PACKET, in sd_pkt_scan()
306 gspca_frame_add(gspca_dev, packet_type, in sd_pkt_scan()
313 gspca_dev->last_packet_type = DISCARD_PACKET; in sd_pkt_scan()
317 static int sd_config(struct gspca_dev *gspca_dev, in sd_config() argument
320 struct cam *cam = &gspca_dev->cam; in sd_config()
321 struct sd *dev = (struct sd *) gspca_dev; in sd_config()
334 static void sd_stopN(struct gspca_dev *gspca_dev) in sd_stopN() argument
347 usb_bulk_msg(gspca_dev->dev, in sd_stopN()
348 gspca_dev->urb[0]->pipe, in sd_stopN()
349 gspca_dev->urb[0]->transfer_buffer, in sd_stopN()
355 buf = gspca_dev->urb[0]->transfer_buffer; in sd_stopN()
366 jlj_write2(gspca_dev, stop_commands[i]); in sd_stopN()
370 static int sd_init(struct gspca_dev *gspca_dev) in sd_init() argument
372 return gspca_dev->usb_err; in sd_init()
376 static int sd_start(struct gspca_dev *gspca_dev) in sd_start() argument
378 struct sd *dev = (struct sd *) gspca_dev; in sd_start()
381 jpeg_define(dev->jpeg_hdr, gspca_dev->pixfmt.height, in sd_start()
382 gspca_dev->pixfmt.width, in sd_start()
386 gspca_dev->pixfmt.height, gspca_dev->pixfmt.width); in sd_start()
387 jlj_start(gspca_dev); in sd_start()
388 return gspca_dev->usb_err; in sd_start()
402 struct gspca_dev *gspca_dev = in sd_s_ctrl() local
403 container_of(ctrl->handler, struct gspca_dev, ctrl_handler); in sd_s_ctrl()
404 struct sd *sd = (struct sd *)gspca_dev; in sd_s_ctrl()
406 gspca_dev->usb_err = 0; in sd_s_ctrl()
408 if (!gspca_dev->streaming) in sd_s_ctrl()
413 setfreq(gspca_dev, ctrl->val); in sd_s_ctrl()
416 setred(gspca_dev, ctrl->val); in sd_s_ctrl()
419 setgreen(gspca_dev, ctrl->val); in sd_s_ctrl()
422 setblue(gspca_dev, ctrl->val); in sd_s_ctrl()
425 setautogain(gspca_dev, ctrl->val); in sd_s_ctrl()
429 setcamquality(gspca_dev, ctrl->val); in sd_s_ctrl()
432 return gspca_dev->usb_err; in sd_s_ctrl()
439 static int sd_init_controls(struct gspca_dev *gspca_dev) in sd_init_controls() argument
441 struct sd *sd = (struct sd *)gspca_dev; in sd_init_controls()
442 struct v4l2_ctrl_handler *hdl = &gspca_dev->ctrl_handler; in sd_init_controls()
453 gspca_dev->vdev.ctrl_handler = hdl; in sd_init_controls()
477 static int sd_set_jcomp(struct gspca_dev *gspca_dev, in sd_set_jcomp() argument
480 struct sd *sd = (struct sd *) gspca_dev; in sd_set_jcomp()
486 static int sd_get_jcomp(struct gspca_dev *gspca_dev, in sd_get_jcomp() argument
489 struct sd *sd = (struct sd *) gspca_dev; in sd_get_jcomp()