media: tegra-video: Use accessors for pad config 'try_*' fields
The 'try_*' fields of the v4l2_subdev_pad_config structure are meant to be accessed through helper functions. Replace direct access with usage of the v4l2_subdev_get_pad_format(), v4l2_subdev_get_pad_crop() and v4l2_subdev_get_pad_compose() helpers. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
parent
9295e7e0cc
commit
0623979d83
@ -439,6 +439,7 @@ static int __tegra_channel_try_format(struct tegra_vi_channel *chan,
|
||||
.which = V4L2_SUBDEV_FORMAT_ACTIVE,
|
||||
.target = V4L2_SEL_TGT_CROP_BOUNDS,
|
||||
};
|
||||
struct v4l2_rect *try_crop;
|
||||
int ret;
|
||||
|
||||
subdev = tegra_channel_get_remote_source_subdev(chan);
|
||||
@ -473,24 +474,25 @@ static int __tegra_channel_try_format(struct tegra_vi_channel *chan,
|
||||
* Attempt to obtain the format size from subdev.
|
||||
* If not available, try to get crop boundary from subdev.
|
||||
*/
|
||||
try_crop = v4l2_subdev_get_pad_crop(subdev, sd_state, 0);
|
||||
fse.code = fmtinfo->code;
|
||||
ret = v4l2_subdev_call(subdev, pad, enum_frame_size, sd_state, &fse);
|
||||
if (ret) {
|
||||
if (!v4l2_subdev_has_op(subdev, pad, get_selection)) {
|
||||
sd_state->pads->try_crop.width = 0;
|
||||
sd_state->pads->try_crop.height = 0;
|
||||
try_crop->width = 0;
|
||||
try_crop->height = 0;
|
||||
} else {
|
||||
ret = v4l2_subdev_call(subdev, pad, get_selection,
|
||||
NULL, &sdsel);
|
||||
if (ret)
|
||||
return -EINVAL;
|
||||
|
||||
sd_state->pads->try_crop.width = sdsel.r.width;
|
||||
sd_state->pads->try_crop.height = sdsel.r.height;
|
||||
try_crop->width = sdsel.r.width;
|
||||
try_crop->height = sdsel.r.height;
|
||||
}
|
||||
} else {
|
||||
sd_state->pads->try_crop.width = fse.max_width;
|
||||
sd_state->pads->try_crop.height = fse.max_height;
|
||||
try_crop->width = fse.max_width;
|
||||
try_crop->height = fse.max_height;
|
||||
}
|
||||
|
||||
ret = v4l2_subdev_call(subdev, pad, set_fmt, sd_state, &fmt);
|
||||
|
Loading…
x
Reference in New Issue
Block a user