[PATCH next] media: ti: j721e-csi2rx: Fix error handling for media_entity_remote_source_pad_unique()

Chen Ni posted 1 patch 2 days, 16 hours ago
.../media/platform/ti/j721e-csi2rx/j721e-csi2rx.c    | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
[PATCH next] media: ti: j721e-csi2rx: Fix error handling for media_entity_remote_source_pad_unique()
Posted by Chen Ni 2 days, 16 hours ago
The media_entity_remote_source_pad_unique() function returns an error
pointer on failure, not NULL. Fix the check to use IS_ERR() and return
PTR_ERR() to correctly handle allocation failures.

Fixes: 982135c0eac6 ("media: ti: j721e-csi2rx: add a subdev for the core device")
Fixes: 3ed9c0a1fdba ("media: ti: j721e-csi2rx: add multistream support")
Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
---
 .../media/platform/ti/j721e-csi2rx/j721e-csi2rx.c    | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c b/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
index 21388284cbaa..45c4c1fb84df 100644
--- a/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
+++ b/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
@@ -888,9 +888,9 @@ static int ti_csi2rx_get_stream(struct ti_csi2rx_ctx *ctx)
 
 	/* Get the source pad connected to this ctx */
 	pad = media_entity_remote_source_pad_unique(ctx->pad.entity);
-	if (!pad) {
+	if (IS_ERR(pad)) {
 		dev_err(csi->dev, "No pad connected to ctx %d\n", ctx->idx);
-		return -ENODEV;
+		return PTR_ERR(pad);
 	}
 
 	state = v4l2_subdev_get_locked_active_state(&csi->subdev);
@@ -1184,8 +1184,8 @@ static int ti_csi2rx_sd_enable_streams(struct v4l2_subdev *sd,
 	spin_unlock_irqrestore(&dma->lock, flags);
 
 	remote_pad = media_entity_remote_source_pad_unique(&csi->subdev.entity);
-	if (!remote_pad)
-		return -ENODEV;
+	if (IS_ERR(remote_pad))
+		return PTR_ERR(remote_pad);
 	sink_streams = v4l2_subdev_state_xlate_streams(state, pad,
 						       TI_CSI2RX_PAD_SINK,
 						       &streams_mask);
@@ -1219,8 +1219,8 @@ static int ti_csi2rx_sd_disable_streams(struct v4l2_subdev *sd,
 		writel(0, csi->shim + SHIM_CNTL);
 
 	remote_pad = media_entity_remote_source_pad_unique(&csi->subdev.entity);
-	if (!remote_pad)
-		return -ENODEV;
+	if (IS_ERR(remote_pad))
+		return PTR_ERR(remote_pad);
 	sink_streams = v4l2_subdev_state_xlate_streams(state, pad,
 						       TI_CSI2RX_PAD_SINK,
 						       &streams_mask);
-- 
2.25.1