Lines Matching +full:0 +full:x0a
36 #define AgfaCl20 0
65 .priv = 0},
78 .priv = 0},
97 {0x00, 0x0003, 0x816b}, /* SSI not active sync with vsync,
98 * hue (H byte) = 0,
102 {0x00, 0x0000, 0x8167}, /* brightness = 0 */
103 {0x00, 0x0020, 0x8168}, /* contrast = 0 */
104 {0x00, 0x0003, 0x816b}, /* SSI not active sync with vsync,
105 * hue (H byte) = 0, saturation/hue enable,
107 * was 0x0003, now 0x0000.
109 {0x00, 0x0000, 0x816a}, /* hue (L byte) = 0 */
110 {0x00, 0x0020, 0x8169}, /* saturation = 0x20 */
111 {0x00, 0x0050, 0x8157}, /* edge gain high threshold */
112 {0x00, 0x0030, 0x8158}, /* edge gain low threshold */
113 {0x00, 0x0028, 0x8159}, /* edge bandwidth high threshold */
114 {0x00, 0x000a, 0x815a}, /* edge bandwidth low threshold */
115 {0x00, 0x0001, 0x8202}, /* clock rate compensation = 1/25 sec/frame */
116 {0x0c, 0x0004, 0x0000},
121 {0x00, 0x00, 0x8211},
122 {0x00, 0x01, 0x82c0},
123 {0x00, 0x10, 0x82cb},
124 {0x00, 0x0f, 0x800d},
125 {0x00, 0x82, 0x8225},
126 {0x00, 0x21, 0x8228},
127 {0x00, 0x00, 0x8203},
128 {0x00, 0x00, 0x8204},
129 {0x00, 0x08, 0x8205},
130 {0x00, 0xf8, 0x8206},
131 {0x00, 0x28, 0x8207},
132 {0x00, 0xa0, 0x8208},
133 {0x00, 0x08, 0x824a},
134 {0x00, 0x08, 0x8214},
135 {0x00, 0x80, 0x82c1},
136 {0x00, 0x00, 0x82c2},
137 {0x00, 0x00, 0x82ca},
138 {0x00, 0x80, 0x82c1},
139 {0x00, 0x04, 0x82c2},
140 {0x00, 0x00, 0x82ca},
141 {0x00, 0xfc, 0x8100},
142 {0x00, 0xfc, 0x8105},
143 {0x00, 0x30, 0x8101},
144 {0x00, 0x00, 0x8102},
145 {0x00, 0x00, 0x8103},
146 {0x00, 0x66, 0x8107},
147 {0x00, 0x00, 0x816b},
148 {0x00, 0x00, 0x8155},
149 {0x00, 0x01, 0x8156},
150 {0x00, 0x60, 0x8157},
151 {0x00, 0x40, 0x8158},
152 {0x00, 0x0a, 0x8159},
153 {0x00, 0x06, 0x815a},
154 {0x00, 0x00, 0x813f},
155 {0x00, 0x00, 0x8200},
156 {0x00, 0x19, 0x8201},
157 {0x00, 0x00, 0x82c1},
158 {0x00, 0xa0, 0x82c2},
159 {0x00, 0x00, 0x82ca},
160 {0x00, 0x00, 0x8117},
161 {0x00, 0x00, 0x8118},
162 {0x00, 0x65, 0x8119},
163 {0x00, 0x00, 0x811a},
164 {0x00, 0x00, 0x811b},
165 {0x00, 0x55, 0x811c},
166 {0x00, 0x65, 0x811d},
167 {0x00, 0x55, 0x811e},
168 {0x00, 0x16, 0x811f},
169 {0x00, 0x19, 0x8120},
170 {0x00, 0x80, 0x8103},
171 {0x00, 0x83, 0x816b},
172 {0x00, 0x25, 0x8168},
173 {0x00, 0x01, 0x820f},
174 {0x00, 0xff, 0x8115},
175 {0x00, 0x48, 0x8116},
176 {0x00, 0x50, 0x8151},
177 {0x00, 0x40, 0x8152},
178 {0x00, 0x78, 0x8153},
179 {0x00, 0x40, 0x8154},
180 {0x00, 0x00, 0x8167},
181 {0x00, 0x20, 0x8168},
182 {0x00, 0x00, 0x816a},
183 {0x00, 0x03, 0x816b},
184 {0x00, 0x20, 0x8169},
185 {0x00, 0x60, 0x8157},
186 {0x00, 0x00, 0x8190},
187 {0x00, 0x00, 0x81a1},
188 {0x00, 0x00, 0x81b2},
189 {0x00, 0x27, 0x8191},
190 {0x00, 0x27, 0x81a2},
191 {0x00, 0x27, 0x81b3},
192 {0x00, 0x4b, 0x8192},
193 {0x00, 0x4b, 0x81a3},
194 {0x00, 0x4b, 0x81b4},
195 {0x00, 0x66, 0x8193},
196 {0x00, 0x66, 0x81a4},
197 {0x00, 0x66, 0x81b5},
198 {0x00, 0x79, 0x8194},
199 {0x00, 0x79, 0x81a5},
200 {0x00, 0x79, 0x81b6},
201 {0x00, 0x8a, 0x8195},
202 {0x00, 0x8a, 0x81a6},
203 {0x00, 0x8a, 0x81b7},
204 {0x00, 0x9b, 0x8196},
205 {0x00, 0x9b, 0x81a7},
206 {0x00, 0x9b, 0x81b8},
207 {0x00, 0xa6, 0x8197},
208 {0x00, 0xa6, 0x81a8},
209 {0x00, 0xa6, 0x81b9},
210 {0x00, 0xb2, 0x8198},
211 {0x00, 0xb2, 0x81a9},
212 {0x00, 0xb2, 0x81ba},
213 {0x00, 0xbe, 0x8199},
214 {0x00, 0xbe, 0x81aa},
215 {0x00, 0xbe, 0x81bb},
216 {0x00, 0xc8, 0x819a},
217 {0x00, 0xc8, 0x81ab},
218 {0x00, 0xc8, 0x81bc},
219 {0x00, 0xd2, 0x819b},
220 {0x00, 0xd2, 0x81ac},
221 {0x00, 0xd2, 0x81bd},
222 {0x00, 0xdb, 0x819c},
223 {0x00, 0xdb, 0x81ad},
224 {0x00, 0xdb, 0x81be},
225 {0x00, 0xe4, 0x819d},
226 {0x00, 0xe4, 0x81ae},
227 {0x00, 0xe4, 0x81bf},
228 {0x00, 0xed, 0x819e},
229 {0x00, 0xed, 0x81af},
230 {0x00, 0xed, 0x81c0},
231 {0x00, 0xf7, 0x819f},
232 {0x00, 0xf7, 0x81b0},
233 {0x00, 0xf7, 0x81c1},
234 {0x00, 0xff, 0x81a0},
235 {0x00, 0xff, 0x81b1},
236 {0x00, 0xff, 0x81c2},
237 {0x00, 0x03, 0x8156},
238 {0x00, 0x00, 0x8211},
239 {0x00, 0x20, 0x8168},
240 {0x00, 0x01, 0x8202},
241 {0x00, 0x30, 0x8101},
242 {0x00, 0x00, 0x8111},
243 {0x00, 0x00, 0x8112},
244 {0x00, 0x00, 0x8113},
245 {0x00, 0x00, 0x8114},
251 0x05, 0x03, 0x03, 0x05, 0x07, 0x0c, 0x0f, 0x12,
252 0x04, 0x04, 0x04, 0x06, 0x08, 0x11, 0x12, 0x11,
253 0x04, 0x04, 0x05, 0x07, 0x0c, 0x11, 0x15, 0x11,
254 0x04, 0x05, 0x07, 0x09, 0x0f, 0x1a, 0x18, 0x13,
255 0x05, 0x07, 0x0b, 0x11, 0x14, 0x21, 0x1f, 0x17,
256 0x07, 0x0b, 0x11, 0x13, 0x18, 0x1f, 0x22, 0x1c,
257 0x0f, 0x13, 0x17, 0x1a, 0x1f, 0x24, 0x24, 0x1e,
258 0x16, 0x1c, 0x1d, 0x1d, 0x22, 0x1e, 0x1f, 0x1e},
260 0x05, 0x05, 0x07, 0x0e, 0x1e, 0x1e, 0x1e, 0x1e,
261 0x05, 0x06, 0x08, 0x14, 0x1e, 0x1e, 0x1e, 0x1e,
262 0x07, 0x08, 0x11, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e,
263 0x0e, 0x14, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e,
264 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e,
265 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e,
266 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e,
267 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e}
272 0x02, 0x01, 0x01, 0x02, 0x02, 0x04, 0x05, 0x06,
273 0x01, 0x01, 0x01, 0x02, 0x03, 0x06, 0x06, 0x06,
274 0x01, 0x01, 0x02, 0x02, 0x04, 0x06, 0x07, 0x06,
275 0x01, 0x02, 0x02, 0x03, 0x05, 0x09, 0x08, 0x06,
276 0x02, 0x02, 0x04, 0x06, 0x07, 0x0b, 0x0a, 0x08,
277 0x02, 0x04, 0x06, 0x06, 0x08, 0x0a, 0x0b, 0x09,
278 0x05, 0x06, 0x08, 0x09, 0x0a, 0x0c, 0x0c, 0x0a,
279 0x07, 0x09, 0x0a, 0x0a, 0x0b, 0x0a, 0x0a, 0x0a},
281 0x02, 0x02, 0x02, 0x05, 0x0a, 0x0a, 0x0a, 0x0a,
282 0x02, 0x02, 0x03, 0x07, 0x0a, 0x0a, 0x0a, 0x0a,
283 0x02, 0x03, 0x06, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a,
284 0x05, 0x07, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a,
285 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a,
286 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a,
287 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a,
288 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a}
292 { /* Q-table Y-components start registers 0x8800 */
293 0x06, 0x04, 0x04, 0x06, 0x0a, 0x10, 0x14, 0x18,
294 0x05, 0x05, 0x06, 0x08, 0x0a, 0x17, 0x18, 0x16,
295 0x06, 0x05, 0x06, 0x0a, 0x10, 0x17, 0x1c, 0x16,
296 0x06, 0x07, 0x09, 0x0c, 0x14, 0x23, 0x20, 0x19,
297 0x07, 0x09, 0x0f, 0x16, 0x1b, 0x2c, 0x29, 0x1f,
298 0x0a, 0x0e, 0x16, 0x1a, 0x20, 0x2a, 0x2d, 0x25,
299 0x14, 0x1a, 0x1f, 0x23, 0x29, 0x30, 0x30, 0x28,
300 0x1d, 0x25, 0x26, 0x27, 0x2d, 0x28, 0x29, 0x28,
302 { /* Q-table C-components start registers 0x8840 */
303 0x07, 0x07, 0x0a, 0x13, 0x28, 0x28, 0x28, 0x28,
304 0x07, 0x08, 0x0a, 0x1a, 0x28, 0x28, 0x28, 0x28,
305 0x0a, 0x0a, 0x16, 0x28, 0x28, 0x28, 0x28, 0x28,
306 0x13, 0x1a, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28,
307 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28,
308 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28,
309 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28,
310 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28}
319 usb_rcvctrlpipe(gspca_dev->dev, 0), in reg_r()
320 0, in reg_r()
322 0, /* value */ in reg_r()
331 gspca_dbg(gspca_dev, D_USBO, "reg write: [0x%02x] = 0x%02x\n", in reg_w()
334 usb_sndctrlpipe(gspca_dev->dev, 0), in reg_w()
337 value, index, NULL, 0, 500); in reg_w()
338 if (ret < 0) in reg_w()
351 gspca_dev->usb_buf[1] = 0; in reg_r_12()
353 usb_rcvctrlpipe(gspca_dev->dev, 0), in reg_r_12()
356 0, /* value */ in reg_r_12()
360 if (ret < 0) { in reg_r_12()
364 return (gspca_dev->usb_buf[1] << 8) + gspca_dev->usb_buf[0]; in reg_r_12()
377 while (--cnt > 0) { in reg_r_wait()
380 return 0; in reg_r_wait()
389 int ret, i = 0; in write_vector()
391 while (data[i][0] != 0 || data[i][1] != 0 || data[i][2] != 0) { in write_vector()
392 ret = reg_w(gspca_dev, data[i][0], data[i][2], data[i][1]); in write_vector()
393 if (ret < 0) in write_vector()
397 return 0; in write_vector()
409 for (i = 0; i < 64; i++) { in spca50x_setup_qtable()
410 err = reg_w(gspca_dev, request, ybase + i, qtable[0][i]); in spca50x_setup_qtable()
411 if (err < 0) in spca50x_setup_qtable()
416 for (i = 0; i < 64; i++) { in spca50x_setup_qtable()
418 if (err < 0) in spca50x_setup_qtable()
421 return 0; in spca50x_setup_qtable()
426 reg_r(gspca_dev, 0x0d04, 2); in spca500_ping310()
427 gspca_dbg(gspca_dev, D_STREAM, "ClickSmart310 ping 0x0d04 0x%02x 0x%02x\n", in spca500_ping310()
428 gspca_dev->usb_buf[0], gspca_dev->usb_buf[1]); in spca500_ping310()
433 reg_r(gspca_dev, 0x0d05, 2); in spca500_clksmart310_init()
434 gspca_dbg(gspca_dev, D_STREAM, "ClickSmart310 init 0x0d05 0x%02x 0x%02x\n", in spca500_clksmart310_init()
435 gspca_dev->usb_buf[0], gspca_dev->usb_buf[1]); in spca500_clksmart310_init()
436 reg_w(gspca_dev, 0x00, 0x8167, 0x5a); in spca500_clksmart310_init()
439 reg_w(gspca_dev, 0x00, 0x8168, 0x22); in spca500_clksmart310_init()
440 reg_w(gspca_dev, 0x00, 0x816a, 0xc0); in spca500_clksmart310_init()
441 reg_w(gspca_dev, 0x00, 0x816b, 0x0b); in spca500_clksmart310_init()
442 reg_w(gspca_dev, 0x00, 0x8169, 0x25); in spca500_clksmart310_init()
443 reg_w(gspca_dev, 0x00, 0x8157, 0x5b); in spca500_clksmart310_init()
444 reg_w(gspca_dev, 0x00, 0x8158, 0x5b); in spca500_clksmart310_init()
445 reg_w(gspca_dev, 0x00, 0x813f, 0x03); in spca500_clksmart310_init()
446 reg_w(gspca_dev, 0x00, 0x8151, 0x4a); in spca500_clksmart310_init()
447 reg_w(gspca_dev, 0x00, 0x8153, 0x78); in spca500_clksmart310_init()
448 reg_w(gspca_dev, 0x00, 0x0d01, 0x04); in spca500_clksmart310_init()
450 reg_w(gspca_dev, 0x00, 0x0d02, 0x01); in spca500_clksmart310_init()
451 reg_w(gspca_dev, 0x00, 0x8169, 0x25); in spca500_clksmart310_init()
452 reg_w(gspca_dev, 0x00, 0x0d01, 0x02); in spca500_clksmart310_init()
461 reg_w(gspca_dev, 0, 0x8001, xmult); in spca500_setmode()
464 reg_w(gspca_dev, 0, 0x8002, ymult); in spca500_setmode()
468 reg_w(gspca_dev, 0, 0x8003, mode << 4); in spca500_setmode()
476 err = reg_w(gspca_dev, 0xe0, 0x0001, 0x0000); in spca500_full_reset()
477 if (err < 0) in spca500_full_reset()
481 err = reg_r_wait(gspca_dev, 0x06, 0x0000, 0x0000); in spca500_full_reset()
482 if (err < 0) in spca500_full_reset()
484 err = reg_w(gspca_dev, 0xe0, 0x0000, 0x0000); in spca500_full_reset()
485 if (err < 0) in spca500_full_reset()
487 err = reg_r_wait(gspca_dev, 0x06, 0, 0); in spca500_full_reset()
488 if (err < 0) { in spca500_full_reset()
493 return 0; in spca500_full_reset()
504 if (usb_set_interface(gspca_dev->dev, gspca_dev->iface, 0) < 0) { in spca500_synch310()
510 reg_r(gspca_dev, 0x0d00, 1); in spca500_synch310()
519 gspca_dev->alt) < 0) { in spca500_synch310()
523 return 0; in spca500_synch310()
535 reg_w(gspca_dev, 0x00, 0x0d01, 0x01); in spca500_reinit()
536 reg_w(gspca_dev, 0x00, 0x0d03, 0x00); in spca500_reinit()
537 reg_w(gspca_dev, 0x00, 0x0d02, 0x01); in spca500_reinit()
540 reg_w(gspca_dev, 0x00, 0x850a, 0x0001); in spca500_reinit()
542 err = spca50x_setup_qtable(gspca_dev, 0x00, 0x8800, 0x8840, in spca500_reinit()
544 if (err < 0) in spca500_reinit()
548 reg_w(gspca_dev, 0x00, 0x8880, 2); in spca500_reinit()
550 reg_w(gspca_dev, 0x00, 0x800a, 0x00); in spca500_reinit()
552 reg_w(gspca_dev, 0x00, 0x820f, 0x01); in spca500_reinit()
554 reg_w(gspca_dev, 0x00, 0x870a, 0x04); in spca500_reinit()
556 reg_w(gspca_dev, 0, 0x8003, 0x00); in spca500_reinit()
558 reg_w(gspca_dev, 0x00, 0x8000, 0x0004); in spca500_reinit()
560 if (reg_r_wait(gspca_dev, 0, 0x8000, 0x44) != 0) { in spca500_reinit()
561 reg_r(gspca_dev, 0x816b, 1); in spca500_reinit()
562 Data = gspca_dev->usb_buf[0]; in spca500_reinit()
563 reg_w(gspca_dev, 0x00, 0x816b, Data); in spca500_reinit()
583 return 0; in sd_config()
598 return 0; in sd_init()
611 0x22); /* JPEG 411 */ in sd_start()
615 xmult = 0x16; in sd_start()
616 ymult = 0x12; in sd_start()
618 xmult = 0x28; in sd_start()
619 ymult = 0x1e; in sd_start()
623 reg_r(gspca_dev, 0x8a04, 1); in sd_start()
624 gspca_dbg(gspca_dev, D_STREAM, "Spca500 Sensor Address 0x%02x\n", in sd_start()
625 gspca_dev->usb_buf[0]); in sd_start()
626 gspca_dbg(gspca_dev, D_STREAM, "Spca500 curr_mode: %d Xmult: 0x%02x, Ymult: 0x%02x", in sd_start()
635 reg_w(gspca_dev, 0x00, 0x850a, 0x0001); in sd_start()
636 reg_w(gspca_dev, 0x00, 0x8880, 3); in sd_start()
638 0x00, 0x8800, 0x8840, in sd_start()
640 if (err < 0) in sd_start()
643 reg_w(gspca_dev, 0x00, 0x870a, 0x04); in sd_start()
646 reg_w(gspca_dev, 0x00, 0x8000, 0x0004); in sd_start()
648 if (reg_r_wait(gspca_dev, 0, 0x8000, 0x44) != 0) in sd_start()
651 reg_r(gspca_dev, 0x816b, 1); in sd_start()
652 Data = gspca_dev->usb_buf[0]; in sd_start()
653 reg_w(gspca_dev, 0x00, 0x816b, Data); in sd_start()
660 err = reg_w(gspca_dev, 0x00, 0x850a, 0x0001); in sd_start()
661 if (err < 0) in sd_start()
663 reg_w(gspca_dev, 0x00, 0x8880, 3); in sd_start()
665 0x00, 0x8800, 0x8840, in sd_start()
667 if (err < 0) in sd_start()
671 reg_w(gspca_dev, 0x00, 0x870a, 0x04); in sd_start()
674 reg_w(gspca_dev, 0x00, 0x8000, 0x0004); in sd_start()
676 if (reg_r_wait(gspca_dev, 0, 0x8000, 0x44) != 0) in sd_start()
679 reg_r(gspca_dev, 0x816b, 1); in sd_start()
680 Data = gspca_dev->usb_buf[0]; in sd_start()
681 reg_w(gspca_dev, 0x00, 0x816b, Data); in sd_start()
690 if (err < 0) in sd_start()
694 err = reg_w(gspca_dev, 0x00, 0x850a, 0x0001); in sd_start()
695 if (err < 0) in sd_start()
697 reg_w(gspca_dev, 0x00, 0x8880, 3); in sd_start()
699 0x00, 0x8800, 0x8840, in sd_start()
701 if (err < 0) in sd_start()
705 reg_w(gspca_dev, 0x20, 0x0001, 0x0004); in sd_start()
708 reg_w(gspca_dev, 0x00, 0x8000, 0x0004); in sd_start()
710 if (reg_r_wait(gspca_dev, 0, 0x8000, 0x44) != 0) in sd_start()
713 reg_r(gspca_dev, 0x816b, 1); in sd_start()
714 Data = gspca_dev->usb_buf[0]; in sd_start()
715 reg_w(gspca_dev, 0x00, 0x816b, Data); in sd_start()
723 if (err < 0) in sd_start()
726 reg_w(gspca_dev, 0x00, 0x850a, 0x0001); in sd_start()
727 reg_w(gspca_dev, 0x00, 0x8880, 0); in sd_start()
729 0x00, 0x8800, 0x8840, in sd_start()
731 if (err < 0) in sd_start()
735 reg_w(gspca_dev, 0x20, 0x0001, 0x0004); in sd_start()
738 reg_w(gspca_dev, 0x00, 0x8000, 0x0004); in sd_start()
740 if (reg_r_wait(gspca_dev, 0, 0x8000, 0x44) != 0) in sd_start()
743 reg_r(gspca_dev, 0x816b, 1); in sd_start()
744 Data = gspca_dev->usb_buf[0]; in sd_start()
745 reg_w(gspca_dev, 0x00, 0x816b, Data); in sd_start()
760 reg_w(gspca_dev, 0x00, 0x0d01, 0x01); in sd_start()
762 reg_w(gspca_dev, 0x00, 0x850a, 0x0001); in sd_start()
765 0x00, 0x8800, 0x8840, qtable_pocketdv); in sd_start()
766 if (err < 0) in sd_start()
768 reg_w(gspca_dev, 0x00, 0x8880, 2); in sd_start()
771 reg_w(gspca_dev, 0x00, 0x800a, 0x00); in sd_start()
773 reg_w(gspca_dev, 0x00, 0x820f, 0x01); in sd_start()
775 reg_w(gspca_dev, 0x00, 0x870a, 0x04); in sd_start()
779 reg_w(gspca_dev, 0x00, 0x8000, 0x0004); in sd_start()
781 reg_r_wait(gspca_dev, 0, 0x8000, 0x44); in sd_start()
783 reg_r(gspca_dev, 0x816b, 1); in sd_start()
784 Data = gspca_dev->usb_buf[0]; in sd_start()
785 reg_w(gspca_dev, 0x00, 0x816b, Data); in sd_start()
789 reg_w(gspca_dev, 0x02, 0x00, 0x00); in sd_start()
791 reg_w(gspca_dev, 0x00, 0x850a, 0x0001); in sd_start()
794 0x00, 0x8800, in sd_start()
795 0x8840, qtable_creative_pccam); in sd_start()
796 if (err < 0) in sd_start()
798 reg_w(gspca_dev, 0x00, 0x8880, 3); in sd_start()
799 reg_w(gspca_dev, 0x00, 0x800a, 0x00); in sd_start()
801 reg_w(gspca_dev, 0x00, 0x870a, 0x04); in sd_start()
806 reg_w(gspca_dev, 0x00, 0x8000, 0x0004); in sd_start()
807 reg_r_wait(gspca_dev, 0, 0x8000, 0x44); in sd_start()
809 reg_r(gspca_dev, 0x816b, 1); in sd_start()
810 Data = gspca_dev->usb_buf[0]; in sd_start()
811 reg_w(gspca_dev, 0x00, 0x816b, Data); in sd_start()
815 return 0; in sd_start()
820 reg_w(gspca_dev, 0, 0x8003, 0x00); in sd_stopN()
823 reg_w(gspca_dev, 0x00, 0x8000, 0x0004); in sd_stopN()
824 reg_r(gspca_dev, 0x8000, 1); in sd_stopN()
825 gspca_dbg(gspca_dev, D_STREAM, "stop SPCA500 done reg8000: 0x%2x\n", in sd_stopN()
826 gspca_dev->usb_buf[0]); in sd_stopN()
835 static __u8 ffd9[] = {0xff, 0xd9}; in sd_pkt_scan()
837 /* frames are jpeg 4.1.1 without 0xff escape */ in sd_pkt_scan()
838 if (data[0] == 0xff) { in sd_pkt_scan()
839 if (data[1] != 0x01) { /* drop packet */ in sd_pkt_scan()
857 /* add 0x00 after 0xff */ in sd_pkt_scan()
858 i = 0; in sd_pkt_scan()
860 if (data[i] == 0xff) { in sd_pkt_scan()
865 *data = 0x00; in sd_pkt_scan()
866 i = 0; in sd_pkt_scan()
875 reg_w(gspca_dev, 0x00, 0x8167, in setbrightness()
881 reg_w(gspca_dev, 0x00, 0x8168, val); in setcontrast()
886 reg_w(gspca_dev, 0x00, 0x8169, val); in setcolors()
894 gspca_dev->usb_err = 0; in sd_s_ctrl()
897 return 0; in sd_s_ctrl()
924 V4L2_CID_BRIGHTNESS, 0, 255, 1, 127); in sd_init_controls()
926 V4L2_CID_CONTRAST, 0, 63, 1, 31); in sd_init_controls()
928 V4L2_CID_SATURATION, 0, 63, 1, 31); in sd_init_controls()
934 return 0; in sd_init_controls()
950 {USB_DEVICE(0x040a, 0x0300), .driver_info = KodakEZ200},
951 {USB_DEVICE(0x041e, 0x400a), .driver_info = CreativePCCam300},
952 {USB_DEVICE(0x046d, 0x0890), .driver_info = LogitechTraveler},
953 {USB_DEVICE(0x046d, 0x0900), .driver_info = LogitechClickSmart310},
954 {USB_DEVICE(0x046d, 0x0901), .driver_info = LogitechClickSmart510},
955 {USB_DEVICE(0x04a5, 0x300c), .driver_info = BenqDC1016},
956 {USB_DEVICE(0x04fc, 0x7333), .driver_info = PalmPixDC85},
957 {USB_DEVICE(0x055f, 0xc200), .driver_info = MustekGsmart300},
958 {USB_DEVICE(0x055f, 0xc220), .driver_info = Gsmartmini},
959 {USB_DEVICE(0x06bd, 0x0404), .driver_info = AgfaCl20},
960 {USB_DEVICE(0x06be, 0x0800), .driver_info = Optimedia},
961 {USB_DEVICE(0x084d, 0x0003), .driver_info = DLinkDSC350},
962 {USB_DEVICE(0x08ca, 0x0103), .driver_info = AiptekPocketDV},
963 {USB_DEVICE(0x2899, 0x012c), .driver_info = ToptroIndus},
964 {USB_DEVICE(0x8086, 0x0630), .driver_info = IntelPocketPCCamera},