Lines Matching refs:client

106 static int write_reg(struct i2c_client *client, u8 reg, u8 value, u8 channel)
108 return i2c_smbus_write_byte_data(client, reg | (channel << 6), value);
111 static int write_regs(struct i2c_client *client, const u8 *regs, u8 channel)
117 ret = i2c_smbus_write_byte_data(client,
125 static int read_reg(struct i2c_client *client, u8 reg, u8 channel)
127 return i2c_smbus_read_byte_data(client, (reg) | (channel << 6));
167 struct i2c_client *client = v4l2_get_subdevdata(&state->sd);
171 ctrl->val = read_reg(client, TW2804_REG_GAIN, 0);
175 ctrl->val = read_reg(client, TW2804_REG_CHROMA_GAIN, 0);
179 ctrl->val = read_reg(client, TW2804_REG_BLUE_BALANCE, 0);
183 ctrl->val = read_reg(client, TW2804_REG_RED_BALANCE, 0);
192 struct i2c_client *client = v4l2_get_subdevdata(&state->sd);
199 reg = read_reg(client, addr, state->channel);
206 return write_reg(client, addr, reg, state->channel);
210 reg = read_reg(client, addr, state->channel);
214 return write_reg(client, addr, reg, state->channel);
217 return write_reg(client, TW2804_REG_GAIN, ctrl->val, 0);
220 return write_reg(client, TW2804_REG_CHROMA_GAIN, ctrl->val, 0);
223 return write_reg(client, TW2804_REG_BLUE_BALANCE, ctrl->val, 0);
226 return write_reg(client, TW2804_REG_RED_BALANCE, ctrl->val, 0);
229 return write_reg(client, TW2804_REG_BRIGHTNESS,
233 return write_reg(client, TW2804_REG_CONTRAST,
237 return write_reg(client, TW2804_REG_SATURATION,
241 return write_reg(client, TW2804_REG_HUE,
253 struct i2c_client *client = v4l2_get_subdevdata(sd);
269 write_regs(client, regs, dec->channel);
278 struct i2c_client *client = v4l2_get_subdevdata(sd);
283 dev_err(&client->dev,
288 dev_dbg(&client->dev, "initializing TW2804 channel %d\n",
291 write_regs(client, global_registers, 0) < 0) {
292 dev_err(&client->dev,
296 if (write_regs(client, channel_registers, dec->channel) < 0) {
297 dev_err(&client->dev,
310 reg = read_reg(client, 0x22, dec->channel);
317 reg = write_reg(client, 0x22, reg, dec->channel);
346 static int tw2804_probe(struct i2c_client *client)
348 struct i2c_adapter *adapter = client->adapter;
357 state = devm_kzalloc(&client->dev, sizeof(*state), GFP_KERNEL);
361 v4l2_i2c_subdev_init(sd, client, &tw2804_ops);
401 v4l_info(client, "chip found @ 0x%02x (%s)\n",
402 client->addr << 1, client->adapter->name);
407 static void tw2804_remove(struct i2c_client *client)
409 struct v4l2_subdev *sd = i2c_get_clientdata(client);