media: ti-vpe: cal: remove cal_camerarx->fmtinfo

struct cal_camerarx has fmtinfo field which is used to point to the
current active input format. The only place where the field is used is
cal_camerarx_get_ext_link_freq().

With multiple streams the whole concept of single input format is not
valid anymore, so lets remove the field by looking up the format in
cal_camerarx_get_ext_link_freq(), making it easier to handle the
multistream-case in the following patches.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
Tomi Valkeinen 2021-06-14 13:23:37 +02:00 committed by Mauro Carvalho Chehab
parent 8bfd1af2fd
commit 2e7e09a902
2 changed files with 8 additions and 5 deletions

View File

@ -49,9 +49,16 @@ static s64 cal_camerarx_get_ext_link_freq(struct cal_camerarx *phy)
{
struct v4l2_fwnode_bus_mipi_csi2 *mipi_csi2 = &phy->endpoint.bus.mipi_csi2;
u32 num_lanes = mipi_csi2->num_data_lanes;
u32 bpp = phy->fmtinfo->bpp;
const struct cal_format_info *fmtinfo;
u32 bpp;
s64 freq;
fmtinfo = cal_format_by_code(phy->formats[CAL_CAMERARX_PAD_SINK].code);
if (!fmtinfo)
return -EINVAL;
bpp = fmtinfo->bpp;
freq = v4l2_get_link_freq(phy->source->ctrl_handler, bpp, 2 * num_lanes);
if (freq < 0) {
phy_err(phy, "failed to get link freq for subdev '%s'\n",
@ -728,9 +735,6 @@ static int cal_camerarx_sd_set_fmt(struct v4l2_subdev *sd,
format->which);
*fmt = format->format;
if (format->which == V4L2_SUBDEV_FORMAT_ACTIVE)
phy->fmtinfo = fmtinfo;
return 0;
}

View File

@ -163,7 +163,6 @@ struct cal_camerarx {
struct v4l2_subdev subdev;
struct media_pad pads[2];
struct v4l2_mbus_framefmt formats[2];
const struct cal_format_info *fmtinfo;
};
struct cal_dev {