mt9v022           164 drivers/staging/media/soc_camera/soc_mt9v022.c static struct mt9v022 *to_mt9v022(const struct i2c_client *client)
mt9v022           166 drivers/staging/media/soc_camera/soc_mt9v022.c 	return container_of(i2c_get_clientdata(client), struct mt9v022, subdev);
mt9v022           204 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           212 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->chip_control |= 0x10;
mt9v022           213 drivers/staging/media/soc_camera/soc_mt9v022.c 	ret = reg_write(client, MT9V022_CHIP_CONTROL, mt9v022->chip_control);
mt9v022           226 drivers/staging/media/soc_camera/soc_mt9v022.c 		ret = reg_write(client, mt9v022->reg->max_total_shutter_width, 480);
mt9v022           233 drivers/staging/media/soc_camera/soc_mt9v022.c 		return v4l2_ctrl_handler_setup(&mt9v022->hdl);
mt9v022           241 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           245 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->chip_control &= ~0x10;
mt9v022           246 drivers/staging/media/soc_camera/soc_mt9v022.c 		if (is_mt9v022_rev3(mt9v022->chip_version) ||
mt9v022           247 drivers/staging/media/soc_camera/soc_mt9v022.c 		    is_mt9v024(mt9v022->chip_version)) {
mt9v022           257 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->chip_control |= 0x10;
mt9v022           258 drivers/staging/media/soc_camera/soc_mt9v022.c 		if (is_mt9v022_rev3(mt9v022->chip_version) ||
mt9v022           259 drivers/staging/media/soc_camera/soc_mt9v022.c 		    is_mt9v024(mt9v022->chip_version)) {
mt9v022           270 drivers/staging/media/soc_camera/soc_mt9v022.c 	if (reg_write(client, MT9V022_CHIP_CONTROL, mt9v022->chip_control) < 0)
mt9v022           280 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           290 drivers/staging/media/soc_camera/soc_mt9v022.c 	if (mt9v022->fmts == mt9v022_colour_fmts) {
mt9v022           306 drivers/staging/media/soc_camera/soc_mt9v022.c 			ret = reg_write(client, mt9v022->reg->max_total_shutter_width,
mt9v022           307 drivers/staging/media/soc_camera/soc_mt9v022.c 					rect.height + mt9v022->y_skip_top + 43);
mt9v022           326 drivers/staging/media/soc_camera/soc_mt9v022.c 	if (is_mt9v024(mt9v022->chip_version)) {
mt9v022           334 drivers/staging/media/soc_camera/soc_mt9v022.c 		ret = v4l2_ctrl_s_ctrl(mt9v022->hblank,
mt9v022           338 drivers/staging/media/soc_camera/soc_mt9v022.c 		ret = v4l2_ctrl_s_ctrl(mt9v022->vblank, 45);
mt9v022           343 drivers/staging/media/soc_camera/soc_mt9v022.c 				rect.height + mt9v022->y_skip_top);
mt9v022           350 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->rect = rect;
mt9v022           360 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           373 drivers/staging/media/soc_camera/soc_mt9v022.c 		sel->r = mt9v022->rect;
mt9v022           386 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           391 drivers/staging/media/soc_camera/soc_mt9v022.c 	mf->width	= mt9v022->rect.width;
mt9v022           392 drivers/staging/media/soc_camera/soc_mt9v022.c 	mf->height	= mt9v022->rect.height;
mt9v022           393 drivers/staging/media/soc_camera/soc_mt9v022.c 	mf->code	= mt9v022->fmt->code;
mt9v022           394 drivers/staging/media/soc_camera/soc_mt9v022.c 	mf->colorspace	= mt9v022->fmt->colorspace;
mt9v022           405 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           409 drivers/staging/media/soc_camera/soc_mt9v022.c 		.r.left = mt9v022->rect.left,
mt9v022           410 drivers/staging/media/soc_camera/soc_mt9v022.c 		.r.top = mt9v022->rect.top,
mt9v022           423 drivers/staging/media/soc_camera/soc_mt9v022.c 		if (mt9v022->model != MT9V022IX7ATM)
mt9v022           428 drivers/staging/media/soc_camera/soc_mt9v022.c 		if (mt9v022->model != MT9V022IX7ATC)
mt9v022           438 drivers/staging/media/soc_camera/soc_mt9v022.c 		mf->width	= mt9v022->rect.width;
mt9v022           439 drivers/staging/media/soc_camera/soc_mt9v022.c 		mf->height	= mt9v022->rect.height;
mt9v022           440 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->fmt	= fmt;
mt9v022           453 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           463 drivers/staging/media/soc_camera/soc_mt9v022.c 		&mf->height, MT9V022_MIN_HEIGHT + mt9v022->y_skip_top,
mt9v022           464 drivers/staging/media/soc_camera/soc_mt9v022.c 		MT9V022_MAX_HEIGHT + mt9v022->y_skip_top, align, 0);
mt9v022           466 drivers/staging/media/soc_camera/soc_mt9v022.c 	fmt = mt9v022_find_datafmt(mf->code, mt9v022->fmts,
mt9v022           467 drivers/staging/media/soc_camera/soc_mt9v022.c 				   mt9v022->num_fmts);
mt9v022           469 drivers/staging/media/soc_camera/soc_mt9v022.c 		fmt = mt9v022->fmt;
mt9v022           518 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           520 drivers/staging/media/soc_camera/soc_mt9v022.c 	return soc_camera_set_power(&client->dev, ssdd, mt9v022->clk, on);
mt9v022           525 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = container_of(ctrl->handler,
mt9v022           526 drivers/staging/media/soc_camera/soc_mt9v022.c 					       struct mt9v022, hdl);
mt9v022           527 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct v4l2_subdev *sd = &mt9v022->subdev;
mt9v022           529 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct v4l2_ctrl *gain = mt9v022->gain;
mt9v022           530 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct v4l2_ctrl *exp = mt9v022->exposure;
mt9v022           569 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = container_of(ctrl->handler,
mt9v022           570 drivers/staging/media/soc_camera/soc_mt9v022.c 					       struct mt9v022, hdl);
mt9v022           571 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct v4l2_subdev *sd = &mt9v022->subdev;
mt9v022           597 drivers/staging/media/soc_camera/soc_mt9v022.c 			struct v4l2_ctrl *gain = mt9v022->gain;
mt9v022           624 drivers/staging/media/soc_camera/soc_mt9v022.c 			struct v4l2_ctrl *exp = mt9v022->exposure;
mt9v022           664 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           670 drivers/staging/media/soc_camera/soc_mt9v022.c 	ret = mt9v022_s_power(&mt9v022->subdev, 1);
mt9v022           685 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->chip_version = data;
mt9v022           687 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->reg = is_mt9v024(data) ? &mt9v024_register :
mt9v022           707 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->model = MT9V022IX7ATC;
mt9v022           708 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->fmts = mt9v022_colour_fmts;
mt9v022           711 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->model = MT9V022IX7ATM;
mt9v022           712 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->fmts = mt9v022_monochrome_fmts;
mt9v022           718 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->num_fmts = 0;
mt9v022           731 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->num_fmts++;
mt9v022           733 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->fmts++;
mt9v022           736 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->num_fmts++;
mt9v022           738 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->fmt = &mt9v022->fmts[0];
mt9v022           741 drivers/staging/media/soc_camera/soc_mt9v022.c 		 data, mt9v022->model == MT9V022IX7ATM ?
mt9v022           749 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022_s_power(&mt9v022->subdev, 0);
mt9v022           756 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           758 drivers/staging/media/soc_camera/soc_mt9v022.c 	*lines = mt9v022->y_skip_top;
mt9v022           781 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           783 drivers/staging/media/soc_camera/soc_mt9v022.c 	if (code->pad || code->index >= mt9v022->num_fmts)
mt9v022           786 drivers/staging/media/soc_camera/soc_mt9v022.c 	code->code = mt9v022->fmts[code->index].code;
mt9v022           812 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           814 drivers/staging/media/soc_camera/soc_mt9v022.c 	unsigned int bps = soc_mbus_get_fmtdesc(mt9v022->fmt->code)->bits_per_sample;
mt9v022           839 drivers/staging/media/soc_camera/soc_mt9v022.c 	ret = reg_write(client, mt9v022->reg->pixclk_fv_lv, pixclk);
mt9v022           844 drivers/staging/media/soc_camera/soc_mt9v022.c 		mt9v022->chip_control &= ~0x8;
mt9v022           846 drivers/staging/media/soc_camera/soc_mt9v022.c 	ret = reg_write(client, MT9V022_CHIP_CONTROL, mt9v022->chip_control);
mt9v022           851 drivers/staging/media/soc_camera/soc_mt9v022.c 		pixclk, mt9v022->chip_control);
mt9v022           884 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022;
mt9v022           901 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022 = devm_kzalloc(&client->dev, sizeof(struct mt9v022), GFP_KERNEL);
mt9v022           902 drivers/staging/media/soc_camera/soc_mt9v022.c 	if (!mt9v022)
mt9v022           906 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_i2c_subdev_init(&mt9v022->subdev, client, &mt9v022_subdev_ops);
mt9v022           907 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_ctrl_handler_init(&mt9v022->hdl, 6);
mt9v022           908 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_ctrl_new_std(&mt9v022->hdl, &mt9v022_ctrl_ops,
mt9v022           910 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_ctrl_new_std(&mt9v022->hdl, &mt9v022_ctrl_ops,
mt9v022           912 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->autogain = v4l2_ctrl_new_std(&mt9v022->hdl, &mt9v022_ctrl_ops,
mt9v022           914 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->gain = v4l2_ctrl_new_std(&mt9v022->hdl, &mt9v022_ctrl_ops,
mt9v022           921 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->autoexposure = v4l2_ctrl_new_std_menu(&mt9v022->hdl,
mt9v022           924 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->exposure = v4l2_ctrl_new_std(&mt9v022->hdl, &mt9v022_ctrl_ops,
mt9v022           927 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->hblank = v4l2_ctrl_new_std(&mt9v022->hdl, &mt9v022_ctrl_ops,
mt9v022           932 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->vblank = v4l2_ctrl_new_std(&mt9v022->hdl, &mt9v022_ctrl_ops,
mt9v022           937 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->subdev.ctrl_handler = &mt9v022->hdl;
mt9v022           938 drivers/staging/media/soc_camera/soc_mt9v022.c 	if (mt9v022->hdl.error) {
mt9v022           939 drivers/staging/media/soc_camera/soc_mt9v022.c 		int err = mt9v022->hdl.error;
mt9v022           944 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_ctrl_auto_cluster(2, &mt9v022->autoexposure,
mt9v022           946 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_ctrl_auto_cluster(2, &mt9v022->autogain, 0, true);
mt9v022           948 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->chip_control = MT9V022_CHIP_CONTROL_DEFAULT;
mt9v022           954 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->y_skip_top	= pdata ? pdata->y_skip_top : 0;
mt9v022           955 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->rect.left	= MT9V022_COLUMN_SKIP;
mt9v022           956 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->rect.top	= MT9V022_ROW_SKIP;
mt9v022           957 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->rect.width	= MT9V022_MAX_WIDTH;
mt9v022           958 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->rect.height	= MT9V022_MAX_HEIGHT;
mt9v022           960 drivers/staging/media/soc_camera/soc_mt9v022.c 	mt9v022->clk = v4l2_clk_get(&client->dev, "mclk");
mt9v022           961 drivers/staging/media/soc_camera/soc_mt9v022.c 	if (IS_ERR(mt9v022->clk)) {
mt9v022           962 drivers/staging/media/soc_camera/soc_mt9v022.c 		ret = PTR_ERR(mt9v022->clk);
mt9v022           968 drivers/staging/media/soc_camera/soc_mt9v022.c 		v4l2_clk_put(mt9v022->clk);
mt9v022           970 drivers/staging/media/soc_camera/soc_mt9v022.c 		v4l2_ctrl_handler_free(&mt9v022->hdl);
mt9v022           978 drivers/staging/media/soc_camera/soc_mt9v022.c 	struct mt9v022 *mt9v022 = to_mt9v022(client);
mt9v022           981 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_clk_put(mt9v022->clk);
mt9v022           982 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_device_unregister_subdev(&mt9v022->subdev);
mt9v022           985 drivers/staging/media/soc_camera/soc_mt9v022.c 	v4l2_ctrl_handler_free(&mt9v022->hdl);