]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
media: v4l2-subdev: Extend VIDIOC_SUBDEV_S_ROUTING error codes
authorSakari Ailus <sakari.ailus@linux.intel.com>
Mon, 25 Aug 2025 07:28:52 +0000 (10:28 +0300)
committerHans Verkuil <hverkuil+cisco@kernel.org>
Wed, 14 Jan 2026 22:33:02 +0000 (23:33 +0100)
Return -ENXIO from routing configuration errors other than generic IOCTL
argument validation.

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
drivers/media/platform/nxp/imx8-isi/imx8-isi-crossbar.c
drivers/media/platform/raspberrypi/rp1-cfe/csi2.c
drivers/media/v4l2-core/v4l2-subdev.c

index ede6cc74c0234049fa225ad82aaddaad64aa53d7..3c26cfef93d11ef7134bff696fc43ba198fbfe47 100644 (file)
@@ -114,7 +114,7 @@ static int __mxc_isi_crossbar_set_routing(struct v4l2_subdev *sd,
                                "invalid route from memory input (%u) to pipe %u\n",
                                route->sink_pad,
                                route->source_pad - xbar->num_sinks);
-                       return -EINVAL;
+                       return -ENXIO;
                }
        }
 
index 2c5b4d24b4e6f033df6bfd21fded340df5370b4e..104908afbf418713c32f5b0a77afe4c49f3eecf9 100644 (file)
@@ -492,7 +492,7 @@ static int csi2_set_routing(struct v4l2_subdev *sd,
                const struct v4l2_subdev_route *route = &routing->routes[i];
 
                if (route->source_stream != 0)
-                       return -EINVAL;
+                       return -ENXIO;
        }
 
        ret = v4l2_subdev_set_routing_with_fmt(sd, state, routing,
index 25e66bf18f5fc9b694604c0a570e3f4e83936f15..66842b975f9137a7adb8ddb217b0eccce8e7ba05 100644 (file)
@@ -2112,7 +2112,7 @@ int v4l2_subdev_routing_validate(struct v4l2_subdev *sd,
 {
        u32 *remote_pads = NULL;
        unsigned int i, j;
-       int ret = -EINVAL;
+       int ret = -ENXIO;
 
        if (disallow & (V4L2_SUBDEV_ROUTING_NO_STREAM_MIX |
                        V4L2_SUBDEV_ROUTING_NO_MULTIPLEXING)) {