Lines Matching +full:0 +full:xf000

42 #define BUFFER_SIZE 0x1000
46 #define ZR364XX_READ_IDLE 0
55 } while (0)
66 #define METHOD0 0
81 MODULE_PARM_DESC(mode, "0 = 320x240, 1 = 160x120, 2 = 640x480");
87 {USB_DEVICE(0x08ca, 0x0109), .driver_info = METHOD0 },
88 {USB_DEVICE(0x041e, 0x4024), .driver_info = METHOD0 },
89 {USB_DEVICE(0x0d64, 0x0108), .driver_info = METHOD0 },
90 {USB_DEVICE(0x0546, 0x3187), .driver_info = METHOD0 },
91 {USB_DEVICE(0x0d64, 0x3108), .driver_info = METHOD0 },
92 {USB_DEVICE(0x0595, 0x4343), .driver_info = METHOD0 },
93 {USB_DEVICE(0x0bb0, 0x500d), .driver_info = METHOD0 },
94 {USB_DEVICE(0x0feb, 0x2004), .driver_info = METHOD0 },
95 {USB_DEVICE(0x055f, 0xb500), .driver_info = METHOD0 },
96 {USB_DEVICE(0x08ca, 0x2062), .driver_info = METHOD2 },
97 {USB_DEVICE(0x052b, 0x1a18), .driver_info = METHOD1 },
98 {USB_DEVICE(0x04c8, 0x0729), .driver_info = METHOD0 },
99 {USB_DEVICE(0x04f2, 0xa208), .driver_info = METHOD0 },
100 {USB_DEVICE(0x0784, 0x0040), .driver_info = METHOD1 },
101 {USB_DEVICE(0x06d6, 0x0034), .driver_info = METHOD0 },
102 {USB_DEVICE(0x0a17, 0x0062), .driver_info = METHOD2 },
103 {USB_DEVICE(0x06d6, 0x003b), .driver_info = METHOD0 },
104 {USB_DEVICE(0x0a17, 0x004e), .driver_info = METHOD2 },
105 {USB_DEVICE(0x041e, 0x405d), .driver_info = METHOD2 },
106 {USB_DEVICE(0x08ca, 0x2102), .driver_info = METHOD3 },
107 {USB_DEVICE(0x06d6, 0x003d), .driver_info = METHOD0 },
204 usb_sndctrlpipe(udev, 0), in send_control_msg()
223 /* method 0 */
224 static unsigned char m0d1[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
225 static unsigned char m0d2[] = { 0, 0, 0, 0, 0, 0 };
226 static unsigned char m0d3[] = { 0, 0 };
228 {0x1f30, 0, NULL},
229 {0xd000, 0, NULL},
230 {0x3370, sizeof(m0d1), m0d1},
231 {0x2000, 0, NULL},
232 {0x2f0f, 0, NULL},
233 {0x2610, sizeof(m0d2), m0d2},
234 {0xe107, 0, NULL},
235 {0x2502, 0, NULL},
236 {0x1f70, 0, NULL},
237 {0xd000, 0, NULL},
238 {0x9a01, sizeof(m0d3), m0d3},
243 static unsigned char m1d1[] = { 0xff, 0xff };
244 static unsigned char m1d2[] = { 0x00, 0x00 };
246 {0x1f30, 0, NULL},
247 {0xd000, 0, NULL},
248 {0xf000, 0, NULL},
249 {0x2000, 0, NULL},
250 {0x2f0f, 0, NULL},
251 {0x2650, 0, NULL},
252 {0xe107, 0, NULL},
253 {0x2502, sizeof(m1d1), m1d1},
254 {0x1f70, 0, NULL},
255 {0xd000, 0, NULL},
256 {0xd000, 0, NULL},
257 {0xd000, 0, NULL},
258 {0x9a01, sizeof(m1d2), m1d2},
263 static unsigned char m2d1[] = { 0xff, 0xff };
265 {0x1f30, 0, NULL},
266 {0xf000, 0, NULL},
267 {0x2000, 0, NULL},
268 {0x2f0f, 0, NULL},
269 {0x2650, 0, NULL},
270 {0xe107, 0, NULL},
271 {0x2502, sizeof(m2d1), m2d1},
272 {0x1f70, 0, NULL},
282 0xFF, 0xD8,
284 0xFF, 0xE0, 0x00, 0x10, 'J', 'F', 'I', 'F',
285 0x00, 0x01, 0x01, 0x00, 0x33, 0x8A, 0x00, 0x00, 0x33, 0x88,
287 0xFF, 0xDB, 0x00, 0x84
290 0xFF, 0xC4, 0x00, 0x1F, 0x00, 0x00, 0x01, 0x05, 0x01, 0x01, 0x01,
291 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
292 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B,
293 0xFF, 0xC4, 0x00, 0xB5, 0x10, 0x00, 0x02, 0x01, 0x03, 0x03, 0x02,
294 0x04, 0x03, 0x05, 0x05, 0x04, 0x04, 0x00, 0x00, 0x01, 0x7D, 0x01,
295 0x02, 0x03, 0x00, 0x04, 0x11, 0x05, 0x12, 0x21, 0x31, 0x41, 0x06,
296 0x13, 0x51, 0x61, 0x07, 0x22, 0x71, 0x14, 0x32, 0x81, 0x91, 0xA1,
297 0x08, 0x23, 0x42, 0xB1, 0xC1, 0x15, 0x52, 0xD1, 0xF0, 0x24, 0x33,
298 0x62, 0x72, 0x82, 0x09, 0x0A, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x25,
299 0x26, 0x27, 0x28, 0x29, 0x2A, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
300 0x3A, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x53, 0x54,
301 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x63, 0x64, 0x65, 0x66, 0x67,
302 0x68, 0x69, 0x6A, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A,
303 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x92, 0x93, 0x94,
304 0x95, 0x96, 0x97, 0x98, 0x99, 0x9A, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6,
305 0xA7, 0xA8, 0xA9, 0xAA, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7, 0xB8,
306 0xB9, 0xBA, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA,
307 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xE1, 0xE2,
308 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xF1, 0xF2, 0xF3,
309 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, 0xF9, 0xFA, 0xFF, 0xC4, 0x00, 0x1F,
310 0x01, 0x00, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
311 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04,
312 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0xFF, 0xC4, 0x00, 0xB5,
313 0x11, 0x00, 0x02, 0x01, 0x02, 0x04, 0x04, 0x03, 0x04, 0x07, 0x05,
314 0x04, 0x04, 0x00, 0x01, 0x02, 0x77, 0x00, 0x01, 0x02, 0x03, 0x11,
315 0x04, 0x05, 0x21, 0x31, 0x06, 0x12, 0x41, 0x51, 0x07, 0x61, 0x71,
316 0x13, 0x22, 0x32, 0x81, 0x08, 0x14, 0x42, 0x91, 0xA1, 0xB1, 0xC1,
317 0x09, 0x23, 0x33, 0x52, 0xF0, 0x15, 0x62, 0x72, 0xD1, 0x0A, 0x16,
318 0x24, 0x34, 0xE1, 0x25, 0xF1, 0x17, 0x18, 0x19, 0x1A, 0x26, 0x27,
319 0x28, 0x29, 0x2A, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x43, 0x44,
320 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x53, 0x54, 0x55, 0x56, 0x57,
321 0x58, 0x59, 0x5A, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A,
322 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0x82, 0x83, 0x84,
323 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x92, 0x93, 0x94, 0x95, 0x96,
324 0x97, 0x98, 0x99, 0x9A, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8,
325 0xA9, 0xAA, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA,
326 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xD2, 0xD3,
327 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xE2, 0xE3, 0xE4, 0xE5,
328 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
329 0xF8, 0xF9, 0xFA, 0xFF, 0xC0, 0x00, 0x11, 0x08, 0x00, 0xF0, 0x01,
330 0x40, 0x03, 0x01, 0x21, 0x00, 0x02, 0x11, 0x01, 0x03, 0x11, 0x01,
331 0xFF, 0xDA, 0x00, 0x0C, 0x03, 0x01, 0x00, 0x02, 0x11, 0x03, 0x11,
332 0x00, 0x3F, 0x00
347 if (*count == 0) in buffer_setup()
353 return 0; in buffer_setup()
380 if (buf->vb.baddr != 0 && buf->vb.bsize < buf->vb.size) { in buffer_prepare()
392 if (rc < 0) in buffer_prepare()
397 return 0; in buffer_prepare()
442 int err = 0; in zr364xx_read()
457 if (err == 0) { in zr364xx_read()
481 int pos = 0; in zr364xx_fillbuff()
517 unsigned long flags = 0; in zr364xx_got_frame()
518 int rc = 0; in zr364xx_got_frame()
549 * returns 0 on success, EAGAIN if more data to process (call this
560 int i = 0; in zr364xx_read_video_callback()
568 for (i = 0; i < purb->actual_length/2; i++) in zr364xx_read_video_callback()
592 frm->cur_size = 0; in zr364xx_read_video_callback()
597 header3 = 0; in zr364xx_read_video_callback()
613 psrc[0], psrc[1], psrc[2], in zr364xx_read_video_callback()
637 cam->cur_frame = 0; in zr364xx_read_video_callback()
644 if (*ptr == 0xFF && *(ptr + 1) == 0xD9 in zr364xx_read_video_callback()
645 && *(ptr + 2) == 0xFF) in zr364xx_read_video_callback()
655 if (*ptr == 0xFF && *(ptr + 1) == 0xFF in zr364xx_read_video_callback()
656 && *(ptr + 2) == 0xFF) in zr364xx_read_video_callback()
669 pdest[0], pdest[1], pdest[2], pdest[3], in zr364xx_read_video_callback()
677 frm->cur_size = 0; in zr364xx_read_video_callback()
680 return 0; in zr364xx_read_video_callback()
693 return 0; in zr364xx_vidioc_querycap()
699 if (i->index != 0) in zr364xx_vidioc_enum_input()
703 return 0; in zr364xx_vidioc_enum_input()
709 *i = 0; in zr364xx_vidioc_g_input()
710 return 0; in zr364xx_vidioc_g_input()
716 if (i != 0) in zr364xx_vidioc_s_input()
718 return 0; in zr364xx_vidioc_s_input()
730 send_control_msg(cam->udev, 1, 0x2001, 0, NULL, 0); in zr364xx_s_ctrl()
731 temp = (0x60 << 8) + 127 - ctrl->val; in zr364xx_s_ctrl()
732 send_control_msg(cam->udev, 1, temp, 0, NULL, 0); in zr364xx_s_ctrl()
738 return 0; in zr364xx_s_ctrl()
744 if (f->index > 0) in zr364xx_vidioc_enum_fmt_vid_cap()
746 f->pixelformat = formats[0].fourcc; in zr364xx_vidioc_enum_fmt_vid_cap()
747 return 0; in zr364xx_vidioc_enum_fmt_vid_cap()
752 buf[0] = pixelformat & 0xff; in decode_fourcc()
753 buf[1] = (pixelformat >> 8) & 0xff; in decode_fourcc()
754 buf[2] = (pixelformat >> 16) & 0xff; in decode_fourcc()
755 buf[3] = (pixelformat >> 24) & 0xff; in decode_fourcc()
756 buf[4] = '\0'; in decode_fourcc()
788 return 0; in zr364xx_vidioc_try_fmt_vid_cap()
800 f->fmt.pix.pixelformat = formats[0].fourcc; in zr364xx_vidioc_g_fmt_vid_cap()
807 return 0; in zr364xx_vidioc_g_fmt_vid_cap()
819 if (ret < 0) in zr364xx_vidioc_s_fmt_vid_cap()
850 mode = 0; in zr364xx_vidioc_s_fmt_vid_cap()
852 m0d1[0] = mode; in zr364xx_vidioc_s_fmt_vid_cap()
853 m1[2].value = 0xf000 + mode; in zr364xx_vidioc_s_fmt_vid_cap()
854 m2[1].value = 0xf000 + mode; in zr364xx_vidioc_s_fmt_vid_cap()
860 m2[1].value = 0xf000 + 4; in zr364xx_vidioc_s_fmt_vid_cap()
863 m2[1].value = 0xf000 + 0; in zr364xx_vidioc_s_fmt_vid_cap()
866 m2[1].value = 0xf000 + 1; in zr364xx_vidioc_s_fmt_vid_cap()
876 for (i = 0; init[cam->method][i].size != -1; i++) { in zr364xx_vidioc_s_fmt_vid_cap()
879 0, init[cam->method][i].bytes, in zr364xx_vidioc_s_fmt_vid_cap()
881 if (ret < 0) { in zr364xx_vidioc_s_fmt_vid_cap()
893 ret = 0; in zr364xx_vidioc_s_fmt_vid_cap()
976 if (pipe_info->state == 0) { in read_pipe_completion()
986 if (purb->status == 0) in read_pipe_completion()
1002 if (pipe_info->state != 0) { in read_pipe_completion()
1011 DBG("read pipe complete state 0\n"); in read_pipe_completion()
1023 pipe_info->err_count = 0; in zr364xx_start_readpipe()
1024 pipe_info->stream_urb = usb_alloc_urb(0, GFP_KERNEL); in zr364xx_start_readpipe()
1041 return 0; in zr364xx_start_readpipe()
1055 if (pipe_info->state != 0) in zr364xx_stop_readpipe()
1056 pipe_info->state = 0; in zr364xx_stop_readpipe()
1076 cam->cur_frame = 0; in zr364xx_start_acquire()
1077 for (j = 0; j < FRAMES; j++) { in zr364xx_start_acquire()
1079 cam->buffer.frame[j].cur_size = 0; in zr364xx_start_acquire()
1082 return 0; in zr364xx_start_acquire()
1087 cam->b_acquire = 0; in zr364xx_stop_acquire()
1088 return 0; in zr364xx_stop_acquire()
1096 for (i = 0; init[cam->method][i].size != -1; i++) { in zr364xx_prepare()
1098 0, init[cam->method][i].bytes, in zr364xx_prepare()
1100 if (res < 0) { in zr364xx_prepare()
1109 cam->cur_frame = 0; in zr364xx_prepare()
1110 cam->frame_count = 0; in zr364xx_prepare()
1111 for (j = 0; j < FRAMES; j++) { in zr364xx_prepare()
1113 cam->buffer.frame[j].cur_size = 0; in zr364xx_prepare()
1116 return 0; in zr364xx_prepare()
1137 if (res == 0) { in zr364xx_vidioc_streamon()
1178 err = 0; in zr364xx_open()
1197 for (i = 0; i < FRAMES; i++) { in zr364xx_release()
1230 for (i = 0; i < 2; i++) { in zr364xx_close()
1232 0, init[cam->method][i].bytes, in zr364xx_close()
1260 DBG("vma start=0x%08lx, size=%ld, ret=%d\n", in zr364xx_mmap()
1332 memset(pipe, 0, sizeof(*pipe)); in zr364xx_board_init()
1343 cam->b_acquire = 0; in zr364xx_board_init()
1344 cam->frame_count = 0; in zr364xx_board_init()
1347 for (i = 0; i < FRAMES; i++) { in zr364xx_board_init()
1360 if (i == 0) { in zr364xx_board_init()
1369 for (i = 0; i < FRAMES; i++) { in zr364xx_board_init()
1371 cam->buffer.frame[i].cur_size = 0; in zr364xx_board_init()
1374 cam->cur_frame = 0; in zr364xx_board_init()
1381 return 0; in zr364xx_board_init()
1408 if (err < 0) { in zr364xx_probe()
1416 V4L2_CID_BRIGHTNESS, 0, 127, 1, 64); in zr364xx_probe()
1451 m0d1[0] = mode; in zr364xx_probe()
1452 m1[2].value = 0xf000 + mode; in zr364xx_probe()
1453 m2[1].value = 0xf000 + mode; in zr364xx_probe()
1459 m2[1].value = 0xf000 + 4; in zr364xx_probe()
1462 m2[1].value = 0xf000 + 0; in zr364xx_probe()
1465 m2[1].value = 0xf000 + 1; in zr364xx_probe()
1475 cam->nb = 0; in zr364xx_probe()
1482 for (i = 0; i < iface_desc->desc.bNumEndpoints; ++i) { in zr364xx_probe()
1527 return 0; in zr364xx_probe()
1564 return 0; in zr364xx_suspend()
1567 return 0; in zr364xx_suspend()
1576 return 0; in zr364xx_resume()