i2c_w
cp2615_i2c_send(struct usb_interface *usbif, struct cp2615_i2c_transfer *i2c_w)
int res = cp2615_init_i2c_msg(msg, i2c_w);
struct cp2615_i2c_transfer i2c_w = {0};
i2c_w.tag = 0xdd;
i2c_w.i2caddr = i2c_8bit_addr_from_msg(msg);
i2c_w.read_len = msg->len;
i2c_w.write_len = 0;
i2c_w.read_len = 0;
i2c_w.write_len = msg->len;
memcpy(&i2c_w.data, msg->buf, i2c_w.write_len);
ret = cp2615_i2c_send(usbif, &i2c_w);
ret = cp2615_i2c_recv(usbif, i2c_w.tag, msg->buf);
i2c_w(gspca_dev, PAS106_REG13, &i2cflags, 1, 3);
i2c_w(gspca_dev, PAS106_REG9, I2cc, sizeof I2cc, 1);
i2c_w(gspca_dev, PAS106_REG2, I2c0, sizeof I2c0, 1);
i2c_w(gspca_dev, PAS106_REG9, I2c2, sizeof I2c2, 1);
i2c_w(gspca_dev, PAS106_REG2, &value, 1, 1);
i2c_w(gspca_dev, PAS106_REG3, I2c3, sizeof I2c3, 1);
i2c_w(gspca_dev, PAS106_REG0e, &value, 1, 1);
i2c_w(gspca_dev, PAS106_REG2, I2c0, sizeof I2c0, 1);
i2c_w(gspca_dev, PAS106_REG9, I2c2, sizeof I2c2, 1);
i2c_w(gspca_dev, PAS106_REG2, &value, 1, 1);
i2c_w(gspca_dev, PAS106_REG3, I2c3, sizeof I2c3, 1);
i2c_w(gspca_dev, PAS106_REG0e, &value, 1, 1);
i2c_w(gspca_dev, PAS106_REG7, I2c4, sizeof I2c4, 1);
i2c_w(gspca_dev, PAS106_REG13, &i2cflags, 1, 3);
i2c_w(gspca_dev, PAS106_REG0e, &gain, 1, 1);
i2c_w(gspca_dev, reg, cmd, len);
i2c_w(sd, reg, value);
i2c_w(sd, 0x12, 0x80);
i2c_w(sd, 0x12, 0x80);
i2c_w(sd, regvals->reg, regvals->val);
i2c_w(sd, OV7670_R12_COM7, OV7670_COM7_RESET);
i2c_w(sd, 0x54, 0x23);
i2c_w(sd, 0x24, qvga ? 0x20 : 0x3a);
i2c_w(sd, 0x25, qvga ? 0x30 : 0x60);
i2c_w(sd, 0x11, v);
i2c_w(sd, 0x12, qvga ? 0x60 : 0x20);
i2c_w(sd, 0x17, xstart >> 4);
i2c_w(sd, 0x18, xend >> 4);
i2c_w(sd, 0x19, ystart >> 3);
i2c_w(sd, 0x1a, yend >> 3);
i2c_w(sd, 0x35, qvga ? 0x1e : 0x9e);
i2c_w(sd, 0x24, qvga ? 0x20 : 0x3a);
i2c_w(sd, 0x25, qvga ? 0x30 : 0x60);
i2c_w(sd, 0x35, qvga ? 0x1e : 0x9e);
i2c_w(sd, OV7670_R17_HSTART, xstart >> 3);
i2c_w(sd, OV7670_R18_HSTOP, xend >> 3);
i2c_w(sd, OV7670_R32_HREF, v);
i2c_w(sd, OV7670_R19_VSTART, ystart >> 2);
i2c_w(sd, OV7670_R1A_VSTOP, yend >> 2);
i2c_w(sd, OV7670_R03_VREF, v);
i2c_w(sd, 0x11, sd->clockdiv);
i2c_w(sd, 0x17, hwsbase);
i2c_w(sd, 0x18, hwebase + (sd->sensor_width >> hwscale));
i2c_w(sd, 0x19, vwsbase);
i2c_w(sd, 0x1a, vwebase + (sd->sensor_height >> vwscale));
i2c_w(sd, OV7610_REG_BRT, val);
i2c_w(sd, OV7610_REG_BRT, val);
i2c_w(sd, OV7670_R55_BRIGHT, ov7670_abs_to_sm(val));
i2c_w(sd, OV7610_REG_CNT, val);
i2c_w(sd, 0x64, ctab[val >> 5]);
i2c_w(sd, 0x64, ctab[val >> 4]);
i2c_w(sd, OV7670_R56_CONTRAS, val >> 1);
i2c_w(sd, 0x10, val);
i2c_w(sd, OV7610_REG_SAT, val);
i2c_w(sd, OV7610_REG_SAT, val);
i2c_w(sd, OV7610_REG_SAT, val & 0xf0);
i2c_w(sd, 0x2b, 0x5e);
i2c_w(sd, 0x2b, 0xac);
i2c_w(sd, 0x2b, 0xa8);
i2c_w(gspca_dev, row);
i2c_w(gspca_dev, row);
i2c_w(gspca_dev, row);
i2c_w(gspca_dev, row);
i2c_w(gspca_dev, row);
i2c_w(gspca_dev, exp);
i2c_w(gspca_dev, exp);
i2c_w(gspca_dev, exp);
i2c_w(gspca_dev, gain);
i2c_w(gspca_dev, row);
i2c_w(gspca_dev, i2cpclockdiv);
i2c_w(gspca_dev, i2c);
i2c_w(gspca_dev, *buffer);
i2c_w(gspca_dev, i2cOV);
i2c_w(gspca_dev, i2cpbright);
i2c_w(gspca_dev, i2cpdoit);
i2c_w(gspca_dev, i2c);
i2c_w(gspca_dev, i2c);
i2c_w(gspca_dev, i2c);
i2c_w(gspca_dev, i2c);
i2c_w(gspca_dev, i2cpgain);
i2c_w(gspca_dev, i2cpcolorgain);
i2c_w(gspca_dev, i2cpdoit);
i2c_w(gspca_dev, i2c);
i2c_w(gspca_dev, i2c);
i2c_w(gspca_dev, i2cpframerate);
i2c_w(gspca_dev, i2cpexpo);
i2c_w(gspca_dev, i2cpdoit);
i2c_w(gspca_dev, i2cpframerate);
i2c_w(gspca_dev, i2cpexpo);
i2c_w(gspca_dev, i2cpdoit);
i2c_w(gspca_dev, i2c);
i2c_w(gspca_dev, p->reg, p->val);
if (i2c_w(gspca_dev, 0x00, 0x00) >= 0)
if (i2c_w(gspca_dev, 0x00, 0x00) >= 0)
if (i2c_w(gspca_dev, 0xff, 0x00) >= 0)
i2c_w(gspca_dev, 0x12, 0x80); /* sensor reset */
i2c_w(gspca_dev, CX0342_EXPO_LINE_L, expo);
i2c_w(gspca_dev, CX0342_EXPO_LINE_H, expo >> 8);
i2c_w(gspca_dev, CX0342_RAW_GBGAIN_H,
i2c_w(gspca_dev, CX0342_RAW_GBGAIN_L, gain);
i2c_w(gspca_dev, CX0342_RAW_GRGAIN_H,
i2c_w(gspca_dev, CX0342_RAW_GRGAIN_L, gain);
i2c_w(gspca_dev, CX0342_RAW_BGAIN_H,
i2c_w(gspca_dev, CX0342_RAW_BGAIN_L, blue);
i2c_w(gspca_dev, CX0342_RAW_RGAIN_H,
i2c_w(gspca_dev, CX0342_RAW_RGAIN_L, red);
i2c_w(gspca_dev, CX0342_SYS_CTRL_0,
i2c_w(gspca_dev, 0x10, /* AEC_H (exposure time) */
i2c_w(gspca_dev, 0x00, /* gain */
i2c_w(gspca_dev, CX0342_AUTO_ADC_CALIB, 0x01);
i2c_w(gspca_dev, CX0342_EXPO_LINE_L, 0x37);
i2c_w(gspca_dev, CX0342_EXPO_LINE_H, 0x01);
i2c_w(gspca_dev, CX0342_AUTO_ADC_CALIB, 0x01);
i2c_w(gspca_dev, CX0342_EXPO_LINE_L, 0xcf);
i2c_w(gspca_dev, CX0342_EXPO_LINE_H, 0x00);
i2c_w(gspca_dev, CX0342_SYS_CTRL_0, 0x01);
i2c_w(gspca_dev, CX0342_AUTO_ADC_CALIB, 0x01);
i2c_w(gspca_dev, CX0342_RAW_RGAIN_H, rgain >> 8);
i2c_w(gspca_dev, CX0342_RAW_RGAIN_L, rgain);
i2c_w(gspca_dev, CX0342_SYS_CTRL_0, 0x80);
i2c_w(gspca_dev, CX0342_RAW_BGAIN_H, bgain >> 8);
i2c_w(gspca_dev, CX0342_RAW_BGAIN_L, bgain);
i2c_w(gspca_dev, CX0342_SYS_CTRL_0, 0x80);
i2c_w(gspca_dev, CX0342_EXPO_LINE_H, 0x00);
i2c_w(gspca_dev, CX0342_SYS_CTRL_0, 0x01);
i2c_w(gspca_dev, 0x12, 0x80); /* sensor reset */