SyntekUSBVideoCamera
stk11xx-dev-6d51.c
Go to the documentation of this file.
1 
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>
41 
42 #include <linux/usb.h>
43 #include <media/v4l2-common.h>
44 #include <media/v4l2-ioctl.h>
45 
46 #include "stk11xx.h"
47 #include "stk11xx-dev.h"
48 
49 
50 //=============================================================================
51 //
52 // STK-6D51 API
53 //
54 //=============================================================================
55 
56 
71 {
72  int value;
73 
74  STK_INFO("Initialize USB2.0 Syntek Camera\n");
75 
76  usb_stk11xx_write_registry(dev, 0x0000, 0x00e0);
77  usb_stk11xx_write_registry(dev, 0x0002, 0x00f8);
78  usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
79  usb_stk11xx_write_registry(dev, 0x0000, 0x0020);
80 
82 
83  dev_stk11xx_check_device(dev, 65);
84  usb_stk11xx_read_registry(dev, 0x0209, &value);
85  usb_stk11xx_write_registry(dev, 0x0200, 0x0020);
86  dev_stk11xx_check_device(dev, 65);
87  usb_stk11xx_read_registry(dev, 0x0209, &value);
88  usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
89  usb_stk11xx_write_registry(dev, 0x02ff, 0x0000);
90 
92 
93  usb_stk11xx_write_registry(dev, 0x0000, 0x00e0);
94  usb_stk11xx_write_registry(dev, 0x0002, 0x00f8);
95  usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
96  usb_stk11xx_write_registry(dev, 0x0000, 0x0020);
97  usb_stk11xx_write_registry(dev, 0x0000, 0x00e0);
98  usb_stk11xx_write_registry(dev, 0x0002, 0x00f8);
99  usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
100  usb_stk11xx_write_registry(dev, 0x0000, 0x0020);
101  usb_stk11xx_write_registry(dev, 0x0000, 0x00e0);
102  usb_stk11xx_write_registry(dev, 0x0002, 0x00f8);
103  usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
104  usb_stk11xx_write_registry(dev, 0x0000, 0x0020);
105  usb_stk11xx_read_registry(dev, 0x02ff, &value);
106 
108 
109  usb_stk11xx_set_feature(dev, 0);
110 
111  // Device is initialized and is ready !!!
112  STK_INFO("Syntek USB2.0 Camera is ready\n");
113 
114  return 0;
115 }
116 
117 
131 int dev_stk6d51_configure_device(struct usb_stk11xx *dev, int step)
132 {
133  int value;
134 
135  // 0, 1
136  static const int values_001B[] = {
137  0x0e, 0x0e
138  };
139  static const int values_001C[] = {
140  0x46, 0x46
141  };
142  static const int values_0202[] = {
143  0x0a, 0x0a
144  };
145  static const int values_0110[] = {
146  0x00, 0x00
147  };
148  static const int values_0112[] = {
149  0x01, 0x01
150  };
151  static const int values_0114[] = {
152  0x80, 0x80
153  };
154  static const int values_0115[] = {
155  0x02, 0x02
156  };
157  static const int values_0116[] = {
158  0xe1, 0xe1
159  };
160  static const int values_0117[] = {
161  0x01, 0x01
162  };
163  static const int values_0100[] = {
164  0x20, 0x20
165  };
166 
167 
168  STK_DEBUG("dev_stk6d51_configure_device : %d\n", step);
169 
170  usb_stk11xx_write_registry(dev, 0x0000, 0x0024);
171  usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
172  usb_stk11xx_write_registry(dev, 0x0003, 0x0080);
173  usb_stk11xx_write_registry(dev, 0x0005, 0x0000);
174 
175  usb_stk11xx_write_registry(dev, 0x0007, 0x0003);
176  usb_stk11xx_write_registry(dev, 0x000d, 0x0000);
177  usb_stk11xx_write_registry(dev, 0x000f, 0x0002);
178  usb_stk11xx_write_registry(dev, 0x0300, 0x0012);
179  usb_stk11xx_write_registry(dev, 0x0350, 0x0041);
180 
181  usb_stk11xx_write_registry(dev, 0x0351, 0x0000);
182  usb_stk11xx_write_registry(dev, 0x0352, 0x0000);
183  usb_stk11xx_write_registry(dev, 0x0353, 0x0000);
184  usb_stk11xx_write_registry(dev, 0x0018, 0x0010);
185  usb_stk11xx_write_registry(dev, 0x0019, 0x0000);
186 
187  usb_stk11xx_write_registry(dev, 0x001b, values_001B[step]);
188  usb_stk11xx_write_registry(dev, 0x001c, values_001C[step]);
189  usb_stk11xx_write_registry(dev, 0x0300, 0x0080);
190  usb_stk11xx_write_registry(dev, 0x001a, 0x0004);
191  usb_stk11xx_write_registry(dev, 0x0202, values_0202[step]);
192 
193  usb_stk11xx_write_registry(dev, 0x0110, values_0110[step]);
194  usb_stk11xx_write_registry(dev, 0x0111, 0x0000);
195  usb_stk11xx_write_registry(dev, 0x0112, values_0112[step]);
196  usb_stk11xx_write_registry(dev, 0x0113, 0x0000);
197  usb_stk11xx_write_registry(dev, 0x0114, values_0114[step]);
198 
199  usb_stk11xx_write_registry(dev, 0x0115, values_0115[step]);
200  usb_stk11xx_write_registry(dev, 0x0116, values_0116[step]);
201  usb_stk11xx_write_registry(dev, 0x0117, values_0117[step]);
202 
203  usb_stk11xx_read_registry(dev, 0x0100, &value);
204  usb_stk11xx_write_registry(dev, 0x0100, values_0100[step]);
205 
206  usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
207 
208 
209  switch (step) {
210  case 0:
211  usb_stk11xx_write_registry(dev, 0x0203, 0x007a);
212 
213  usb_stk11xx_read_registry(dev, 0x02ff, &value);
214  usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
215 
216  usb_stk11xx_write_registry(dev, 0x0203, 0x007a);
217 
218  usb_stk11xx_write_registry(dev, 0x0205, 0x0030);
219  usb_stk11xx_write_registry(dev, 0x0205, 0x0000);
220 
221  usb_stk11xx_write_registry(dev, 0x0200, 0x0061);
222 
223  break;
224 
225  case 1:
226  usb_stk11xx_write_registry(dev, 0x0203, 0x007a);
227 
229 
230  usb_stk11xx_read_registry(dev, 0x0000, &value);
231  usb_stk11xx_write_registry(dev, 0x0200, 0x0021);
232 
233  break;
234  }
235 
236  return 0;
237 }
238 
239 
250 {
251  int value;
252 
253  usb_stk11xx_read_registry(dev, 0x0104, &value);
254  usb_stk11xx_read_registry(dev, 0x0105, &value);
255  usb_stk11xx_read_registry(dev, 0x0106, &value);
256 
257  usb_stk11xx_write_registry(dev, 0x0100, 0x0021);
258  usb_stk11xx_write_registry(dev, 0x0116, 0x0000);
259  usb_stk11xx_write_registry(dev, 0x0117, 0x0000);
260  usb_stk11xx_write_registry(dev, 0x0018, 0x0000);
261 
262  usb_stk11xx_read_registry(dev, 0x0000, &value);
263  usb_stk11xx_write_registry(dev, 0x0000, 0x0049);
264 
265  return 0;
266 }
267 
268 
280 {
281  return 0;
282 }
283 
284 
296 {
297  int i;
298  int value;
299 
300  int asize;
301 
302  static const int values_205[][4] = {
303  { 0x33, 0x86, 0x05, 0x01 },
304  { 0x33, 0x86, 0x05, 0x00 },
305  { 0x33, 0x8c, 0xa1, 0x04 },
306  { 0x33, 0x90, -1 },
307  { 0x30, 0x1a, 0x0a, 0xcc },
308  { 0x32, 0x02, 0x00, 0x08 },
309  { 0x33, 0xf4, 0x03, 0x1d },
310  { 0x33, 0x8c, 0xa1, 0x04 },
311  { 0x33, 0x90, -1 },
312  { 0x33, 0x8c, 0xa1, 0x04 },
313  { 0x33, 0x90, -1 },
314  { 0x33, 0x8c, 0xa1, 0x04 },
315  { 0x33, 0x90, -1 },
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 },
448  { 0x33, 0x90, -1 },
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 },
613  { 0x33, 0x90, -1 },
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 }, // 0x04 or 0x02
724  { 0x33, 0x8c, 0xa2, 0x0d },
725  { 0x33, 0x90, 0x00, 0x10 }, // 0x30 or 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 },
731  { 0x33, 0x90, -1 },
732  { 0x33, 0x8c, 0xa1, 0x03 },
733  { 0x33, 0x90, 0x00, 0x06 },
734  { 0x33, 0x8c, 0xa1, 0x04 },
735  { 0x33, 0x90, -1 },
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 },
845  { 0x33, 0x90, -1 },
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 },
874  { 0x33, 0x90, -1 },
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 },
882  { 0x33, 0x90, -1 },
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 },
888  { 0x33, 0x90, -1 },
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 },
894  { 0x33, 0x90, -1 },
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 },
910  { 0x33, 0x90, -1 }
911  };
912 
913 
914  asize = ARRAY_SIZE(values_205);
915 
916  for(i=0; i<asize; i++) {
917  usb_stk11xx_read_registry(dev, 0x02ff, &value);
918  usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
919 
920  usb_stk11xx_write_registry(dev, 0x0203, 0x007a);
921 
922  usb_stk11xx_write_registry(dev, 0x0205, values_205[i][0]);
923  usb_stk11xx_write_registry(dev, 0x0205, values_205[i][1]);
924 
925  if (values_205[i][2] == -1) {
926  usb_stk11xx_write_registry(dev, 0x0200, 0x0061);
927 
928  dev_stk11xx_check_device(dev, 500);
929 
930  usb_stk11xx_read_registry(dev, 0x0209, &value);
931  usb_stk11xx_write_registry(dev, 0x0200, 0x0020);
932 
933  dev_stk11xx_check_device(dev, 500);
934 
935  usb_stk11xx_read_registry(dev, 0x0209, &value);
936  }
937  else {
938  usb_stk11xx_write_registry(dev, 0x0205, values_205[i][2]);
939  usb_stk11xx_write_registry(dev, 0x0205, values_205[i][3]);
940  usb_stk11xx_write_registry(dev, 0x0200, 0x0001);
941 
942  dev_stk11xx_check_device(dev, 500);
943  }
944 
945  usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
946  }
947 
948  return 0;
949 }
950 
951 
966 {
967  return 0;
968 }
969 
970 
985 {
986  int value;
987 
988  // Contrast register
989  usb_stk11xx_read_registry(dev, 0x02ff, &value);
990  usb_stk11xx_write_registry(dev, 0x02ff, 0x0000);
991 
992  usb_stk11xx_write_registry(dev, 0x0204, 0x00b3);
993  usb_stk11xx_write_registry(dev, 0x0205, (dev->vsettings.contrast >> 8));
994 
995  usb_stk11xx_write_registry(dev, 0x0200, 0x0001);
996  dev_stk11xx_check_device(dev, 500);
997  usb_stk11xx_write_registry(dev, 0x02ff, 0x0000);
998 
999  STK_DEBUG("Set colour : %d\n", dev->vsettings.colour);
1000  STK_DEBUG("Set contrast : %d\n", dev->vsettings.contrast);
1001  STK_DEBUG("Set whiteness : %d\n", dev->vsettings.whiteness);
1002  STK_DEBUG("Set brightness : %d\n", dev->vsettings.brightness);
1003 
1004  return 0;
1005 }
1006 
1007 
1018 {
1019  return 0;
1020 }
1021 
1022 
1034 {
1035  return 0;
1036 }
1037 
1038 
1049 {
1051 
1052  return 0;
1053 }
1054 
1055 
1067 {
1068  return 0;
1069 }
1070 
1071 
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.
Definition: stk11xx-dev.c:366
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.
int whiteness
Definition: stk11xx.h:295
#define STK_DEBUG(str, args...)
Definition: stk11xx.h:158
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
Definition: stk11xx.h:336
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.
Definition: stk11xx-dev.c:186
int brightness
Definition: stk11xx.h:293
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.
Definition: stk11xx-usb.c:492
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...)
Definition: stk11xx.h:155
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.
Definition: stk11xx-usb.c:558
int usb_stk11xx_read_registry(struct usb_stk11xx *dev, __u16 index, int *value)
Read a 16-bits value from a 16-bits register.
Definition: stk11xx-usb.c:590
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.
int contrast
Definition: stk11xx.h:294