00001
00034 #include <linux/module.h>
00035 #include <linux/init.h>
00036 #include <linux/kernel.h>
00037 #include <linux/version.h>
00038 #include <linux/errno.h>
00039 #include <linux/slab.h>
00040 #include <linux/kref.h>
00041
00042 #include <linux/usb.h>
00043 #include <media/v4l2-common.h>
00044 #include <media/v4l2-ioctl.h>
00045
00046 #include "stk11xx.h"
00047 #include "stk11xx-dev.h"
00048
00049
00050
00051
00052
00053
00054
00055
00056
00070 int dev_stk6d51_initialize_device(struct usb_stk11xx *dev)
00071 {
00072 int retok;
00073 int value;
00074
00075 STK_INFO("Initialize USB2.0 Syntek Camera\n");
00076
00077 usb_stk11xx_write_registry(dev, 0x0000, 0x00e0);
00078 usb_stk11xx_write_registry(dev, 0x0002, 0x00f8);
00079 usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
00080 usb_stk11xx_write_registry(dev, 0x0000, 0x0020);
00081
00082 dev_stk6d51_configure_device(dev, 0);
00083
00084 retok = dev_stk11xx_check_device(dev, 65);
00085 usb_stk11xx_read_registry(dev, 0x0209, &value);
00086 usb_stk11xx_write_registry(dev, 0x0200, 0x0020);
00087 retok = dev_stk11xx_check_device(dev, 65);
00088 usb_stk11xx_read_registry(dev, 0x0209, &value);
00089 usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
00090 usb_stk11xx_write_registry(dev, 0x02ff, 0x0000);
00091
00092 dev_stk6d51_camera_asleep(dev);
00093
00094 usb_stk11xx_write_registry(dev, 0x0000, 0x00e0);
00095 usb_stk11xx_write_registry(dev, 0x0002, 0x00f8);
00096 usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
00097 usb_stk11xx_write_registry(dev, 0x0000, 0x0020);
00098 usb_stk11xx_write_registry(dev, 0x0000, 0x00e0);
00099 usb_stk11xx_write_registry(dev, 0x0002, 0x00f8);
00100 usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
00101 usb_stk11xx_write_registry(dev, 0x0000, 0x0020);
00102 usb_stk11xx_write_registry(dev, 0x0000, 0x00e0);
00103 usb_stk11xx_write_registry(dev, 0x0002, 0x00f8);
00104 usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
00105 usb_stk11xx_write_registry(dev, 0x0000, 0x0020);
00106 usb_stk11xx_read_registry(dev, 0x02ff, &value);
00107
00108 dev_stk6d51_configure_device(dev, 1);
00109
00110 usb_stk11xx_set_feature(dev, 0);
00111
00112
00113 STK_INFO("Syntek USB2.0 Camera is ready\n");
00114
00115 return 0;
00116 }
00117
00118
00132 int dev_stk6d51_configure_device(struct usb_stk11xx *dev, int step)
00133 {
00134 int value;
00135
00136
00137 static const int values_001B[] = {
00138 0x0e, 0x0e
00139 };
00140 static const int values_001C[] = {
00141 0x46, 0x46
00142 };
00143 static const int values_0202[] = {
00144 0x0a, 0x0a
00145 };
00146 static const int values_0110[] = {
00147 0x00, 0x00
00148 };
00149 static const int values_0112[] = {
00150 0x01, 0x01
00151 };
00152 static const int values_0114[] = {
00153 0x80, 0x80
00154 };
00155 static const int values_0115[] = {
00156 0x02, 0x02
00157 };
00158 static const int values_0116[] = {
00159 0xe1, 0xe1
00160 };
00161 static const int values_0117[] = {
00162 0x01, 0x01
00163 };
00164 static const int values_0100[] = {
00165 0x20, 0x20
00166 };
00167
00168
00169 STK_DEBUG("dev_stk6d51_configure_device : %d\n", step);
00170
00171 usb_stk11xx_write_registry(dev, 0x0000, 0x0024);
00172 usb_stk11xx_write_registry(dev, 0x0002, 0x0078);
00173 usb_stk11xx_write_registry(dev, 0x0003, 0x0080);
00174 usb_stk11xx_write_registry(dev, 0x0005, 0x0000);
00175
00176 usb_stk11xx_write_registry(dev, 0x0007, 0x0003);
00177 usb_stk11xx_write_registry(dev, 0x000d, 0x0000);
00178 usb_stk11xx_write_registry(dev, 0x000f, 0x0002);
00179 usb_stk11xx_write_registry(dev, 0x0300, 0x0012);
00180 usb_stk11xx_write_registry(dev, 0x0350, 0x0041);
00181
00182 usb_stk11xx_write_registry(dev, 0x0351, 0x0000);
00183 usb_stk11xx_write_registry(dev, 0x0352, 0x0000);
00184 usb_stk11xx_write_registry(dev, 0x0353, 0x0000);
00185 usb_stk11xx_write_registry(dev, 0x0018, 0x0010);
00186 usb_stk11xx_write_registry(dev, 0x0019, 0x0000);
00187
00188 usb_stk11xx_write_registry(dev, 0x001b, values_001B[step]);
00189 usb_stk11xx_write_registry(dev, 0x001c, values_001C[step]);
00190 usb_stk11xx_write_registry(dev, 0x0300, 0x0080);
00191 usb_stk11xx_write_registry(dev, 0x001a, 0x0004);
00192 usb_stk11xx_write_registry(dev, 0x0202, values_0202[step]);
00193
00194 usb_stk11xx_write_registry(dev, 0x0110, values_0110[step]);
00195 usb_stk11xx_write_registry(dev, 0x0111, 0x0000);
00196 usb_stk11xx_write_registry(dev, 0x0112, values_0112[step]);
00197 usb_stk11xx_write_registry(dev, 0x0113, 0x0000);
00198 usb_stk11xx_write_registry(dev, 0x0114, values_0114[step]);
00199
00200 usb_stk11xx_write_registry(dev, 0x0115, values_0115[step]);
00201 usb_stk11xx_write_registry(dev, 0x0116, values_0116[step]);
00202 usb_stk11xx_write_registry(dev, 0x0117, values_0117[step]);
00203
00204 usb_stk11xx_read_registry(dev, 0x0100, &value);
00205 usb_stk11xx_write_registry(dev, 0x0100, values_0100[step]);
00206
00207 usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
00208
00209
00210 switch (step) {
00211 case 0:
00212 usb_stk11xx_write_registry(dev, 0x0203, 0x007a);
00213
00214 usb_stk11xx_read_registry(dev, 0x02ff, &value);
00215 usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
00216
00217 usb_stk11xx_write_registry(dev, 0x0203, 0x007a);
00218
00219 usb_stk11xx_write_registry(dev, 0x0205, 0x0030);
00220 usb_stk11xx_write_registry(dev, 0x0205, 0x0000);
00221
00222 usb_stk11xx_write_registry(dev, 0x0200, 0x0061);
00223
00224 break;
00225
00226 case 1:
00227 usb_stk11xx_write_registry(dev, 0x0203, 0x007a);
00228
00229 dev_stk6d51_sensor_settings(dev);
00230
00231 usb_stk11xx_read_registry(dev, 0x0000, &value);
00232 usb_stk11xx_write_registry(dev, 0x0200, 0x0021);
00233
00234 break;
00235 }
00236
00237 return 0;
00238 }
00239
00240
00250 int dev_stk6d51_camera_asleep(struct usb_stk11xx *dev)
00251 {
00252 int value;
00253
00254 usb_stk11xx_read_registry(dev, 0x0104, &value);
00255 usb_stk11xx_read_registry(dev, 0x0105, &value);
00256 usb_stk11xx_read_registry(dev, 0x0106, &value);
00257
00258 usb_stk11xx_write_registry(dev, 0x0100, 0x0021);
00259 usb_stk11xx_write_registry(dev, 0x0116, 0x0000);
00260 usb_stk11xx_write_registry(dev, 0x0117, 0x0000);
00261 usb_stk11xx_write_registry(dev, 0x0018, 0x0000);
00262
00263 usb_stk11xx_read_registry(dev, 0x0000, &value);
00264 usb_stk11xx_write_registry(dev, 0x0000, 0x0049);
00265
00266 return 0;
00267 }
00268
00269
00280 int dev_stk6d51_init_camera(struct usb_stk11xx *dev)
00281 {
00282 return 0;
00283 }
00284
00285
00296 int dev_stk6d51_sensor_settings(struct usb_stk11xx *dev)
00297 {
00298 int i;
00299 int retok;
00300 int value;
00301
00302 int asize;
00303
00304 static const int values_205[][4] = {
00305 { 0x33, 0x86, 0x05, 0x01 },
00306 { 0x33, 0x86, 0x05, 0x00 },
00307 { 0x33, 0x8c, 0xa1, 0x04 },
00308 { 0x33, 0x90, -1 },
00309 { 0x30, 0x1a, 0x0a, 0xcc },
00310 { 0x32, 0x02, 0x00, 0x08 },
00311 { 0x33, 0xf4, 0x03, 0x1d },
00312 { 0x33, 0x8c, 0xa1, 0x04 },
00313 { 0x33, 0x90, -1 },
00314 { 0x33, 0x8c, 0xa1, 0x04 },
00315 { 0x33, 0x90, -1 },
00316 { 0x33, 0x8c, 0xa1, 0x04 },
00317 { 0x33, 0x90, -1 },
00318 { 0x34, 0x1e, 0x8f, 0x09 },
00319 { 0x34, 0x1c, 0x02, 0x50 },
00320 { 0x34, 0x1e, 0x8f, 0x09 },
00321 { 0x34, 0x1e, 0x8f, 0x08 },
00322 { 0x33, 0x8c, 0x04, 0x00 },
00323 { 0x33, 0x90, 0x30, 0x8f },
00324 { 0x33, 0x92, 0xc3, 0xff },
00325 { 0x33, 0x94, 0xed, 0x8f },
00326 { 0x33, 0x96, 0x35, 0x8f },
00327 { 0x33, 0x98, 0x18, 0x8f },
00328 { 0x33, 0x9a, 0x30, 0x8f },
00329 { 0x33, 0x9c, 0xc3, 0x00 },
00330 { 0x33, 0x9e, 0x15, 0x8f },
00331 { 0x33, 0x8c, 0x04, 0x10 },
00332 { 0x33, 0x90, 0xcc, 0x00 },
00333 { 0x33, 0x92, 0x07, 0xbd },
00334 { 0x33, 0x94, 0x04, 0xb5 },
00335 { 0x33, 0x96, 0xbd, 0x9e },
00336 { 0x33, 0x98, 0x9f, 0xf6 },
00337 { 0x33, 0x9a, 0x03, 0x22 },
00338 { 0x33, 0x9c, 0x30, 0xe7 },
00339 { 0x33, 0x9e, 0x0a, 0xf6 },
00340 { 0x33, 0x8c, 0x04, 0x20 },
00341 { 0x33, 0x90, 0x02, 0x39 },
00342 { 0x33, 0x92, 0xc1, 0x01 },
00343 { 0x33, 0x94, 0x26, 0x05 },
00344 { 0x33, 0x96, 0xf6, 0x03 },
00345 { 0x33, 0x98, 0x23, 0xe7 },
00346 { 0x33, 0x9a, 0x0a, 0x7d },
00347 { 0x33, 0x9c, 0x03, 0x21 },
00348 { 0x33, 0x9e, 0x27, 0x20 },
00349 { 0x33, 0x8c, 0x04, 0x30 },
00350 { 0x33, 0x90, 0xf6, 0x02 },
00351 { 0x33, 0x92, 0x39, 0xe7 },
00352 { 0x33, 0x94, 0x02, 0x8f },
00353 { 0x33, 0x96, 0xc3, 0x00 },
00354 { 0x33, 0x98, 0x0b, 0x30 },
00355 { 0x33, 0x9a, 0xed, 0x00 },
00356 { 0x33, 0x9c, 0xfe, 0x02 },
00357 { 0x33, 0x9e, 0x37, 0xee },
00358 { 0x33, 0x8c, 0x04, 0x40 },
00359 { 0x33, 0x90, 0x04, 0x5f },
00360 { 0x33, 0x92, 0xad, 0x00 },
00361 { 0x33, 0x94, 0x30, 0xe6 },
00362 { 0x33, 0x96, 0x0a, 0x4f },
00363 { 0x33, 0x98, 0xed, 0x08 },
00364 { 0x33, 0x9a, 0xec, 0x11 },
00365 { 0x33, 0x9c, 0xa3, 0x08 },
00366 { 0x33, 0x9e, 0xdd, 0x56 },
00367 { 0x33, 0x8c, 0x04, 0x50 },
00368 { 0x33, 0x90, 0x30, 0xc6 },
00369 { 0x33, 0x92, 0x13, 0x3a },
00370 { 0x33, 0x94, 0x35, 0x39 },
00371 { 0x33, 0x96, 0x3c, 0x3c },
00372 { 0x33, 0x98, 0x3c, 0xc6 },
00373 { 0x33, 0x9a, 0x01, 0xf7 },
00374 { 0x33, 0x9c, 0x03, 0x21 },
00375 { 0x33, 0x9e, 0xc6, 0x0a },
00376 { 0x33, 0x8c, 0x04, 0x60 },
00377 { 0x33, 0x90, 0xf7, 0x03 },
00378 { 0x33, 0x92, 0x22, 0xf7 },
00379 { 0x33, 0x94, 0x03, 0x23 },
00380 { 0x33, 0x96, 0xcc, 0x03 },
00381 { 0x33, 0x98, 0x03, 0x30 },
00382 { 0x33, 0x9a, 0xed, 0x02 },
00383 { 0x33, 0x9c, 0xfe, 0x10 },
00384 { 0x33, 0x9e, 0x50, 0xec },
00385 { 0x33, 0x8c, 0x04, 0x70 },
00386 { 0x33, 0x90, 0x04, 0xfd },
00387 { 0x33, 0x92, 0x02, 0xff },
00388 { 0x33, 0x94, 0xfe, 0x02 },
00389 { 0x33, 0x96, 0xff, 0xec },
00390 { 0x33, 0x98, 0x00, 0xfd },
00391 { 0x33, 0x9a, 0x03, 0x01 },
00392 { 0x33, 0x9c, 0x5f, 0x4f },
00393 { 0x33, 0x9e, 0x30, 0xed },
00394 { 0x33, 0x8c, 0x04, 0x80 },
00395 { 0x33, 0x90, 0x04, 0xec },
00396 { 0x33, 0x92, 0x04, 0x05 },
00397 { 0x33, 0x94, 0xf3, 0x03 },
00398 { 0x33, 0x96, 0x01, 0x8f },
00399 { 0x33, 0x98, 0xec, 0x00 },
00400 { 0x33, 0x9a, 0x30, 0xed },
00401 { 0x33, 0x9c, 0x00, 0xec },
00402 { 0x33, 0x9e, 0x04, 0x05 },
00403 { 0x33, 0x8c, 0x04, 0x90 },
00404 { 0x33, 0x90, 0xe3, 0x02 },
00405 { 0x33, 0x92, 0x18, 0x8f },
00406 { 0x33, 0x94, 0xec, 0x00 },
00407 { 0x33, 0x96, 0x18, 0xed },
00408 { 0x33, 0x98, 0x00, 0xec },
00409 { 0x33, 0x9a, 0x04, 0xc3 },
00410 { 0x33, 0x9c, 0x00, 0x01 },
00411 { 0x33, 0x9e, 0xed, 0x04 },
00412 { 0x33, 0x8c, 0x04, 0xa0 },
00413 { 0x33, 0x90, 0x83, 0x00 },
00414 { 0x33, 0x92, 0x0f, 0x25 },
00415 { 0x33, 0x94, 0xdc, 0xee },
00416 { 0x33, 0x96, 0x02, 0xcc },
00417 { 0x33, 0x98, 0x04, 0x00 },
00418 { 0x33, 0x9a, 0xed, 0x04 },
00419 { 0x33, 0x9c, 0xcc, 0x03 },
00420 { 0x33, 0x9e, 0x03, 0xdd },
00421 { 0x33, 0x8c, 0x04, 0xb0 },
00422 { 0x33, 0x90, 0x52, 0x38 },
00423 { 0x33, 0x92, 0x38, 0x38 },
00424 { 0x33, 0x94, 0x39, 0x37 },
00425 { 0x33, 0x96, 0x36, 0x8f },
00426 { 0x33, 0x98, 0x30, 0xe3 },
00427 { 0x33, 0x9a, 0x00, 0x8f },
00428 { 0x33, 0x9c, 0x18, 0x8f },
00429 { 0x33, 0x9e, 0x18, 0x30 },
00430 { 0x33, 0x8c, 0x04, 0xc0 },
00431 { 0x33, 0x90, 0x18, 0xe3 },
00432 { 0x33, 0x92, 0x00, 0x18 },
00433 { 0x33, 0x94, 0x8f, 0x32 },
00434 { 0x33, 0x96, 0x33, 0x36 },
00435 { 0x33, 0x98, 0xa6, 0x00 },
00436 { 0x33, 0x9a, 0x18, 0xa7 },
00437 { 0x33, 0x9c, 0x00, 0x09 },
00438 { 0x33, 0x9e, 0x18, 0x09 },
00439 { 0x33, 0x8c, 0x04, 0xd0 },
00440 { 0x33, 0x90, 0xc0, 0x01 },
00441 { 0x33, 0x92, 0x24, 0xf4 },
00442 { 0x33, 0x94, 0x32, 0x80 },
00443 { 0x33, 0x96, 0x01, 0x24 },
00444 { 0x33, 0x98, 0xee, 0x39 },
00445 { 0x33, 0x8c, 0x20, 0x03 },
00446 { 0x33, 0x90, 0x04, 0x56 },
00447 { 0x33, 0x8c, 0xa0, 0x02 },
00448 { 0x33, 0x90, 0x00, 0x01 },
00449 { 0x33, 0x8c, 0xa1, 0x04 },
00450 { 0x33, 0x90, -1 },
00451 { 0x34, 0xce, 0x81, 0x60 },
00452 { 0x34, 0xd0, 0x66, 0x33 },
00453 { 0x34, 0xd2, 0x31, 0x9a },
00454 { 0x34, 0xd4, 0x94, 0x63 },
00455 { 0x34, 0xd6, 0x4b, 0x25 },
00456 { 0x34, 0xd8, 0x26, 0x70 },
00457 { 0x34, 0xda, 0x72, 0x4c },
00458 { 0x34, 0xdc, 0xff, 0x04 },
00459 { 0x34, 0xde, 0x00, 0xf4 },
00460 { 0x34, 0xe6, 0x00, 0xcc },
00461 { 0x34, 0xee, 0x0e, 0x42 },
00462 { 0x34, 0xf6, 0x0d, 0xb5 },
00463 { 0x35, 0x00, 0x0a, 0xfa },
00464 { 0x35, 0x08, 0x0f, 0x10 },
00465 { 0x35, 0x10, 0x11, 0x22 },
00466 { 0x35, 0x18, 0x0c, 0x28 },
00467 { 0x35, 0x20, 0x1c, 0x2c },
00468 { 0x35, 0x28, 0x17, 0x40 },
00469 { 0x35, 0x30, 0x08, 0xf2 },
00470 { 0x35, 0x38, 0xfb, 0xd5 },
00471 { 0x35, 0x4c, 0x05, 0xc7 },
00472 { 0x35, 0x44, 0x04, 0xf9 },
00473 { 0x35, 0x5c, 0x05, 0xd0 },
00474 { 0x35, 0x54, 0x05, 0xf4 },
00475 { 0x34, 0xe0, 0x01, 0x05 },
00476 { 0x34, 0xe8, 0x00, 0xa0 },
00477 { 0x34, 0xf0, 0x0e, 0xa1 },
00478 { 0x34, 0xf8, 0x0e, 0x01 },
00479 { 0x35, 0x02, 0x0f, 0xeb },
00480 { 0x35, 0x0a, 0x09, 0x0a },
00481 { 0x35, 0x12, 0x10, 0x1e },
00482 { 0x35, 0x1a, 0x08, 0x23 },
00483 { 0x35, 0x22, 0x1c, 0x22 },
00484 { 0x35, 0x2a, 0x07, 0x22 },
00485 { 0x35, 0x32, 0x0b, 0x06 },
00486 { 0x35, 0x3a, 0xf9, 0x16 },
00487 { 0x35, 0x4e, 0x05, 0x9f },
00488 { 0x35, 0x46, 0x05, 0x30 },
00489 { 0x35, 0x5e, 0x06, 0x75 },
00490 { 0x35, 0x56, 0x06, 0x5c },
00491 { 0x34, 0xe4, 0x00, 0xc5 },
00492 { 0x34, 0xec, 0x00, 0x48 },
00493 { 0x34, 0xf4, 0x0f, 0x66 },
00494 { 0x34, 0xfc, 0x0e, 0x61 },
00495 { 0x35, 0x06, 0x1b, 0xdb },
00496 { 0x35, 0x0e, 0x04, 0x0a },
00497 { 0x35, 0x16, 0x11, 0x13 },
00498 { 0x35, 0x1e, 0x08, 0x1f },
00499 { 0x35, 0x26, 0x11, 0x19 },
00500 { 0x35, 0x2e, 0xf8, 0x1a },
00501 { 0x35, 0x36, 0x04, 0x0c },
00502 { 0x35, 0x3e, 0xfa, 0x00 },
00503 { 0x35, 0x52, 0x06, 0xf1 },
00504 { 0x35, 0x4a, 0x04, 0x0e },
00505 { 0x35, 0x62, 0x06, 0xa1 },
00506 { 0x35, 0x5a, 0x06, 0x91 },
00507 { 0x34, 0xe2, 0x00, 0xd2 },
00508 { 0x34, 0xea, 0x00, 0x72 },
00509 { 0x34, 0xf2, 0x0e, 0x1d },
00510 { 0x34, 0xfa, 0x0e, 0x06 },
00511 { 0x35, 0x04, 0x13, 0x0e },
00512 { 0x35, 0x0c, 0x0f, 0x0d },
00513 { 0x35, 0x14, 0x13, 0x1c },
00514 { 0x35, 0x1c, 0x13, 0x29 },
00515 { 0x35, 0x24, 0x0d, 0x24 },
00516 { 0x35, 0x2c, 0xfd, 0x29 },
00517 { 0x35, 0x34, 0x07, 0xf4 },
00518 { 0x35, 0x3c, 0xee, 0xe7 },
00519 { 0x35, 0x50, 0x06, 0x50 },
00520 { 0x35, 0x48, 0x05, 0xc1 },
00521 { 0x35, 0x60, 0x06, 0x11 },
00522 { 0x35, 0x58, 0x06, 0x58 },
00523 { 0x35, 0x40, 0x00, 0x00 },
00524 { 0x35, 0x42, 0x00, 0x00 },
00525 { 0x32, 0x10, 0x01, 0xfc },
00526 { 0x33, 0x8c, 0xa3, 0x52 },
00527 { 0x33, 0x90, 0x00, 0x3c },
00528 { 0x33, 0x8c, 0xa1, 0x18 },
00529 { 0x33, 0x90, 0x00, 0x3c },
00530 { 0x33, 0x8c, 0xa1, 0x19 },
00531 { 0x33, 0x90, 0x00, 0x0a },
00532 { 0x33, 0x8c, 0xa7, 0x6d },
00533 { 0x33, 0x90, 0x00, 0x03 },
00534 { 0x33, 0x8c, 0xa7, 0x6e },
00535 { 0x33, 0x90, 0x00, 0x03 },
00536 { 0x33, 0x8c, 0xa7, 0x6f },
00537 { 0x33, 0x90, 0x00, 0x00 },
00538 { 0x33, 0x8c, 0xa7, 0x70 },
00539 { 0x33, 0x90, 0x00, 0x05 },
00540 { 0x33, 0x8c, 0xa7, 0x71 },
00541 { 0x33, 0x90, 0x00, 0x10 },
00542 { 0x33, 0x8c, 0xa7, 0x72 },
00543 { 0x33, 0x90, 0x00, 0x30 },
00544 { 0x33, 0x8c, 0xa7, 0x73 },
00545 { 0x33, 0x90, 0x00, 0x5b },
00546 { 0x33, 0x8c, 0xa7, 0x74 },
00547 { 0x33, 0x90, 0x00, 0x77 },
00548 { 0x33, 0x8c, 0xa7, 0x75 },
00549 { 0x33, 0x90, 0x00, 0x8e },
00550 { 0x33, 0x8c, 0xa7, 0x76 },
00551 { 0x33, 0x90, 0x00, 0xa0 },
00552 { 0x33, 0x8c, 0xa7, 0x77 },
00553 { 0x33, 0x90, 0x00, 0xaf },
00554 { 0x33, 0x8c, 0xa7, 0x78 },
00555 { 0x33, 0x90, 0x00, 0xbc },
00556 { 0x33, 0x8c, 0xa7, 0x79 },
00557 { 0x33, 0x90, 0x00, 0xc7 },
00558 { 0x33, 0x8c, 0xa7, 0x7a },
00559 { 0x33, 0x90, 0x00, 0xd0 },
00560 { 0x33, 0x8c, 0xa7, 0x7b },
00561 { 0x33, 0x90, 0x00, 0xd9 },
00562 { 0x33, 0x8c, 0xa7, 0x7c },
00563 { 0x33, 0x90, 0x00, 0xe0 },
00564 { 0x33, 0x8c, 0xa7, 0x7d },
00565 { 0x33, 0x90, 0x00, 0xe8 },
00566 { 0x33, 0x8c, 0xa7, 0x7e },
00567 { 0x33, 0x90, 0x00, 0xee },
00568 { 0x33, 0x8c, 0xa7, 0x7f },
00569 { 0x33, 0x90, 0x00, 0xf4 },
00570 { 0x33, 0x8c, 0xa7, 0x80 },
00571 { 0x33, 0x90, 0x00, 0xfa },
00572 { 0x33, 0x8c, 0xa7, 0x81 },
00573 { 0x33, 0x90, 0x00, 0xff },
00574 { 0x33, 0x8c, 0xa7, 0x82 },
00575 { 0x33, 0x90, 0x00, 0x00 },
00576 { 0x33, 0x8c, 0xa7, 0x83 },
00577 { 0x33, 0x90, 0x00, 0x05 },
00578 { 0x33, 0x8c, 0xa7, 0x84 },
00579 { 0x33, 0x90, 0x00, 0x10 },
00580 { 0x33, 0x8c, 0xa7, 0x85 },
00581 { 0x33, 0x90, 0x00, 0x30 },
00582 { 0x33, 0x8c, 0xa7, 0x86 },
00583 { 0x33, 0x90, 0x00, 0x5b },
00584 { 0x33, 0x8c, 0xa7, 0x87 },
00585 { 0x33, 0x90, 0x00, 0x77 },
00586 { 0x33, 0x8c, 0xa7, 0x88 },
00587 { 0x33, 0x90, 0x00, 0x8e },
00588 { 0x33, 0x8c, 0xa7, 0x89 },
00589 { 0x33, 0x90, 0x00, 0xa0 },
00590 { 0x33, 0x8c, 0xa7, 0x8a },
00591 { 0x33, 0x90, 0x00, 0xaf },
00592 { 0x33, 0x8c, 0xa7, 0x8b },
00593 { 0x33, 0x90, 0x00, 0xbc },
00594 { 0x33, 0x8c, 0xa7, 0x8c },
00595 { 0x33, 0x90, 0x00, 0xc7 },
00596 { 0x33, 0x8c, 0xa7, 0x8d },
00597 { 0x33, 0x90, 0x00, 0xd0 },
00598 { 0x33, 0x8c, 0xa7, 0x8e },
00599 { 0x33, 0x90, 0x00, 0xd9 },
00600 { 0x33, 0x8c, 0xa7, 0x8f },
00601 { 0x33, 0x90, 0x00, 0xe0 },
00602 { 0x33, 0x8c, 0xa7, 0x90 },
00603 { 0x33, 0x90, 0x00, 0xe8 },
00604 { 0x33, 0x8c, 0xa7, 0x91 },
00605 { 0x33, 0x90, 0x00, 0xee },
00606 { 0x33, 0x8c, 0xa7, 0x92 },
00607 { 0x33, 0x90, 0x00, 0xf4 },
00608 { 0x33, 0x8c, 0xa7, 0x93 },
00609 { 0x33, 0x90, 0x00, 0xfa },
00610 { 0x33, 0x8c, 0xa7, 0x94 },
00611 { 0x33, 0x90, 0x00, 0xff },
00612 { 0x33, 0x8c, 0xa1, 0x03 },
00613 { 0x33, 0x90, 0x00, 0x05 },
00614 { 0x33, 0x8c, 0xa1, 0x04 },
00615 { 0x33, 0x90, -1 },
00616 { 0x33, 0x8c, 0xa2, 0x06 },
00617 { 0x33, 0x90, 0x00, 0x50 },
00618 { 0x33, 0x8c, 0x27, 0x03 },
00619 { 0x33, 0x90, 0x02, 0x82 },
00620 { 0x33, 0x8c, 0x27, 0x05 },
00621 { 0x33, 0x90, 0x01, 0xe2 },
00622 { 0x33, 0x8c, 0x27, 0x07 },
00623 { 0x33, 0x90, 0x05, 0x02 },
00624 { 0x33, 0x8c, 0x27, 0x09 },
00625 { 0x33, 0x90, 0x04, 0x02 },
00626 { 0x33, 0x8c, 0x27, 0x0d },
00627 { 0x33, 0x90, 0x00, 0x00 },
00628 { 0x33, 0x8c, 0x27, 0x0f },
00629 { 0x33, 0x90, 0x00, 0x00 },
00630 { 0x33, 0x8c, 0x27, 0x11 },
00631 { 0x33, 0x90, 0x04, 0xbd },
00632 { 0x33, 0x8c, 0x27, 0x13 },
00633 { 0x33, 0x90, 0x06, 0x4d },
00634 { 0x33, 0x8c, 0x27, 0x15 },
00635 { 0x33, 0x90, 0x04, 0x00 },
00636 { 0x33, 0x8c, 0x27, 0x17 },
00637 { 0x33, 0x90, 0x21, 0x11 },
00638 { 0x33, 0x8c, 0x27, 0x19 },
00639 { 0x33, 0x90, 0x04, 0x6c },
00640 { 0x33, 0x8c, 0x27, 0x1b },
00641 { 0x33, 0x90, 0x02, 0x4f },
00642 { 0x33, 0x8c, 0x27, 0x1d },
00643 { 0x33, 0x90, 0x01, 0x02 },
00644 { 0x33, 0x8c, 0x27, 0x1f },
00645 { 0x33, 0x90, 0x02, 0x79 },
00646 { 0x33, 0x8c, 0x27, 0x21 },
00647 { 0x33, 0x90, 0x01, 0x55 },
00648 { 0x33, 0x8c, 0x27, 0x23 },
00649 { 0x33, 0x90, 0x03, 0x5b },
00650 { 0x33, 0x8c, 0x27, 0x25 },
00651 { 0x33, 0x90, 0x06, 0x0f },
00652 { 0x33, 0x8c, 0x27, 0x27 },
00653 { 0x33, 0x90, 0x20, 0x20 },
00654 { 0x33, 0x8c, 0x27, 0x29 },
00655 { 0x33, 0x90, 0x20, 0x20 },
00656 { 0x33, 0x8c, 0x27, 0x2b },
00657 { 0x33, 0x90, 0x10, 0x20 },
00658 { 0x33, 0x8c, 0x27, 0x2d },
00659 { 0x33, 0x90, 0x20, 0x07 },
00660 { 0x33, 0x8c, 0x27, 0x2f },
00661 { 0x33, 0x90, 0x00, 0x04 },
00662 { 0x33, 0x8c, 0x27, 0x31 },
00663 { 0x33, 0x90, 0x00, 0x04 },
00664 { 0x33, 0x8c, 0x27, 0x33 },
00665 { 0x33, 0x90, 0x04, 0xbb },
00666 { 0x33, 0x8c, 0x27, 0x35 },
00667 { 0x33, 0x90, 0x06, 0x4b },
00668 { 0x33, 0x8c, 0x27, 0x37 },
00669 { 0x33, 0x90, 0x04, 0xce },
00670 { 0x33, 0x8c, 0x27, 0x39 },
00671 { 0x33, 0x90, 0x21, 0x11 },
00672 { 0x33, 0x8c, 0x27, 0x3b },
00673 { 0x33, 0x90, 0x00, 0x24 },
00674 { 0x33, 0x8c, 0x27, 0x3d },
00675 { 0x33, 0x90, 0x01, 0x20 },
00676 { 0x33, 0x8c, 0x27, 0x41 },
00677 { 0x33, 0x90, 0x01, 0x69 },
00678 { 0x33, 0x8c, 0x27, 0x45 },
00679 { 0x33, 0x90, 0x04, 0xff },
00680 { 0x33, 0x8c, 0x27, 0x47 },
00681 { 0x33, 0x90, 0x08, 0x24 },
00682 { 0x33, 0x8c, 0x27, 0x51 },
00683 { 0x33, 0x90, 0x00, 0x00 },
00684 { 0x33, 0x8c, 0x27, 0x53 },
00685 { 0x33, 0x90, 0x03, 0x20 },
00686 { 0x33, 0x8c, 0x27, 0x55 },
00687 { 0x33, 0x90, 0x00, 0x00 },
00688 { 0x33, 0x8c, 0x27, 0x57 },
00689 { 0x33, 0x90, 0x02, 0x58 },
00690 { 0x33, 0x8c, 0x27, 0x5f },
00691 { 0x33, 0x90, 0x00, 0x00 },
00692 { 0x33, 0x8c, 0x27, 0x61 },
00693 { 0x33, 0x90, 0x06, 0x40 },
00694 { 0x33, 0x8c, 0x27, 0x63 },
00695 { 0x33, 0x90, 0x00, 0x00 },
00696 { 0x33, 0x8c, 0x27, 0x65 },
00697 { 0x33, 0x90, 0x04, 0xb0 },
00698 { 0x33, 0x8c, 0x22, 0x2e },
00699 { 0x33, 0x90, 0x00, 0xd7 },
00700 { 0x33, 0x8c, 0xa4, 0x08 },
00701 { 0x33, 0x90, 0x00, 0x2a },
00702 { 0x33, 0x8c, 0xa4, 0x09 },
00703 { 0x33, 0x90, 0x00, 0x2c },
00704 { 0x33, 0x8c, 0xa4, 0x0a },
00705 { 0x33, 0x90, 0x00, 0x32 },
00706 { 0x33, 0x8c, 0xa4, 0x0b },
00707 { 0x33, 0x90, 0x00, 0x34 },
00708 { 0x33, 0x8c, 0x24, 0x11 },
00709 { 0x33, 0x90, 0x00, 0xd7 },
00710 { 0x33, 0x8c, 0x24, 0x13 },
00711 { 0x33, 0x90, 0x01, 0x02 },
00712 { 0x33, 0x8c, 0x24, 0x15 },
00713 { 0x33, 0x90, 0x00, 0xa0 },
00714 { 0x33, 0x8c, 0x24, 0x17 },
00715 { 0x33, 0x90, 0x00, 0xc0 },
00716 { 0x33, 0x8c, 0x27, 0x99 },
00717 { 0x33, 0x90, 0x64, 0x08 },
00718 { 0x33, 0x8c, 0x27, 0x9b },
00719 { 0x33, 0x90, 0x64, 0x08 },
00720 { 0x33, 0x8c, 0xa2, 0x0c },
00721 { 0x33, 0x90, 0x00, 0x18 },
00722 { 0x33, 0x8c, 0xa2, 0x14 },
00723 { 0x33, 0x90, 0x00, 0x24 },
00724 { 0x33, 0x8c, 0xa2, 0x15 },
00725 { 0x33, 0x90, 0x00, 0x02 },
00726 { 0x33, 0x8c, 0xa2, 0x0d },
00727 { 0x33, 0x90, 0x00, 0x10 },
00728 { 0x33, 0x8c, 0xa2, 0x0e },
00729 { 0x33, 0x90, 0x00, 0x80 },
00730 { 0x33, 0x8c, 0xa1, 0x03 },
00731 { 0x33, 0x90, 0x00, 0x05 },
00732 { 0x33, 0x8c, 0xa1, 0x04 },
00733 { 0x33, 0x90, -1 },
00734 { 0x33, 0x8c, 0xa1, 0x03 },
00735 { 0x33, 0x90, 0x00, 0x06 },
00736 { 0x33, 0x8c, 0xa1, 0x04 },
00737 { 0x33, 0x90, -1 },
00738 { 0x33, 0x8c, 0xa1, 0x30 },
00739 { 0x33, 0x90, 0x00, 0x04 },
00740 { 0x33, 0x8c, 0xa1, 0x15 },
00741 { 0x33, 0x90, 0x00, 0xef },
00742 { 0x33, 0x8c, 0xa1, 0x16 },
00743 { 0x33, 0x90, 0x00, 0x30 },
00744 { 0x33, 0x8c, 0xa1, 0x17 },
00745 { 0x33, 0x90, 0x00, 0x55 },
00746 { 0x33, 0x8c, 0xa1, 0x18 },
00747 { 0x33, 0x90, 0x00, 0x5a },
00748 { 0x33, 0x8c, 0xa1, 0x19 },
00749 { 0x33, 0x90, 0x00, 0x28 },
00750 { 0x33, 0x8c, 0xa1, 0x1a },
00751 { 0x33, 0x90, 0x00, 0x08 },
00752 { 0x33, 0x8c, 0xa1, 0x1b },
00753 { 0x33, 0x90, 0x00, 0x1e },
00754 { 0x33, 0x8c, 0xa1, 0x1c },
00755 { 0x33, 0x90, 0x00, 0x02 },
00756 { 0x33, 0x8c, 0xa1, 0x1d },
00757 { 0x33, 0x90, 0x00, 0x00 },
00758 { 0x33, 0x8c, 0xa1, 0x1e },
00759 { 0x33, 0x90, 0x00, 0x00 },
00760 { 0x33, 0x8c, 0xa1, 0x1f },
00761 { 0x33, 0x90, 0x00, 0x04 },
00762 { 0x33, 0x8c, 0xab, 0x05 },
00763 { 0x33, 0x90, 0x00, 0x00 },
00764 { 0x33, 0x8c, 0xa7, 0x6d },
00765 { 0x33, 0x90, 0x00, 0x03 },
00766 { 0x33, 0x8c, 0xa7, 0x6e },
00767 { 0x33, 0x90, 0x00, 0x03 },
00768 { 0x33, 0x8c, 0xa7, 0x6f },
00769 { 0x33, 0x90, 0x00, 0x00 },
00770 { 0x33, 0x8c, 0xa7, 0x70 },
00771 { 0x33, 0x90, 0x00, 0x15 },
00772 { 0x33, 0x8c, 0xa7, 0x71 },
00773 { 0x33, 0x90, 0x00, 0x25 },
00774 { 0x33, 0x8c, 0xa7, 0x72 },
00775 { 0x33, 0x90, 0x00, 0x3f },
00776 { 0x33, 0x8c, 0xa7, 0x73 },
00777 { 0x33, 0x90, 0x00, 0x64 },
00778 { 0x33, 0x8c, 0xa7, 0x74 },
00779 { 0x33, 0x90, 0x00, 0x80 },
00780 { 0x33, 0x8c, 0xa7, 0x75 },
00781 { 0x33, 0x90, 0x00, 0x97 },
00782 { 0x33, 0x8c, 0xa7, 0x76 },
00783 { 0x33, 0x90, 0x00, 0xa9 },
00784 { 0x33, 0x8c, 0xa7, 0x77 },
00785 { 0x33, 0x90, 0x00, 0xba },
00786 { 0x33, 0x8c, 0xa7, 0x78 },
00787 { 0x33, 0x90, 0x00, 0xc7 },
00788 { 0x33, 0x8c, 0xa7, 0x79 },
00789 { 0x33, 0x90, 0x00, 0xd2 },
00790 { 0x33, 0x8c, 0xa7, 0x7a },
00791 { 0x33, 0x90, 0x00, 0xdc },
00792 { 0x33, 0x8c, 0xa7, 0x7b },
00793 { 0x33, 0x90, 0x00, 0xe4 },
00794 { 0x33, 0x8c, 0xa7, 0x7c },
00795 { 0x33, 0x90, 0x00, 0xea },
00796 { 0x33, 0x8c, 0xa7, 0x7d },
00797 { 0x33, 0x90, 0x00, 0xf0 },
00798 { 0x33, 0x8c, 0xa7, 0x7e },
00799 { 0x33, 0x90, 0x00, 0xf4 },
00800 { 0x33, 0x8c, 0xa7, 0x7f },
00801 { 0x33, 0x90, 0x00, 0xf8 },
00802 { 0x33, 0x8c, 0xa7, 0x80 },
00803 { 0x33, 0x90, 0x00, 0xfc },
00804 { 0x33, 0x8c, 0xa7, 0x81 },
00805 { 0x33, 0x90, 0x00, 0xff },
00806 { 0x33, 0x8c, 0xa7, 0x82 },
00807 { 0x33, 0x90, 0x00, 0x00 },
00808 { 0x33, 0x8c, 0xa7, 0x83 },
00809 { 0x33, 0x90, 0x00, 0x15 },
00810 { 0x33, 0x8c, 0xa7, 0x84 },
00811 { 0x33, 0x90, 0x00, 0x25 },
00812 { 0x33, 0x8c, 0xa7, 0x85 },
00813 { 0x33, 0x90, 0x00, 0x3f },
00814 { 0x33, 0x8c, 0xa7, 0x86 },
00815 { 0x33, 0x90, 0x00, 0x64 },
00816 { 0x33, 0x8c, 0xa7, 0x87 },
00817 { 0x33, 0x90, 0x00, 0x80 },
00818 { 0x33, 0x8c, 0xa7, 0x88 },
00819 { 0x33, 0x90, 0x00, 0x97 },
00820 { 0x33, 0x8c, 0xa7, 0x89 },
00821 { 0x33, 0x90, 0x00, 0xa9 },
00822 { 0x33, 0x8c, 0xa7, 0x8a },
00823 { 0x33, 0x90, 0x00, 0xba },
00824 { 0x33, 0x8c, 0xa7, 0x8b },
00825 { 0x33, 0x90, 0x00, 0xc7 },
00826 { 0x33, 0x8c, 0xa7, 0x8c },
00827 { 0x33, 0x90, 0x00, 0xd2 },
00828 { 0x33, 0x8c, 0xa7, 0x8d },
00829 { 0x33, 0x90, 0x00, 0xdc },
00830 { 0x33, 0x8c, 0xa7, 0x8e },
00831 { 0x33, 0x90, 0x00, 0xe4 },
00832 { 0x33, 0x8c, 0xa7, 0x8f },
00833 { 0x33, 0x90, 0x00, 0xea },
00834 { 0x33, 0x8c, 0xa7, 0x90 },
00835 { 0x33, 0x90, 0x00, 0xf0 },
00836 { 0x33, 0x8c, 0xa7, 0x91 },
00837 { 0x33, 0x90, 0x00, 0xf4 },
00838 { 0x33, 0x8c, 0xa7, 0x92 },
00839 { 0x33, 0x90, 0x00, 0xf8 },
00840 { 0x33, 0x8c, 0xa7, 0x93 },
00841 { 0x33, 0x90, 0x00, 0xfc },
00842 { 0x33, 0x8c, 0xa7, 0x94 },
00843 { 0x33, 0x90, 0x00, 0xff },
00844 { 0x33, 0x8c, 0xa1, 0x03 },
00845 { 0x33, 0x90, 0x00, 0x06 },
00846 { 0x33, 0x8c, 0xa1, 0x04 },
00847 { 0x33, 0x90, -1 },
00848 { 0x35, 0xa4, 0x05, 0x96 },
00849 { 0x33, 0x8c, 0xa1, 0x18 },
00850 { 0x33, 0x90, 0x00, 0x1e },
00851 { 0x33, 0x8c, 0xa1, 0x19 },
00852 { 0x33, 0x90, 0x00, 0x04 },
00853 { 0x33, 0x8c, 0xa1, 0x1a },
00854 { 0x33, 0x90, 0x00, 0x0a },
00855 { 0x33, 0x8c, 0xa1, 0x1b },
00856 { 0x33, 0x90, 0x00, 0x20 },
00857 { 0x33, 0x8c, 0xa1, 0x3e },
00858 { 0x33, 0x90, 0x00, 0x04 },
00859 { 0x33, 0x8c, 0xa1, 0x3f },
00860 { 0x33, 0x90, 0x00, 0x0e },
00861 { 0x33, 0x8c, 0xa1, 0x40 },
00862 { 0x33, 0x90, 0x00, 0x04 },
00863 { 0x33, 0x8c, 0xa1, 0x41 },
00864 { 0x33, 0x90, 0x00, 0x04 },
00865 { 0x33, 0x8c, 0xa1, 0x42 },
00866 { 0x33, 0x90, 0x00, 0x32 },
00867 { 0x33, 0x8c, 0xa1, 0x43 },
00868 { 0x33, 0x90, 0x00, 0x0f },
00869 { 0x33, 0x8c, 0xa1, 0x44 },
00870 { 0x33, 0x90, 0x00, 0x32 },
00871 { 0x33, 0x8c, 0xa1, 0x45 },
00872 { 0x33, 0x90, 0x00, 0x32 },
00873 { 0x33, 0x8c, 0xa1, 0x46 },
00874 { 0x33, 0x90, 0x00, 0x05 },
00875 { 0x33, 0x8c, 0xa1, 0x04 },
00876 { 0x33, 0x90, -1 },
00877 { 0x33, 0x8c, 0xa1, 0x47 },
00878 { 0x33, 0x90, 0x00, 0x3a },
00879 { 0x33, 0x8c, 0x27, 0x95 },
00880 { 0x33, 0x90, 0x01, 0x00 },
00881 { 0x33, 0x8c, 0xa1, 0x03 },
00882 { 0x33, 0x90, 0x00, 0x05 },
00883 { 0x33, 0x8c, 0xa1, 0x04 },
00884 { 0x33, 0x90, -1 },
00885 { 0x33, 0x8c, 0x27, 0x97 },
00886 { 0x33, 0x90, 0x01, 0x00 },
00887 { 0x33, 0x8c, 0xa1, 0x03 },
00888 { 0x33, 0x90, 0x00, 0x05 },
00889 { 0x33, 0x8c, 0xa1, 0x04 },
00890 { 0x33, 0x90, -1 },
00891 { 0x33, 0x8c, 0xa4, 0x04 },
00892 { 0x33, 0x90, 0x00, 0xc0 },
00893 { 0x33, 0x8c, 0xa1, 0x03 },
00894 { 0x33, 0x90, 0x00, 0x05 },
00895 { 0x33, 0x8c, 0xa1, 0x04 },
00896 { 0x33, 0x90, -1 },
00897 { 0x33, 0x8c, 0xa2, 0x06 },
00898 { 0x33, 0x90, 0x00, 0x50 },
00899 { 0x33, 0x8c, 0xa2, 0x0c },
00900 { 0x33, 0x90, 0x00, 0x18 },
00901 { 0x33, 0x8c, 0xa2, 0x15 },
00902 { 0x33, 0x90, 0x00, 0x02 },
00903 { 0x33, 0x8c, 0xa2, 0x0d },
00904 { 0x33, 0x90, 0x00, 0x10 },
00905 { 0x33, 0x8c, 0xa2, 0x0e },
00906 { 0x33, 0x90, 0x00, 0x80 },
00907 { 0x33, 0x8c, 0xa4, 0x04 },
00908 { 0x33, 0x90, 0x00, 0xc0 },
00909 { 0x33, 0x8c, 0xa1, 0x03 },
00910 { 0x33, 0x90, 0x00, 0x05 },
00911 { 0x33, 0x8c, 0xa1, 0x04 },
00912 { 0x33, 0x90, -1 }
00913 };
00914
00915
00916 asize = ARRAY_SIZE(values_205);
00917
00918 for(i=0; i<asize; i++) {
00919 usb_stk11xx_read_registry(dev, 0x02ff, &value);
00920 usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
00921
00922 usb_stk11xx_write_registry(dev, 0x0203, 0x007a);
00923
00924 usb_stk11xx_write_registry(dev, 0x0205, values_205[i][0]);
00925 usb_stk11xx_write_registry(dev, 0x0205, values_205[i][1]);
00926
00927 if (values_205[i][2] == -1) {
00928 usb_stk11xx_write_registry(dev, 0x0200, 0x0061);
00929
00930 retok = dev_stk11xx_check_device(dev, 500);
00931
00932 usb_stk11xx_read_registry(dev, 0x0209, &value);
00933 usb_stk11xx_write_registry(dev, 0x0200, 0x0020);
00934
00935 retok = dev_stk11xx_check_device(dev, 500);
00936
00937 usb_stk11xx_read_registry(dev, 0x0209, &value);
00938 }
00939 else {
00940 usb_stk11xx_write_registry(dev, 0x0205, values_205[i][2]);
00941 usb_stk11xx_write_registry(dev, 0x0205, values_205[i][3]);
00942 usb_stk11xx_write_registry(dev, 0x0200, 0x0001);
00943
00944 retok = dev_stk11xx_check_device(dev, 500);
00945 }
00946
00947 usb_stk11xx_write_registry(dev, 0x02ff, 0x0001);
00948 }
00949
00950 return 0;
00951 }
00952
00953
00967 int dev_stk6d51_camera_settings(struct usb_stk11xx *dev)
00968 {
00969 return 0;
00970 }
00971
00972
00986 int dev_stk6d51_set_camera_quality(struct usb_stk11xx *dev)
00987 {
00988 int ret;
00989 int value;
00990
00991
00992 usb_stk11xx_read_registry(dev, 0x02ff, &value);
00993 usb_stk11xx_write_registry(dev, 0x02ff, 0x0000);
00994
00995 usb_stk11xx_write_registry(dev, 0x0204, 0x00b3);
00996 usb_stk11xx_write_registry(dev, 0x0205, (dev->vsettings.contrast >> 8));
00997
00998 usb_stk11xx_write_registry(dev, 0x0200, 0x0001);
00999 ret = dev_stk11xx_check_device(dev, 500);
01000 usb_stk11xx_write_registry(dev, 0x02ff, 0x0000);
01001
01002 STK_DEBUG("Set colour : %d\n", dev->vsettings.colour);
01003 STK_DEBUG("Set contrast : %d\n", dev->vsettings.contrast);
01004 STK_DEBUG("Set whiteness : %d\n", dev->vsettings.whiteness);
01005 STK_DEBUG("Set brightness : %d\n", dev->vsettings.brightness);
01006
01007 return 0;
01008 }
01009
01010
01020 int dev_stk6d51_set_camera_fps(struct usb_stk11xx *dev)
01021 {
01022 return 0;
01023 }
01024
01025
01036 int dev_stk6d51_start_stream(struct usb_stk11xx *dev)
01037 {
01038 return 0;
01039 }
01040
01041
01051 int dev_stk6d51_reconf_camera(struct usb_stk11xx *dev)
01052 {
01053 dev_stk11xx_camera_settings(dev);
01054
01055 return 0;
01056 }
01057
01058
01069 int dev_stk6d51_stop_stream(struct usb_stk11xx *dev)
01070 {
01071 return 0;
01072 }
01073
01074