Message ID | 20220222214643.587535-1-jacopo@jmondi.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | media: imx: csis: Store pads format separately | expand |
Hi Jacopo, Thank you for the patch. On Tue, Feb 22, 2022 at 10:46:43PM +0100, Jacopo Mondi wrote: > As the formats on the sink and source pad might be different store > them separately. > > The pad format is used to configure the image width and height in > mipi_csis_system_enable(). As the csis cannot downscale, using the sink > or the source one isn't relevant. > > Signed-off-by: Jacopo Mondi <jacopo@jmondi.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > --- > > Hans, this comes as a late fix for pull request > [GIT PULL FOR v5.18] De-stage imx7-mipi-csis & some fixes > > I'm sorry if this arrives a bit late, but I only realized when I > exercized RGB24 today. > > Can this be collected together with the above pull request ? > Thanks > j > --- > drivers/media/platform/imx/imx-mipi-csis.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/media/platform/imx/imx-mipi-csis.c b/drivers/media/platform/imx/imx-mipi-csis.c > index 6f975b3702bc..c23e512886f9 100644 > --- a/drivers/media/platform/imx/imx-mipi-csis.c > +++ b/drivers/media/platform/imx/imx-mipi-csis.c > @@ -330,7 +330,7 @@ struct csi_state { > > struct mutex lock; /* Protect csis_fmt, format_mbus and state */ > const struct csis_pix_format *csis_fmt; > - struct v4l2_mbus_framefmt format_mbus; > + struct v4l2_mbus_framefmt format_mbus[CSIS_PADS_NUM]; > u32 state; > > spinlock_t slock; /* Protect events */ > @@ -535,7 +535,7 @@ static void mipi_csis_system_enable(struct csi_state *state, int on) > /* Called with the state.lock mutex held */ > static void __mipi_csis_set_format(struct csi_state *state) > { > - struct v4l2_mbus_framefmt *mf = &state->format_mbus; > + struct v4l2_mbus_framefmt *mf = &state->format_mbus[CSIS_PAD_SINK]; > u32 val; > > /* Color format */ > @@ -967,7 +967,7 @@ mipi_csis_get_format(struct csi_state *state, > if (which == V4L2_SUBDEV_FORMAT_TRY) > return v4l2_subdev_get_try_format(&state->sd, sd_state, pad); > > - return &state->format_mbus; > + return &state->format_mbus[pad]; > } > > static int mipi_csis_init_cfg(struct v4l2_subdev *sd,
diff --git a/drivers/media/platform/imx/imx-mipi-csis.c b/drivers/media/platform/imx/imx-mipi-csis.c index 6f975b3702bc..c23e512886f9 100644 --- a/drivers/media/platform/imx/imx-mipi-csis.c +++ b/drivers/media/platform/imx/imx-mipi-csis.c @@ -330,7 +330,7 @@ struct csi_state { struct mutex lock; /* Protect csis_fmt, format_mbus and state */ const struct csis_pix_format *csis_fmt; - struct v4l2_mbus_framefmt format_mbus; + struct v4l2_mbus_framefmt format_mbus[CSIS_PADS_NUM]; u32 state; spinlock_t slock; /* Protect events */ @@ -535,7 +535,7 @@ static void mipi_csis_system_enable(struct csi_state *state, int on) /* Called with the state.lock mutex held */ static void __mipi_csis_set_format(struct csi_state *state) { - struct v4l2_mbus_framefmt *mf = &state->format_mbus; + struct v4l2_mbus_framefmt *mf = &state->format_mbus[CSIS_PAD_SINK]; u32 val; /* Color format */ @@ -967,7 +967,7 @@ mipi_csis_get_format(struct csi_state *state, if (which == V4L2_SUBDEV_FORMAT_TRY) return v4l2_subdev_get_try_format(&state->sd, sd_state, pad); - return &state->format_mbus; + return &state->format_mbus[pad]; } static int mipi_csis_init_cfg(struct v4l2_subdev *sd,
As the formats on the sink and source pad might be different store them separately. The pad format is used to configure the image width and height in mipi_csis_system_enable(). As the csis cannot downscale, using the sink or the source one isn't relevant. Signed-off-by: Jacopo Mondi <jacopo@jmondi.org> --- Hans, this comes as a late fix for pull request [GIT PULL FOR v5.18] De-stage imx7-mipi-csis & some fixes I'm sorry if this arrives a bit late, but I only realized when I exercized RGB24 today. Can this be collected together with the above pull request ? Thanks j --- drivers/media/platform/imx/imx-mipi-csis.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) -- 2.35.0