Message ID | 20221005152809.3785786-10-dave.stevenson@raspberrypi.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Updates to ov9282 sensor driver | expand |
Hi Dave, On Wed, Oct 05, 2022 at 04:28:02PM +0100, Dave Stevenson wrote: > Use v4l2_ctrl_new_fwnode_properties to add V4L2_CID_CAMERA_ORIENTATION > and V4L2_CID_CAMERA_SENSOR_ROTATION. > > Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Seems like I forgot this patch Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Thanks j > --- > drivers/media/i2c/ov9282.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/drivers/media/i2c/ov9282.c b/drivers/media/i2c/ov9282.c > index 334b31af34a4..183283d191b1 100644 > --- a/drivers/media/i2c/ov9282.c > +++ b/drivers/media/i2c/ov9282.c > @@ -989,10 +989,11 @@ static int ov9282_init_controls(struct ov9282 *ov9282) > { > struct v4l2_ctrl_handler *ctrl_hdlr = &ov9282->ctrl_handler; > const struct ov9282_mode *mode = ov9282->cur_mode; > + struct v4l2_fwnode_device_properties props; > u32 lpfr; > int ret; > > - ret = v4l2_ctrl_handler_init(ctrl_hdlr, 6); > + ret = v4l2_ctrl_handler_init(ctrl_hdlr, 8); > if (ret) > return ret; > > @@ -1050,7 +1051,14 @@ static int ov9282_init_controls(struct ov9282 *ov9282) > if (ov9282->hblank_ctrl) > ov9282->hblank_ctrl->flags |= V4L2_CTRL_FLAG_READ_ONLY; > > - if (ctrl_hdlr->error) { > + ret = v4l2_fwnode_device_parse(ov9282->dev, &props); > + if (!ret) { > + /* Failure sets ctrl_hdlr->error, which we check afterwards anyway */ > + v4l2_ctrl_new_fwnode_properties(ctrl_hdlr, &ov9282_ctrl_ops, > + &props); > + } > + > + if (ctrl_hdlr->error || ret) { > dev_err(ov9282->dev, "control init failed: %d", > ctrl_hdlr->error); > v4l2_ctrl_handler_free(ctrl_hdlr); > -- > 2.34.1 >
diff --git a/drivers/media/i2c/ov9282.c b/drivers/media/i2c/ov9282.c index 334b31af34a4..183283d191b1 100644 --- a/drivers/media/i2c/ov9282.c +++ b/drivers/media/i2c/ov9282.c @@ -989,10 +989,11 @@ static int ov9282_init_controls(struct ov9282 *ov9282) { struct v4l2_ctrl_handler *ctrl_hdlr = &ov9282->ctrl_handler; const struct ov9282_mode *mode = ov9282->cur_mode; + struct v4l2_fwnode_device_properties props; u32 lpfr; int ret; - ret = v4l2_ctrl_handler_init(ctrl_hdlr, 6); + ret = v4l2_ctrl_handler_init(ctrl_hdlr, 8); if (ret) return ret; @@ -1050,7 +1051,14 @@ static int ov9282_init_controls(struct ov9282 *ov9282) if (ov9282->hblank_ctrl) ov9282->hblank_ctrl->flags |= V4L2_CTRL_FLAG_READ_ONLY; - if (ctrl_hdlr->error) { + ret = v4l2_fwnode_device_parse(ov9282->dev, &props); + if (!ret) { + /* Failure sets ctrl_hdlr->error, which we check afterwards anyway */ + v4l2_ctrl_new_fwnode_properties(ctrl_hdlr, &ov9282_ctrl_ops, + &props); + } + + if (ctrl_hdlr->error || ret) { dev_err(ov9282->dev, "control init failed: %d", ctrl_hdlr->error); v4l2_ctrl_handler_free(ctrl_hdlr);
Use v4l2_ctrl_new_fwnode_properties to add V4L2_CID_CAMERA_ORIENTATION and V4L2_CID_CAMERA_SENSOR_ROTATION. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> --- drivers/media/i2c/ov9282.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-)