[PATCH v1 4/6] media: rkisp1-isp: Propagate sink -> source format in YUV passthough

Isaac Scott posted 6 patches 4 days, 21 hours ago
There is a newer version of this series
[PATCH v1 4/6] media: rkisp1-isp: Propagate sink -> source format in YUV passthough
Posted by Isaac Scott 4 days, 21 hours ago
If we are in bypass mode, we should propagate the sink format of the ISP
to the source format to ensure the pipeline is valid. Ensure the source
pad format of the ISP is configured to the same format as the sink pad.

Signed-off-by: Isaac Scott <isaac.scott@ideasonboard.com>
---
 drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c b/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
index 716bd7f3c66d..c457593526c5 100644
--- a/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
+++ b/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
@@ -630,6 +630,11 @@ static void rkisp1_isp_set_src_fmt(struct rkisp1_isp *isp,
 	 */
 	sink_info = rkisp1_mbus_info_get_by_code(sink_fmt->code);
 
+	if (sink_info->pixel_enc == V4L2_PIXEL_ENC_YUV) {
+		format->code = sink_fmt->code;
+		dev_dbg(isp->rkisp1->dev, "ISP sink pad is YUV");
+	}
+
 	src_fmt->code = format->code;
 	src_info = rkisp1_mbus_info_get_by_code(src_fmt->code);
 	if (!src_info || !(src_info->direction & RKISP1_ISP_SD_SRC)) {
-- 
2.43.0
Re: [PATCH v1 4/6] media: rkisp1-isp: Propagate sink -> source format in YUV passthough
Posted by Laurent Pinchart 4 days, 17 hours ago
On Wed, Feb 04, 2026 at 11:25:04AM +0000, Isaac Scott wrote:
> If we are in bypass mode, we should propagate the sink format of the ISP
> to the source format to ensure the pipeline is valid. Ensure the source
> pad format of the ISP is configured to the same format as the sink pad.
> 
> Signed-off-by: Isaac Scott <isaac.scott@ideasonboard.com>
> ---
>  drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c b/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
> index 716bd7f3c66d..c457593526c5 100644
> --- a/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
> +++ b/drivers/media/platform/rockchip/rkisp1/rkisp1-isp.c
> @@ -630,6 +630,11 @@ static void rkisp1_isp_set_src_fmt(struct rkisp1_isp *isp,
>  	 */
>  	sink_info = rkisp1_mbus_info_get_by_code(sink_fmt->code);
>  

A comment would be useful here, or maybe better a rework of the comment
block just above.

> +	if (sink_info->pixel_enc == V4L2_PIXEL_ENC_YUV) {
> +		format->code = sink_fmt->code;
> +		dev_dbg(isp->rkisp1->dev, "ISP sink pad is YUV");

Drop the debug message.

> +	}
> +
>  	src_fmt->code = format->code;
>  	src_info = rkisp1_mbus_info_get_by_code(src_fmt->code);
>  	if (!src_info || !(src_info->direction & RKISP1_ISP_SD_SRC)) {

-- 
Regards,

Laurent Pinchart