• Home
  • Raw
  • Download

Lines Matching refs:client

88 static struct imx074 *to_imx074(const struct i2c_client *client)  in to_imx074()  argument
90 return container_of(i2c_get_clientdata(client), struct imx074, subdev); in to_imx074()
105 static int reg_write(struct i2c_client *client, const u16 addr, const u8 data) in reg_write() argument
107 struct i2c_adapter *adap = client->adapter; in reg_write()
112 msg.addr = client->addr; in reg_write()
128 static int reg_read(struct i2c_client *client, const u16 addr) in reg_read() argument
134 .addr = client->addr, in reg_read()
139 .addr = client->addr, in reg_read()
146 ret = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); in reg_read()
148 dev_warn(&client->dev, "Reading register %x from %x failed\n", in reg_read()
149 addr, client->addr); in reg_read()
162 struct i2c_client *client = v4l2_get_subdevdata(sd); in imx074_set_fmt() local
163 struct imx074 *priv = to_imx074(client); in imx074_set_fmt()
195 struct i2c_client *client = v4l2_get_subdevdata(sd); in imx074_get_fmt() local
196 struct imx074 *priv = to_imx074(client); in imx074_get_fmt()
248 struct i2c_client *client = v4l2_get_subdevdata(sd); in imx074_s_stream() local
251 return reg_write(client, MODE_SELECT, !!enable); in imx074_s_stream()
256 struct i2c_client *client = v4l2_get_subdevdata(sd); in imx074_s_power() local
257 struct soc_camera_subdev_desc *ssdd = soc_camera_i2c_to_desc(client); in imx074_s_power()
258 struct imx074 *priv = to_imx074(client); in imx074_s_power()
260 return soc_camera_set_power(&client->dev, ssdd, priv->clk, on); in imx074_s_power()
296 static int imx074_video_probe(struct i2c_client *client) in imx074_video_probe() argument
298 struct v4l2_subdev *subdev = i2c_get_clientdata(client); in imx074_video_probe()
307 ret = reg_read(client, 0); in imx074_video_probe()
313 ret = reg_read(client, 1); in imx074_video_probe()
319 dev_info(&client->dev, "Chip ID 0x%04x detected\n", id); in imx074_video_probe()
327 reg_write(client, PLL_MULTIPLIER, 0x2D); in imx074_video_probe()
328 reg_write(client, PRE_PLL_CLK_DIV, 0x02); in imx074_video_probe()
329 reg_write(client, PLSTATIM, 0x4B); in imx074_video_probe()
332 reg_write(client, 0x3024, 0x00); in imx074_video_probe()
334 reg_write(client, IMAGE_ORIENTATION, 0x00); in imx074_video_probe()
341 reg_write(client, 0x0112, 0x08); in imx074_video_probe()
342 reg_write(client, 0x0113, 0x08); in imx074_video_probe()
345 reg_write(client, VNDMY_ABLMGSHLMT, 0x80); in imx074_video_probe()
346 reg_write(client, Y_OPBADDR_START_DI, 0x08); in imx074_video_probe()
347 reg_write(client, 0x3015, 0x37); in imx074_video_probe()
348 reg_write(client, 0x301C, 0x01); in imx074_video_probe()
349 reg_write(client, 0x302C, 0x05); in imx074_video_probe()
350 reg_write(client, 0x3031, 0x26); in imx074_video_probe()
351 reg_write(client, 0x3041, 0x60); in imx074_video_probe()
352 reg_write(client, 0x3051, 0x24); in imx074_video_probe()
353 reg_write(client, 0x3053, 0x34); in imx074_video_probe()
354 reg_write(client, 0x3057, 0xC0); in imx074_video_probe()
355 reg_write(client, 0x305C, 0x09); in imx074_video_probe()
356 reg_write(client, 0x305D, 0x07); in imx074_video_probe()
357 reg_write(client, 0x3060, 0x30); in imx074_video_probe()
358 reg_write(client, 0x3065, 0x00); in imx074_video_probe()
359 reg_write(client, 0x30AA, 0x08); in imx074_video_probe()
360 reg_write(client, 0x30AB, 0x1C); in imx074_video_probe()
361 reg_write(client, 0x30B0, 0x32); in imx074_video_probe()
362 reg_write(client, 0x30B2, 0x83); in imx074_video_probe()
363 reg_write(client, 0x30D3, 0x04); in imx074_video_probe()
364 reg_write(client, 0x3106, 0x78); in imx074_video_probe()
365 reg_write(client, 0x310C, 0x82); in imx074_video_probe()
366 reg_write(client, 0x3304, 0x05); in imx074_video_probe()
367 reg_write(client, 0x3305, 0x04); in imx074_video_probe()
368 reg_write(client, 0x3306, 0x11); in imx074_video_probe()
369 reg_write(client, 0x3307, 0x02); in imx074_video_probe()
370 reg_write(client, 0x3308, 0x0C); in imx074_video_probe()
371 reg_write(client, 0x3309, 0x06); in imx074_video_probe()
372 reg_write(client, 0x330A, 0x08); in imx074_video_probe()
373 reg_write(client, 0x330B, 0x04); in imx074_video_probe()
374 reg_write(client, 0x330C, 0x08); in imx074_video_probe()
375 reg_write(client, 0x330D, 0x06); in imx074_video_probe()
376 reg_write(client, 0x330E, 0x01); in imx074_video_probe()
377 reg_write(client, 0x3381, 0x00); in imx074_video_probe()
381 reg_write(client, FRAME_LENGTH_LINES_HI, 0x06); in imx074_video_probe()
382 reg_write(client, FRAME_LENGTH_LINES_LO, 0x48); in imx074_video_probe()
383 reg_write(client, YADDR_START, 0x00); in imx074_video_probe()
384 reg_write(client, YADDR_END, 0x2F); in imx074_video_probe()
386 reg_write(client, X_OUTPUT_SIZE_MSB, 0x08); in imx074_video_probe()
387 reg_write(client, X_OUTPUT_SIZE_LSB, 0x38); in imx074_video_probe()
389 reg_write(client, Y_OUTPUT_SIZE_MSB, 0x06); in imx074_video_probe()
390 reg_write(client, Y_OUTPUT_SIZE_LSB, 0x18); in imx074_video_probe()
391 reg_write(client, X_EVEN_INC, 0x01); in imx074_video_probe()
392 reg_write(client, X_ODD_INC, 0x03); in imx074_video_probe()
393 reg_write(client, Y_EVEN_INC, 0x01); in imx074_video_probe()
394 reg_write(client, Y_ODD_INC, 0x03); in imx074_video_probe()
395 reg_write(client, HMODEADD, 0x00); in imx074_video_probe()
396 reg_write(client, VMODEADD, 0x16); in imx074_video_probe()
397 reg_write(client, VAPPLINE_START, 0x24); in imx074_video_probe()
398 reg_write(client, VAPPLINE_END, 0x53); in imx074_video_probe()
399 reg_write(client, SHUTTER, 0x00); in imx074_video_probe()
400 reg_write(client, HADDAVE, 0x80); in imx074_video_probe()
402 reg_write(client, LANESEL, 0x00); in imx074_video_probe()
404 reg_write(client, GROUPED_PARAMETER_HOLD, 0x00); /* off */ in imx074_video_probe()
413 static int imx074_probe(struct i2c_client *client, in imx074_probe() argument
417 struct i2c_adapter *adapter = to_i2c_adapter(client->dev.parent); in imx074_probe()
418 struct soc_camera_subdev_desc *ssdd = soc_camera_i2c_to_desc(client); in imx074_probe()
422 dev_err(&client->dev, "IMX074: missing platform data!\n"); in imx074_probe()
432 priv = devm_kzalloc(&client->dev, sizeof(struct imx074), GFP_KERNEL); in imx074_probe()
436 v4l2_i2c_subdev_init(&priv->subdev, client, &imx074_subdev_ops); in imx074_probe()
440 priv->clk = v4l2_clk_get(&client->dev, "mclk"); in imx074_probe()
442 dev_info(&client->dev, "Error %ld getting clock\n", PTR_ERR(priv->clk)); in imx074_probe()
446 ret = soc_camera_power_init(&client->dev, ssdd); in imx074_probe()
450 ret = imx074_video_probe(client); in imx074_probe()
464 static int imx074_remove(struct i2c_client *client) in imx074_remove() argument
466 struct soc_camera_subdev_desc *ssdd = soc_camera_i2c_to_desc(client); in imx074_remove()
467 struct imx074 *priv = to_imx074(client); in imx074_remove()