34 #include <linux/module.h> 35 #include <linux/init.h> 36 #include <linux/kernel.h> 37 #include <linux/version.h> 38 #include <linux/errno.h> 39 #include <linux/slab.h> 40 #include <linux/kref.h> 42 #include <linux/usb.h> 43 #include <media/v4l2-common.h> 44 #include <media/v4l2-ioctl.h> 74 STK_INFO(
"Initialize USB2.0 Syntek Camera\n");
112 STK_INFO(
"Syntek USB2.0 Camera is ready\n");
136 static const int values_001B[] = {
139 static const int values_001C[] = {
142 static const int values_0202[] = {
145 static const int values_0110[] = {
148 static const int values_0112[] = {
151 static const int values_0114[] = {
154 static const int values_0115[] = {
157 static const int values_0116[] = {
160 static const int values_0117[] = {
163 static const int values_0100[] = {
168 STK_DEBUG(
"dev_stk6d51_configure_device : %d\n", step);
302 static const int values_205[][4] = {
303 { 0x33, 0x86, 0x05, 0x01 },
304 { 0x33, 0x86, 0x05, 0x00 },
305 { 0x33, 0x8c, 0xa1, 0x04 },
307 { 0x30, 0x1a, 0x0a, 0xcc },
308 { 0x32, 0x02, 0x00, 0x08 },
309 { 0x33, 0xf4, 0x03, 0x1d },
310 { 0x33, 0x8c, 0xa1, 0x04 },
312 { 0x33, 0x8c, 0xa1, 0x04 },
314 { 0x33, 0x8c, 0xa1, 0x04 },
316 { 0x34, 0x1e, 0x8f, 0x09 },
317 { 0x34, 0x1c, 0x02, 0x50 },
318 { 0x34, 0x1e, 0x8f, 0x09 },
319 { 0x34, 0x1e, 0x8f, 0x08 },
320 { 0x33, 0x8c, 0x04, 0x00 },
321 { 0x33, 0x90, 0x30, 0x8f },
322 { 0x33, 0x92, 0xc3, 0xff },
323 { 0x33, 0x94, 0xed, 0x8f },
324 { 0x33, 0x96, 0x35, 0x8f },
325 { 0x33, 0x98, 0x18, 0x8f },
326 { 0x33, 0x9a, 0x30, 0x8f },
327 { 0x33, 0x9c, 0xc3, 0x00 },
328 { 0x33, 0x9e, 0x15, 0x8f },
329 { 0x33, 0x8c, 0x04, 0x10 },
330 { 0x33, 0x90, 0xcc, 0x00 },
331 { 0x33, 0x92, 0x07, 0xbd },
332 { 0x33, 0x94, 0x04, 0xb5 },
333 { 0x33, 0x96, 0xbd, 0x9e },
334 { 0x33, 0x98, 0x9f, 0xf6 },
335 { 0x33, 0x9a, 0x03, 0x22 },
336 { 0x33, 0x9c, 0x30, 0xe7 },
337 { 0x33, 0x9e, 0x0a, 0xf6 },
338 { 0x33, 0x8c, 0x04, 0x20 },
339 { 0x33, 0x90, 0x02, 0x39 },
340 { 0x33, 0x92, 0xc1, 0x01 },
341 { 0x33, 0x94, 0x26, 0x05 },
342 { 0x33, 0x96, 0xf6, 0x03 },
343 { 0x33, 0x98, 0x23, 0xe7 },
344 { 0x33, 0x9a, 0x0a, 0x7d },
345 { 0x33, 0x9c, 0x03, 0x21 },
346 { 0x33, 0x9e, 0x27, 0x20 },
347 { 0x33, 0x8c, 0x04, 0x30 },
348 { 0x33, 0x90, 0xf6, 0x02 },
349 { 0x33, 0x92, 0x39, 0xe7 },
350 { 0x33, 0x94, 0x02, 0x8f },
351 { 0x33, 0x96, 0xc3, 0x00 },
352 { 0x33, 0x98, 0x0b, 0x30 },
353 { 0x33, 0x9a, 0xed, 0x00 },
354 { 0x33, 0x9c, 0xfe, 0x02 },
355 { 0x33, 0x9e, 0x37, 0xee },
356 { 0x33, 0x8c, 0x04, 0x40 },
357 { 0x33, 0x90, 0x04, 0x5f },
358 { 0x33, 0x92, 0xad, 0x00 },
359 { 0x33, 0x94, 0x30, 0xe6 },
360 { 0x33, 0x96, 0x0a, 0x4f },
361 { 0x33, 0x98, 0xed, 0x08 },
362 { 0x33, 0x9a, 0xec, 0x11 },
363 { 0x33, 0x9c, 0xa3, 0x08 },
364 { 0x33, 0x9e, 0xdd, 0x56 },
365 { 0x33, 0x8c, 0x04, 0x50 },
366 { 0x33, 0x90, 0x30, 0xc6 },
367 { 0x33, 0x92, 0x13, 0x3a },
368 { 0x33, 0x94, 0x35, 0x39 },
369 { 0x33, 0x96, 0x3c, 0x3c },
370 { 0x33, 0x98, 0x3c, 0xc6 },
371 { 0x33, 0x9a, 0x01, 0xf7 },
372 { 0x33, 0x9c, 0x03, 0x21 },
373 { 0x33, 0x9e, 0xc6, 0x0a },
374 { 0x33, 0x8c, 0x04, 0x60 },
375 { 0x33, 0x90, 0xf7, 0x03 },
376 { 0x33, 0x92, 0x22, 0xf7 },
377 { 0x33, 0x94, 0x03, 0x23 },
378 { 0x33, 0x96, 0xcc, 0x03 },
379 { 0x33, 0x98, 0x03, 0x30 },
380 { 0x33, 0x9a, 0xed, 0x02 },
381 { 0x33, 0x9c, 0xfe, 0x10 },
382 { 0x33, 0x9e, 0x50, 0xec },
383 { 0x33, 0x8c, 0x04, 0x70 },
384 { 0x33, 0x90, 0x04, 0xfd },
385 { 0x33, 0x92, 0x02, 0xff },
386 { 0x33, 0x94, 0xfe, 0x02 },
387 { 0x33, 0x96, 0xff, 0xec },
388 { 0x33, 0x98, 0x00, 0xfd },
389 { 0x33, 0x9a, 0x03, 0x01 },
390 { 0x33, 0x9c, 0x5f, 0x4f },
391 { 0x33, 0x9e, 0x30, 0xed },
392 { 0x33, 0x8c, 0x04, 0x80 },
393 { 0x33, 0x90, 0x04, 0xec },
394 { 0x33, 0x92, 0x04, 0x05 },
395 { 0x33, 0x94, 0xf3, 0x03 },
396 { 0x33, 0x96, 0x01, 0x8f },
397 { 0x33, 0x98, 0xec, 0x00 },
398 { 0x33, 0x9a, 0x30, 0xed },
399 { 0x33, 0x9c, 0x00, 0xec },
400 { 0x33, 0x9e, 0x04, 0x05 },
401 { 0x33, 0x8c, 0x04, 0x90 },
402 { 0x33, 0x90, 0xe3, 0x02 },
403 { 0x33, 0x92, 0x18, 0x8f },
404 { 0x33, 0x94, 0xec, 0x00 },
405 { 0x33, 0x96, 0x18, 0xed },
406 { 0x33, 0x98, 0x00, 0xec },
407 { 0x33, 0x9a, 0x04, 0xc3 },
408 { 0x33, 0x9c, 0x00, 0x01 },
409 { 0x33, 0x9e, 0xed, 0x04 },
410 { 0x33, 0x8c, 0x04, 0xa0 },
411 { 0x33, 0x90, 0x83, 0x00 },
412 { 0x33, 0x92, 0x0f, 0x25 },
413 { 0x33, 0x94, 0xdc, 0xee },
414 { 0x33, 0x96, 0x02, 0xcc },
415 { 0x33, 0x98, 0x04, 0x00 },
416 { 0x33, 0x9a, 0xed, 0x04 },
417 { 0x33, 0x9c, 0xcc, 0x03 },
418 { 0x33, 0x9e, 0x03, 0xdd },
419 { 0x33, 0x8c, 0x04, 0xb0 },
420 { 0x33, 0x90, 0x52, 0x38 },
421 { 0x33, 0x92, 0x38, 0x38 },
422 { 0x33, 0x94, 0x39, 0x37 },
423 { 0x33, 0x96, 0x36, 0x8f },
424 { 0x33, 0x98, 0x30, 0xe3 },
425 { 0x33, 0x9a, 0x00, 0x8f },
426 { 0x33, 0x9c, 0x18, 0x8f },
427 { 0x33, 0x9e, 0x18, 0x30 },
428 { 0x33, 0x8c, 0x04, 0xc0 },
429 { 0x33, 0x90, 0x18, 0xe3 },
430 { 0x33, 0x92, 0x00, 0x18 },
431 { 0x33, 0x94, 0x8f, 0x32 },
432 { 0x33, 0x96, 0x33, 0x36 },
433 { 0x33, 0x98, 0xa6, 0x00 },
434 { 0x33, 0x9a, 0x18, 0xa7 },
435 { 0x33, 0x9c, 0x00, 0x09 },
436 { 0x33, 0x9e, 0x18, 0x09 },
437 { 0x33, 0x8c, 0x04, 0xd0 },
438 { 0x33, 0x90, 0xc0, 0x01 },
439 { 0x33, 0x92, 0x24, 0xf4 },
440 { 0x33, 0x94, 0x32, 0x80 },
441 { 0x33, 0x96, 0x01, 0x24 },
442 { 0x33, 0x98, 0xee, 0x39 },
443 { 0x33, 0x8c, 0x20, 0x03 },
444 { 0x33, 0x90, 0x04, 0x56 },
445 { 0x33, 0x8c, 0xa0, 0x02 },
446 { 0x33, 0x90, 0x00, 0x01 },
447 { 0x33, 0x8c, 0xa1, 0x04 },
449 { 0x34, 0xce, 0x81, 0x60 },
450 { 0x34, 0xd0, 0x66, 0x33 },
451 { 0x34, 0xd2, 0x31, 0x9a },
452 { 0x34, 0xd4, 0x94, 0x63 },
453 { 0x34, 0xd6, 0x4b, 0x25 },
454 { 0x34, 0xd8, 0x26, 0x70 },
455 { 0x34, 0xda, 0x72, 0x4c },
456 { 0x34, 0xdc, 0xff, 0x04 },
457 { 0x34, 0xde, 0x00, 0xf4 },
458 { 0x34, 0xe6, 0x00, 0xcc },
459 { 0x34, 0xee, 0x0e, 0x42 },
460 { 0x34, 0xf6, 0x0d, 0xb5 },
461 { 0x35, 0x00, 0x0a, 0xfa },
462 { 0x35, 0x08, 0x0f, 0x10 },
463 { 0x35, 0x10, 0x11, 0x22 },
464 { 0x35, 0x18, 0x0c, 0x28 },
465 { 0x35, 0x20, 0x1c, 0x2c },
466 { 0x35, 0x28, 0x17, 0x40 },
467 { 0x35, 0x30, 0x08, 0xf2 },
468 { 0x35, 0x38, 0xfb, 0xd5 },
469 { 0x35, 0x4c, 0x05, 0xc7 },
470 { 0x35, 0x44, 0x04, 0xf9 },
471 { 0x35, 0x5c, 0x05, 0xd0 },
472 { 0x35, 0x54, 0x05, 0xf4 },
473 { 0x34, 0xe0, 0x01, 0x05 },
474 { 0x34, 0xe8, 0x00, 0xa0 },
475 { 0x34, 0xf0, 0x0e, 0xa1 },
476 { 0x34, 0xf8, 0x0e, 0x01 },
477 { 0x35, 0x02, 0x0f, 0xeb },
478 { 0x35, 0x0a, 0x09, 0x0a },
479 { 0x35, 0x12, 0x10, 0x1e },
480 { 0x35, 0x1a, 0x08, 0x23 },
481 { 0x35, 0x22, 0x1c, 0x22 },
482 { 0x35, 0x2a, 0x07, 0x22 },
483 { 0x35, 0x32, 0x0b, 0x06 },
484 { 0x35, 0x3a, 0xf9, 0x16 },
485 { 0x35, 0x4e, 0x05, 0x9f },
486 { 0x35, 0x46, 0x05, 0x30 },
487 { 0x35, 0x5e, 0x06, 0x75 },
488 { 0x35, 0x56, 0x06, 0x5c },
489 { 0x34, 0xe4, 0x00, 0xc5 },
490 { 0x34, 0xec, 0x00, 0x48 },
491 { 0x34, 0xf4, 0x0f, 0x66 },
492 { 0x34, 0xfc, 0x0e, 0x61 },
493 { 0x35, 0x06, 0x1b, 0xdb },
494 { 0x35, 0x0e, 0x04, 0x0a },
495 { 0x35, 0x16, 0x11, 0x13 },
496 { 0x35, 0x1e, 0x08, 0x1f },
497 { 0x35, 0x26, 0x11, 0x19 },
498 { 0x35, 0x2e, 0xf8, 0x1a },
499 { 0x35, 0x36, 0x04, 0x0c },
500 { 0x35, 0x3e, 0xfa, 0x00 },
501 { 0x35, 0x52, 0x06, 0xf1 },
502 { 0x35, 0x4a, 0x04, 0x0e },
503 { 0x35, 0x62, 0x06, 0xa1 },
504 { 0x35, 0x5a, 0x06, 0x91 },
505 { 0x34, 0xe2, 0x00, 0xd2 },
506 { 0x34, 0xea, 0x00, 0x72 },
507 { 0x34, 0xf2, 0x0e, 0x1d },
508 { 0x34, 0xfa, 0x0e, 0x06 },
509 { 0x35, 0x04, 0x13, 0x0e },
510 { 0x35, 0x0c, 0x0f, 0x0d },
511 { 0x35, 0x14, 0x13, 0x1c },
512 { 0x35, 0x1c, 0x13, 0x29 },
513 { 0x35, 0x24, 0x0d, 0x24 },
514 { 0x35, 0x2c, 0xfd, 0x29 },
515 { 0x35, 0x34, 0x07, 0xf4 },
516 { 0x35, 0x3c, 0xee, 0xe7 },
517 { 0x35, 0x50, 0x06, 0x50 },
518 { 0x35, 0x48, 0x05, 0xc1 },
519 { 0x35, 0x60, 0x06, 0x11 },
520 { 0x35, 0x58, 0x06, 0x58 },
521 { 0x35, 0x40, 0x00, 0x00 },
522 { 0x35, 0x42, 0x00, 0x00 },
523 { 0x32, 0x10, 0x01, 0xfc },
524 { 0x33, 0x8c, 0xa3, 0x52 },
525 { 0x33, 0x90, 0x00, 0x3c },
526 { 0x33, 0x8c, 0xa1, 0x18 },
527 { 0x33, 0x90, 0x00, 0x3c },
528 { 0x33, 0x8c, 0xa1, 0x19 },
529 { 0x33, 0x90, 0x00, 0x0a },
530 { 0x33, 0x8c, 0xa7, 0x6d },
531 { 0x33, 0x90, 0x00, 0x03 },
532 { 0x33, 0x8c, 0xa7, 0x6e },
533 { 0x33, 0x90, 0x00, 0x03 },
534 { 0x33, 0x8c, 0xa7, 0x6f },
535 { 0x33, 0x90, 0x00, 0x00 },
536 { 0x33, 0x8c, 0xa7, 0x70 },
537 { 0x33, 0x90, 0x00, 0x05 },
538 { 0x33, 0x8c, 0xa7, 0x71 },
539 { 0x33, 0x90, 0x00, 0x10 },
540 { 0x33, 0x8c, 0xa7, 0x72 },
541 { 0x33, 0x90, 0x00, 0x30 },
542 { 0x33, 0x8c, 0xa7, 0x73 },
543 { 0x33, 0x90, 0x00, 0x5b },
544 { 0x33, 0x8c, 0xa7, 0x74 },
545 { 0x33, 0x90, 0x00, 0x77 },
546 { 0x33, 0x8c, 0xa7, 0x75 },
547 { 0x33, 0x90, 0x00, 0x8e },
548 { 0x33, 0x8c, 0xa7, 0x76 },
549 { 0x33, 0x90, 0x00, 0xa0 },
550 { 0x33, 0x8c, 0xa7, 0x77 },
551 { 0x33, 0x90, 0x00, 0xaf },
552 { 0x33, 0x8c, 0xa7, 0x78 },
553 { 0x33, 0x90, 0x00, 0xbc },
554 { 0x33, 0x8c, 0xa7, 0x79 },
555 { 0x33, 0x90, 0x00, 0xc7 },
556 { 0x33, 0x8c, 0xa7, 0x7a },
557 { 0x33, 0x90, 0x00, 0xd0 },
558 { 0x33, 0x8c, 0xa7, 0x7b },
559 { 0x33, 0x90, 0x00, 0xd9 },
560 { 0x33, 0x8c, 0xa7, 0x7c },
561 { 0x33, 0x90, 0x00, 0xe0 },
562 { 0x33, 0x8c, 0xa7, 0x7d },
563 { 0x33, 0x90, 0x00, 0xe8 },
564 { 0x33, 0x8c, 0xa7, 0x7e },
565 { 0x33, 0x90, 0x00, 0xee },
566 { 0x33, 0x8c, 0xa7, 0x7f },
567 { 0x33, 0x90, 0x00, 0xf4 },
568 { 0x33, 0x8c, 0xa7, 0x80 },
569 { 0x33, 0x90, 0x00, 0xfa },
570 { 0x33, 0x8c, 0xa7, 0x81 },
571 { 0x33, 0x90, 0x00, 0xff },
572 { 0x33, 0x8c, 0xa7, 0x82 },
573 { 0x33, 0x90, 0x00, 0x00 },
574 { 0x33, 0x8c, 0xa7, 0x83 },
575 { 0x33, 0x90, 0x00, 0x05 },
576 { 0x33, 0x8c, 0xa7, 0x84 },
577 { 0x33, 0x90, 0x00, 0x10 },
578 { 0x33, 0x8c, 0xa7, 0x85 },
579 { 0x33, 0x90, 0x00, 0x30 },
580 { 0x33, 0x8c, 0xa7, 0x86 },
581 { 0x33, 0x90, 0x00, 0x5b },
582 { 0x33, 0x8c, 0xa7, 0x87 },
583 { 0x33, 0x90, 0x00, 0x77 },
584 { 0x33, 0x8c, 0xa7, 0x88 },
585 { 0x33, 0x90, 0x00, 0x8e },
586 { 0x33, 0x8c, 0xa7, 0x89 },
587 { 0x33, 0x90, 0x00, 0xa0 },
588 { 0x33, 0x8c, 0xa7, 0x8a },
589 { 0x33, 0x90, 0x00, 0xaf },
590 { 0x33, 0x8c, 0xa7, 0x8b },
591 { 0x33, 0x90, 0x00, 0xbc },
592 { 0x33, 0x8c, 0xa7, 0x8c },
593 { 0x33, 0x90, 0x00, 0xc7 },
594 { 0x33, 0x8c, 0xa7, 0x8d },
595 { 0x33, 0x90, 0x00, 0xd0 },
596 { 0x33, 0x8c, 0xa7, 0x8e },
597 { 0x33, 0x90, 0x00, 0xd9 },
598 { 0x33, 0x8c, 0xa7, 0x8f },
599 { 0x33, 0x90, 0x00, 0xe0 },
600 { 0x33, 0x8c, 0xa7, 0x90 },
601 { 0x33, 0x90, 0x00, 0xe8 },
602 { 0x33, 0x8c, 0xa7, 0x91 },
603 { 0x33, 0x90, 0x00, 0xee },
604 { 0x33, 0x8c, 0xa7, 0x92 },
605 { 0x33, 0x90, 0x00, 0xf4 },
606 { 0x33, 0x8c, 0xa7, 0x93 },
607 { 0x33, 0x90, 0x00, 0xfa },
608 { 0x33, 0x8c, 0xa7, 0x94 },
609 { 0x33, 0x90, 0x00, 0xff },
610 { 0x33, 0x8c, 0xa1, 0x03 },
611 { 0x33, 0x90, 0x00, 0x05 },
612 { 0x33, 0x8c, 0xa1, 0x04 },
614 { 0x33, 0x8c, 0xa2, 0x06 },
615 { 0x33, 0x90, 0x00, 0x50 },
616 { 0x33, 0x8c, 0x27, 0x03 },
617 { 0x33, 0x90, 0x02, 0x82 },
618 { 0x33, 0x8c, 0x27, 0x05 },
619 { 0x33, 0x90, 0x01, 0xe2 },
620 { 0x33, 0x8c, 0x27, 0x07 },
621 { 0x33, 0x90, 0x05, 0x02 },
622 { 0x33, 0x8c, 0x27, 0x09 },
623 { 0x33, 0x90, 0x04, 0x02 },
624 { 0x33, 0x8c, 0x27, 0x0d },
625 { 0x33, 0x90, 0x00, 0x00 },
626 { 0x33, 0x8c, 0x27, 0x0f },
627 { 0x33, 0x90, 0x00, 0x00 },
628 { 0x33, 0x8c, 0x27, 0x11 },
629 { 0x33, 0x90, 0x04, 0xbd },
630 { 0x33, 0x8c, 0x27, 0x13 },
631 { 0x33, 0x90, 0x06, 0x4d },
632 { 0x33, 0x8c, 0x27, 0x15 },
633 { 0x33, 0x90, 0x04, 0x00 },
634 { 0x33, 0x8c, 0x27, 0x17 },
635 { 0x33, 0x90, 0x21, 0x11 },
636 { 0x33, 0x8c, 0x27, 0x19 },
637 { 0x33, 0x90, 0x04, 0x6c },
638 { 0x33, 0x8c, 0x27, 0x1b },
639 { 0x33, 0x90, 0x02, 0x4f },
640 { 0x33, 0x8c, 0x27, 0x1d },
641 { 0x33, 0x90, 0x01, 0x02 },
642 { 0x33, 0x8c, 0x27, 0x1f },
643 { 0x33, 0x90, 0x02, 0x79 },
644 { 0x33, 0x8c, 0x27, 0x21 },
645 { 0x33, 0x90, 0x01, 0x55 },
646 { 0x33, 0x8c, 0x27, 0x23 },
647 { 0x33, 0x90, 0x03, 0x5b },
648 { 0x33, 0x8c, 0x27, 0x25 },
649 { 0x33, 0x90, 0x06, 0x0f },
650 { 0x33, 0x8c, 0x27, 0x27 },
651 { 0x33, 0x90, 0x20, 0x20 },
652 { 0x33, 0x8c, 0x27, 0x29 },
653 { 0x33, 0x90, 0x20, 0x20 },
654 { 0x33, 0x8c, 0x27, 0x2b },
655 { 0x33, 0x90, 0x10, 0x20 },
656 { 0x33, 0x8c, 0x27, 0x2d },
657 { 0x33, 0x90, 0x20, 0x07 },
658 { 0x33, 0x8c, 0x27, 0x2f },
659 { 0x33, 0x90, 0x00, 0x04 },
660 { 0x33, 0x8c, 0x27, 0x31 },
661 { 0x33, 0x90, 0x00, 0x04 },
662 { 0x33, 0x8c, 0x27, 0x33 },
663 { 0x33, 0x90, 0x04, 0xbb },
664 { 0x33, 0x8c, 0x27, 0x35 },
665 { 0x33, 0x90, 0x06, 0x4b },
666 { 0x33, 0x8c, 0x27, 0x37 },
667 { 0x33, 0x90, 0x04, 0xce },
668 { 0x33, 0x8c, 0x27, 0x39 },
669 { 0x33, 0x90, 0x21, 0x11 },
670 { 0x33, 0x8c, 0x27, 0x3b },
671 { 0x33, 0x90, 0x00, 0x24 },
672 { 0x33, 0x8c, 0x27, 0x3d },
673 { 0x33, 0x90, 0x01, 0x20 },
674 { 0x33, 0x8c, 0x27, 0x41 },
675 { 0x33, 0x90, 0x01, 0x69 },
676 { 0x33, 0x8c, 0x27, 0x45 },
677 { 0x33, 0x90, 0x04, 0xff },
678 { 0x33, 0x8c, 0x27, 0x47 },
679 { 0x33, 0x90, 0x08, 0x24 },
680 { 0x33, 0x8c, 0x27, 0x51 },
681 { 0x33, 0x90, 0x00, 0x00 },
682 { 0x33, 0x8c, 0x27, 0x53 },
683 { 0x33, 0x90, 0x03, 0x20 },
684 { 0x33, 0x8c, 0x27, 0x55 },
685 { 0x33, 0x90, 0x00, 0x00 },
686 { 0x33, 0x8c, 0x27, 0x57 },
687 { 0x33, 0x90, 0x02, 0x58 },
688 { 0x33, 0x8c, 0x27, 0x5f },
689 { 0x33, 0x90, 0x00, 0x00 },
690 { 0x33, 0x8c, 0x27, 0x61 },
691 { 0x33, 0x90, 0x06, 0x40 },
692 { 0x33, 0x8c, 0x27, 0x63 },
693 { 0x33, 0x90, 0x00, 0x00 },
694 { 0x33, 0x8c, 0x27, 0x65 },
695 { 0x33, 0x90, 0x04, 0xb0 },
696 { 0x33, 0x8c, 0x22, 0x2e },
697 { 0x33, 0x90, 0x00, 0xd7 },
698 { 0x33, 0x8c, 0xa4, 0x08 },
699 { 0x33, 0x90, 0x00, 0x2a },
700 { 0x33, 0x8c, 0xa4, 0x09 },
701 { 0x33, 0x90, 0x00, 0x2c },
702 { 0x33, 0x8c, 0xa4, 0x0a },
703 { 0x33, 0x90, 0x00, 0x32 },
704 { 0x33, 0x8c, 0xa4, 0x0b },
705 { 0x33, 0x90, 0x00, 0x34 },
706 { 0x33, 0x8c, 0x24, 0x11 },
707 { 0x33, 0x90, 0x00, 0xd7 },
708 { 0x33, 0x8c, 0x24, 0x13 },
709 { 0x33, 0x90, 0x01, 0x02 },
710 { 0x33, 0x8c, 0x24, 0x15 },
711 { 0x33, 0x90, 0x00, 0xa0 },
712 { 0x33, 0x8c, 0x24, 0x17 },
713 { 0x33, 0x90, 0x00, 0xc0 },
714 { 0x33, 0x8c, 0x27, 0x99 },
715 { 0x33, 0x90, 0x64, 0x08 },
716 { 0x33, 0x8c, 0x27, 0x9b },
717 { 0x33, 0x90, 0x64, 0x08 },
718 { 0x33, 0x8c, 0xa2, 0x0c },
719 { 0x33, 0x90, 0x00, 0x18 },
720 { 0x33, 0x8c, 0xa2, 0x14 },
721 { 0x33, 0x90, 0x00, 0x24 },
722 { 0x33, 0x8c, 0xa2, 0x15 },
723 { 0x33, 0x90, 0x00, 0x02 },
724 { 0x33, 0x8c, 0xa2, 0x0d },
725 { 0x33, 0x90, 0x00, 0x10 },
726 { 0x33, 0x8c, 0xa2, 0x0e },
727 { 0x33, 0x90, 0x00, 0x80 },
728 { 0x33, 0x8c, 0xa1, 0x03 },
729 { 0x33, 0x90, 0x00, 0x05 },
730 { 0x33, 0x8c, 0xa1, 0x04 },
732 { 0x33, 0x8c, 0xa1, 0x03 },
733 { 0x33, 0x90, 0x00, 0x06 },
734 { 0x33, 0x8c, 0xa1, 0x04 },
736 { 0x33, 0x8c, 0xa1, 0x30 },
737 { 0x33, 0x90, 0x00, 0x04 },
738 { 0x33, 0x8c, 0xa1, 0x15 },
739 { 0x33, 0x90, 0x00, 0xef },
740 { 0x33, 0x8c, 0xa1, 0x16 },
741 { 0x33, 0x90, 0x00, 0x30 },
742 { 0x33, 0x8c, 0xa1, 0x17 },
743 { 0x33, 0x90, 0x00, 0x55 },
744 { 0x33, 0x8c, 0xa1, 0x18 },
745 { 0x33, 0x90, 0x00, 0x5a },
746 { 0x33, 0x8c, 0xa1, 0x19 },
747 { 0x33, 0x90, 0x00, 0x28 },
748 { 0x33, 0x8c, 0xa1, 0x1a },
749 { 0x33, 0x90, 0x00, 0x08 },
750 { 0x33, 0x8c, 0xa1, 0x1b },
751 { 0x33, 0x90, 0x00, 0x1e },
752 { 0x33, 0x8c, 0xa1, 0x1c },
753 { 0x33, 0x90, 0x00, 0x02 },
754 { 0x33, 0x8c, 0xa1, 0x1d },
755 { 0x33, 0x90, 0x00, 0x00 },
756 { 0x33, 0x8c, 0xa1, 0x1e },
757 { 0x33, 0x90, 0x00, 0x00 },
758 { 0x33, 0x8c, 0xa1, 0x1f },
759 { 0x33, 0x90, 0x00, 0x04 },
760 { 0x33, 0x8c, 0xab, 0x05 },
761 { 0x33, 0x90, 0x00, 0x00 },
762 { 0x33, 0x8c, 0xa7, 0x6d },
763 { 0x33, 0x90, 0x00, 0x03 },
764 { 0x33, 0x8c, 0xa7, 0x6e },
765 { 0x33, 0x90, 0x00, 0x03 },
766 { 0x33, 0x8c, 0xa7, 0x6f },
767 { 0x33, 0x90, 0x00, 0x00 },
768 { 0x33, 0x8c, 0xa7, 0x70 },
769 { 0x33, 0x90, 0x00, 0x15 },
770 { 0x33, 0x8c, 0xa7, 0x71 },
771 { 0x33, 0x90, 0x00, 0x25 },
772 { 0x33, 0x8c, 0xa7, 0x72 },
773 { 0x33, 0x90, 0x00, 0x3f },
774 { 0x33, 0x8c, 0xa7, 0x73 },
775 { 0x33, 0x90, 0x00, 0x64 },
776 { 0x33, 0x8c, 0xa7, 0x74 },
777 { 0x33, 0x90, 0x00, 0x80 },
778 { 0x33, 0x8c, 0xa7, 0x75 },
779 { 0x33, 0x90, 0x00, 0x97 },
780 { 0x33, 0x8c, 0xa7, 0x76 },
781 { 0x33, 0x90, 0x00, 0xa9 },
782 { 0x33, 0x8c, 0xa7, 0x77 },
783 { 0x33, 0x90, 0x00, 0xba },
784 { 0x33, 0x8c, 0xa7, 0x78 },
785 { 0x33, 0x90, 0x00, 0xc7 },
786 { 0x33, 0x8c, 0xa7, 0x79 },
787 { 0x33, 0x90, 0x00, 0xd2 },
788 { 0x33, 0x8c, 0xa7, 0x7a },
789 { 0x33, 0x90, 0x00, 0xdc },
790 { 0x33, 0x8c, 0xa7, 0x7b },
791 { 0x33, 0x90, 0x00, 0xe4 },
792 { 0x33, 0x8c, 0xa7, 0x7c },
793 { 0x33, 0x90, 0x00, 0xea },
794 { 0x33, 0x8c, 0xa7, 0x7d },
795 { 0x33, 0x90, 0x00, 0xf0 },
796 { 0x33, 0x8c, 0xa7, 0x7e },
797 { 0x33, 0x90, 0x00, 0xf4 },
798 { 0x33, 0x8c, 0xa7, 0x7f },
799 { 0x33, 0x90, 0x00, 0xf8 },
800 { 0x33, 0x8c, 0xa7, 0x80 },
801 { 0x33, 0x90, 0x00, 0xfc },
802 { 0x33, 0x8c, 0xa7, 0x81 },
803 { 0x33, 0x90, 0x00, 0xff },
804 { 0x33, 0x8c, 0xa7, 0x82 },
805 { 0x33, 0x90, 0x00, 0x00 },
806 { 0x33, 0x8c, 0xa7, 0x83 },
807 { 0x33, 0x90, 0x00, 0x15 },
808 { 0x33, 0x8c, 0xa7, 0x84 },
809 { 0x33, 0x90, 0x00, 0x25 },
810 { 0x33, 0x8c, 0xa7, 0x85 },
811 { 0x33, 0x90, 0x00, 0x3f },
812 { 0x33, 0x8c, 0xa7, 0x86 },
813 { 0x33, 0x90, 0x00, 0x64 },
814 { 0x33, 0x8c, 0xa7, 0x87 },
815 { 0x33, 0x90, 0x00, 0x80 },
816 { 0x33, 0x8c, 0xa7, 0x88 },
817 { 0x33, 0x90, 0x00, 0x97 },
818 { 0x33, 0x8c, 0xa7, 0x89 },
819 { 0x33, 0x90, 0x00, 0xa9 },
820 { 0x33, 0x8c, 0xa7, 0x8a },
821 { 0x33, 0x90, 0x00, 0xba },
822 { 0x33, 0x8c, 0xa7, 0x8b },
823 { 0x33, 0x90, 0x00, 0xc7 },
824 { 0x33, 0x8c, 0xa7, 0x8c },
825 { 0x33, 0x90, 0x00, 0xd2 },
826 { 0x33, 0x8c, 0xa7, 0x8d },
827 { 0x33, 0x90, 0x00, 0xdc },
828 { 0x33, 0x8c, 0xa7, 0x8e },
829 { 0x33, 0x90, 0x00, 0xe4 },
830 { 0x33, 0x8c, 0xa7, 0x8f },
831 { 0x33, 0x90, 0x00, 0xea },
832 { 0x33, 0x8c, 0xa7, 0x90 },
833 { 0x33, 0x90, 0x00, 0xf0 },
834 { 0x33, 0x8c, 0xa7, 0x91 },
835 { 0x33, 0x90, 0x00, 0xf4 },
836 { 0x33, 0x8c, 0xa7, 0x92 },
837 { 0x33, 0x90, 0x00, 0xf8 },
838 { 0x33, 0x8c, 0xa7, 0x93 },
839 { 0x33, 0x90, 0x00, 0xfc },
840 { 0x33, 0x8c, 0xa7, 0x94 },
841 { 0x33, 0x90, 0x00, 0xff },
842 { 0x33, 0x8c, 0xa1, 0x03 },
843 { 0x33, 0x90, 0x00, 0x06 },
844 { 0x33, 0x8c, 0xa1, 0x04 },
846 { 0x35, 0xa4, 0x05, 0x96 },
847 { 0x33, 0x8c, 0xa1, 0x18 },
848 { 0x33, 0x90, 0x00, 0x1e },
849 { 0x33, 0x8c, 0xa1, 0x19 },
850 { 0x33, 0x90, 0x00, 0x04 },
851 { 0x33, 0x8c, 0xa1, 0x1a },
852 { 0x33, 0x90, 0x00, 0x0a },
853 { 0x33, 0x8c, 0xa1, 0x1b },
854 { 0x33, 0x90, 0x00, 0x20 },
855 { 0x33, 0x8c, 0xa1, 0x3e },
856 { 0x33, 0x90, 0x00, 0x04 },
857 { 0x33, 0x8c, 0xa1, 0x3f },
858 { 0x33, 0x90, 0x00, 0x0e },
859 { 0x33, 0x8c, 0xa1, 0x40 },
860 { 0x33, 0x90, 0x00, 0x04 },
861 { 0x33, 0x8c, 0xa1, 0x41 },
862 { 0x33, 0x90, 0x00, 0x04 },
863 { 0x33, 0x8c, 0xa1, 0x42 },
864 { 0x33, 0x90, 0x00, 0x32 },
865 { 0x33, 0x8c, 0xa1, 0x43 },
866 { 0x33, 0x90, 0x00, 0x0f },
867 { 0x33, 0x8c, 0xa1, 0x44 },
868 { 0x33, 0x90, 0x00, 0x32 },
869 { 0x33, 0x8c, 0xa1, 0x45 },
870 { 0x33, 0x90, 0x00, 0x32 },
871 { 0x33, 0x8c, 0xa1, 0x46 },
872 { 0x33, 0x90, 0x00, 0x05 },
873 { 0x33, 0x8c, 0xa1, 0x04 },
875 { 0x33, 0x8c, 0xa1, 0x47 },
876 { 0x33, 0x90, 0x00, 0x3a },
877 { 0x33, 0x8c, 0x27, 0x95 },
878 { 0x33, 0x90, 0x01, 0x00 },
879 { 0x33, 0x8c, 0xa1, 0x03 },
880 { 0x33, 0x90, 0x00, 0x05 },
881 { 0x33, 0x8c, 0xa1, 0x04 },
883 { 0x33, 0x8c, 0x27, 0x97 },
884 { 0x33, 0x90, 0x01, 0x00 },
885 { 0x33, 0x8c, 0xa1, 0x03 },
886 { 0x33, 0x90, 0x00, 0x05 },
887 { 0x33, 0x8c, 0xa1, 0x04 },
889 { 0x33, 0x8c, 0xa4, 0x04 },
890 { 0x33, 0x90, 0x00, 0xc0 },
891 { 0x33, 0x8c, 0xa1, 0x03 },
892 { 0x33, 0x90, 0x00, 0x05 },
893 { 0x33, 0x8c, 0xa1, 0x04 },
895 { 0x33, 0x8c, 0xa2, 0x06 },
896 { 0x33, 0x90, 0x00, 0x50 },
897 { 0x33, 0x8c, 0xa2, 0x0c },
898 { 0x33, 0x90, 0x00, 0x18 },
899 { 0x33, 0x8c, 0xa2, 0x15 },
900 { 0x33, 0x90, 0x00, 0x02 },
901 { 0x33, 0x8c, 0xa2, 0x0d },
902 { 0x33, 0x90, 0x00, 0x10 },
903 { 0x33, 0x8c, 0xa2, 0x0e },
904 { 0x33, 0x90, 0x00, 0x80 },
905 { 0x33, 0x8c, 0xa4, 0x04 },
906 { 0x33, 0x90, 0x00, 0xc0 },
907 { 0x33, 0x8c, 0xa1, 0x03 },
908 { 0x33, 0x90, 0x00, 0x05 },
909 { 0x33, 0x8c, 0xa1, 0x04 },
914 asize = ARRAY_SIZE(values_205);
916 for(i=0; i<asize; i++) {
925 if (values_205[i][2] == -1) {
int dev_stk6d51_configure_device(struct usb_stk11xx *dev, int step)
This function permits to configure the device.
int dev_stk11xx_camera_settings(struct usb_stk11xx *dev)
This function permits to modify the settings of the camera.
int dev_stk6d51_init_camera(struct usb_stk11xx *dev)
This function initializes the device for the stream.
int dev_stk6d51_stop_stream(struct usb_stk11xx *dev)
This function sets the device to stop the stream.
#define STK_DEBUG(str, args...)
int dev_stk6d51_sensor_settings(struct usb_stk11xx *dev)
This function permits to set default sensor settings.
int dev_stk6d51_set_camera_fps(struct usb_stk11xx *dev)
This function permits to modify the settings of the camera.
struct stk11xx_video vsettings
int dev_stk6d51_camera_settings(struct usb_stk11xx *dev)
This function permits to modify the settings of the camera.
int dev_stk11xx_check_device(struct usb_stk11xx *dev, int nbr)
This function permits to check the device in reading the register 0x0201.
int dev_stk6d51_camera_asleep(struct usb_stk11xx *dev)
Wake-up the camera.
int usb_stk11xx_set_feature(struct usb_stk11xx *dev, int index)
Send the message SET_FEATURE and choose the interface.
int dev_stk6d51_set_camera_quality(struct usb_stk11xx *dev)
This function permits to modify the settings of the camera.
int dev_stk6d51_start_stream(struct usb_stk11xx *dev)
This function sets the device to start the stream.
#define STK_INFO(str, args...)
int dev_stk6d51_initialize_device(struct usb_stk11xx *dev)
This function permits to initialize the device.
int usb_stk11xx_write_registry(struct usb_stk11xx *dev, __u16 index, __u16 value)
Write a 16-bits value to a 16-bits register.
int usb_stk11xx_read_registry(struct usb_stk11xx *dev, __u16 index, int *value)
Read a 16-bits value from a 16-bits register.
Driver for Syntek USB video camera.
int dev_stk6d51_reconf_camera(struct usb_stk11xx *dev)
Reconfigure the camera before the stream.
Driver for Syntek USB video camera.