Lines Matching refs:client

624 static struct ov5642 *to_ov5642(const struct i2c_client *client)  in to_ov5642()  argument
626 return container_of(i2c_get_clientdata(client), struct ov5642, subdev); in to_ov5642()
642 static int reg_read(struct i2c_client *client, u16 reg, u8 *val) in reg_read() argument
648 ret = i2c_master_send(client, data, 2); in reg_read()
650 dev_err(&client->dev, "%s: i2c read error, reg: %x\n", in reg_read()
655 ret = i2c_master_recv(client, val, 1); in reg_read()
657 dev_err(&client->dev, "%s: i2c read error, reg: %x\n", in reg_read()
664 static int reg_write(struct i2c_client *client, u16 reg, u8 val) in reg_write() argument
669 ret = i2c_master_send(client, data, 3); in reg_write()
671 dev_err(&client->dev, "%s: i2c write error, reg: %x\n", in reg_write()
683 static int reg_write16(struct i2c_client *client, u16 reg, u16 val16) in reg_write16() argument
687 ret = reg_write(client, reg, val16 >> 8); in reg_write16()
690 return reg_write(client, reg + 1, val16 & 0x00ff); in reg_write16()
696 struct i2c_client *client = v4l2_get_subdevdata(sd); in ov5642_get_register() local
705 ret = reg_read(client, reg->reg, &val); in ov5642_get_register()
714 struct i2c_client *client = v4l2_get_subdevdata(sd); in ov5642_set_register() local
719 return reg_write(client, reg->reg, reg->val); in ov5642_set_register()
723 static int ov5642_write_array(struct i2c_client *client, in ov5642_write_array() argument
727 int ret = reg_write(client, vals->reg_num, vals->value); in ov5642_write_array()
732 dev_dbg(&client->dev, "Register list loaded\n"); in ov5642_write_array()
738 struct i2c_client *client = v4l2_get_subdevdata(sd); in ov5642_set_resolution() local
739 struct ov5642 *priv = to_ov5642(client); in ov5642_set_resolution()
752 ret = reg_write16(client, REG_WINDOW_START_X_HIGH, start_x); in ov5642_set_resolution()
754 ret = reg_write16(client, REG_WINDOW_START_Y_HIGH, start_y); in ov5642_set_resolution()
761 ret = reg_write16(client, REG_WINDOW_WIDTH_HIGH, width); in ov5642_set_resolution()
763 ret = reg_write16(client, REG_WINDOW_HEIGHT_HIGH, height); in ov5642_set_resolution()
770 ret = reg_write16(client, REG_OUT_WIDTH_HIGH, width); in ov5642_set_resolution()
772 ret = reg_write16(client, REG_OUT_HEIGHT_HIGH, height); in ov5642_set_resolution()
776 ret = reg_write16(client, REG_OUT_TOTAL_WIDTH_HIGH, total_width); in ov5642_set_resolution()
778 ret = reg_write16(client, REG_OUT_TOTAL_HEIGHT_HIGH, total_height); in ov5642_set_resolution()
782 ret = reg_write16(client, REG_AVG_WINDOW_END_X_HIGH, width); in ov5642_set_resolution()
784 ret = reg_write16(client, REG_AVG_WINDOW_END_Y_HIGH, height); in ov5642_set_resolution()
794 struct i2c_client *client = v4l2_get_subdevdata(sd); in ov5642_set_fmt() local
795 struct ov5642 *priv = to_ov5642(client); in ov5642_set_fmt()
825 struct i2c_client *client = v4l2_get_subdevdata(sd); in ov5642_get_fmt() local
826 struct ov5642 *priv = to_ov5642(client); in ov5642_get_fmt()
855 struct i2c_client *client = v4l2_get_subdevdata(sd); in ov5642_s_crop() local
856 struct ov5642 *priv = to_ov5642(client); in ov5642_s_crop()
872 ret = ov5642_write_array(client, ov5642_default_regs_init); in ov5642_s_crop()
876 ret = ov5642_write_array(client, ov5642_default_regs_finalise); in ov5642_s_crop()
883 struct i2c_client *client = v4l2_get_subdevdata(sd); in ov5642_g_crop() local
884 struct ov5642 *priv = to_ov5642(client); in ov5642_g_crop()
921 struct i2c_client *client = v4l2_get_subdevdata(sd); in ov5642_s_power() local
922 struct soc_camera_subdev_desc *ssdd = soc_camera_i2c_to_desc(client); in ov5642_s_power()
923 struct ov5642 *priv = to_ov5642(client); in ov5642_s_power()
927 return soc_camera_power_off(&client->dev, ssdd, priv->clk); in ov5642_s_power()
929 ret = soc_camera_power_on(&client->dev, ssdd, priv->clk); in ov5642_s_power()
933 ret = ov5642_write_array(client, ov5642_default_regs_init); in ov5642_s_power()
937 ret = ov5642_write_array(client, ov5642_default_regs_finalise); in ov5642_s_power()
969 static int ov5642_video_probe(struct i2c_client *client) in ov5642_video_probe() argument
971 struct v4l2_subdev *subdev = i2c_get_clientdata(client); in ov5642_video_probe()
981 ret = reg_read(client, REG_CHIP_ID_HIGH, &id_high); in ov5642_video_probe()
987 ret = reg_read(client, REG_CHIP_ID_LOW, &id_low); in ov5642_video_probe()
993 dev_info(&client->dev, "Chip ID 0x%04x detected\n", id); in ov5642_video_probe()
1007 static int ov5642_probe(struct i2c_client *client, in ov5642_probe() argument
1011 struct soc_camera_subdev_desc *ssdd = soc_camera_i2c_to_desc(client); in ov5642_probe()
1015 dev_err(&client->dev, "OV5642: missing platform data!\n"); in ov5642_probe()
1019 priv = devm_kzalloc(&client->dev, sizeof(struct ov5642), GFP_KERNEL); in ov5642_probe()
1023 v4l2_i2c_subdev_init(&priv->subdev, client, &ov5642_subdev_ops); in ov5642_probe()
1034 priv->clk = v4l2_clk_get(&client->dev, "mclk"); in ov5642_probe()
1038 ret = ov5642_video_probe(client); in ov5642_probe()
1045 static int ov5642_remove(struct i2c_client *client) in ov5642_remove() argument
1047 struct soc_camera_subdev_desc *ssdd = soc_camera_i2c_to_desc(client); in ov5642_remove()
1048 struct ov5642 *priv = to_ov5642(client); in ov5642_remove()