]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
media: ipu6: Always close firmware stream
authorSakari Ailus <sakari.ailus@linux.intel.com>
Wed, 7 Jan 2026 21:55:31 +0000 (23:55 +0200)
committerHans Verkuil <hverkuil+cisco@kernel.org>
Tue, 13 Jan 2026 11:47:56 +0000 (12:47 +0100)
Close the firmware stream even when disabling a stream on an upstream
sub-device fails. This allows the firmware to release resources related to
a stream that is stopped in any case.

Suggested-by: Bingbu Cao <bingbu.cao@linux.intel.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Bingbu Cao <bingbu.cao@intel.com>
Tested-by: Mehdi Djait <mehdi.djait@linux.intel.com> # Dell XPS 9315
Reviewed-by: Mehdi Djait <mehdi.djait@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
drivers/media/pci/intel/ipu6/ipu6-isys-video.c

index 919b77107cef72a84aaeaf443f16de70e3a62307..54d861aca008877c9f446eaec0d926d5af957395 100644 (file)
@@ -1036,11 +1036,10 @@ int ipu6_isys_video_set_streaming(struct ipu6_isys_video *av, int state,
                        sd->name, r_pad->index, stream_mask);
                ret = v4l2_subdev_disable_streams(sd, r_pad->index,
                                                  stream_mask);
-               if (ret) {
+               if (ret)
                        dev_err(dev, "stream off %s failed with %d\n", sd->name,
                                ret);
-                       return ret;
-               }
+
                close_streaming_firmware(av);
        } else {
                ret = start_stream_firmware(av, bl);