Re: [PATCH RFC] [media] adv7180.c: convert to v4l2 control framework

From: Federico Vaga
Date: Wed Jul 11 2012 - 09:32:47 EST


Hi Hans,

Thank you for your review

> > +static int adv7180_init_controls(struct adv7180_state *state)
> > +{
> > + v4l2_ctrl_handler_init(&state->ctrl_hdl, 2);
>
> 2 -> 4, since there are 4 controls. It's a hint only, but it helps
> optimizing the internal hash data structure.

Sure :)

> >
> > @@ -445,9 +402,9 @@ static const struct v4l2_subdev_video_ops
> > adv7180_video_ops = {>
> > static const struct v4l2_subdev_core_ops adv7180_core_ops = {
> >
> > .g_chip_ident = adv7180_g_chip_ident,
> > .s_std = adv7180_s_std,
> >
> > - .queryctrl = adv7180_queryctrl,
> > - .g_ctrl = adv7180_g_ctrl,
> > - .s_ctrl = adv7180_s_ctrl,
> > + .queryctrl = v4l2_subdev_queryctrl,
> > + .g_ctrl = v4l2_subdev_g_ctrl,
> > + .s_ctrl = v4l2_subdev_s_ctrl,
>
> If adv7180 is currently *only* used by bridge/platform drivers that
> also use the control framework, then you can remove
> queryctrl/g/s_ctrl altogether.

I'm not sure to undestand this point. I "grepped" for the adv7180 and it
seem that I'm the only user of the adv7180 (sta2x11 VIP driver). In the
VIP driver I don't use the control framework (there aren't controls), so
I think these lines must be there. Am I wrong?

I think you are thinking at the "Inheriting Controls" section of the
v4l2-controls.txt document. Right?


> > - ret = i2c_smbus_write_byte_data(client, ADV7180_HUE_REG,
> > state->hue); + ret = i2c_smbus_write_byte_data(client,
> > ADV7180_HUE_REG,
> > + ADV7180_HUE_DEF);
>
> It shouldn't be necessary to initialize the controls since
> v4l2_ctrl_handler_setup does that for you already.

Removed

--
Federico Vaga
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/