media: atomisp: use atomisp_css_update_stream() in more places
authorHans de Goede <hdegoede@redhat.com>
Wed, 15 Jun 2022 20:50:34 +0000 (21:50 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 8 Jul 2022 15:38:12 +0000 (16:38 +0100)
Use atomisp_css_update_stream() in 2 more places,
instead of open coding it.

Link: https://lore.kernel.org/linux-media/20220615205037.16549-38-hdegoede@redhat.com
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/staging/media/atomisp/pci/atomisp_compat_css20.c

index 76dab48cea677d91add45ce0dda731f75ee7a18f..889ada3e59237429e24f86b1e3809abff718834b 100644 (file)
@@ -1105,21 +1105,10 @@ int atomisp_css_start(struct atomisp_sub_device *asd,
        int ret = 0, i = 0;
 
        if (in_reset) {
-               if (__destroy_streams(asd, true))
-                       dev_warn(isp->dev, "destroy stream failed.\n");
-
-               if (__destroy_pipes(asd, true))
-                       dev_warn(isp->dev, "destroy pipe failed.\n");
+               ret = atomisp_css_update_stream(asd);
+               if (ret)
+                       return ret;
 
-               if (__create_pipes(asd)) {
-                       dev_err(isp->dev, "create pipe error.\n");
-                       return -EINVAL;
-               }
-               if (__create_streams(asd)) {
-                       dev_err(isp->dev, "create stream error.\n");
-                       ret = -EINVAL;
-                       goto stream_err;
-               }
                /* Invalidate caches. FIXME: should flush only necessary buffers */
                wbinvd();
        }
@@ -1178,7 +1167,6 @@ int atomisp_css_start(struct atomisp_sub_device *asd,
 
 start_err:
        __destroy_streams(asd, true);
-stream_err:
        __destroy_pipes(asd, true);
 
        /* css 2.0 API limitation: ia_css_stop_sp() could be only called after
@@ -2630,21 +2618,9 @@ static int __get_frame_info(struct atomisp_sub_device *asd,
        struct ia_css_pipe_info p_info;
 
        /* FIXME! No need to destroy/recreate all streams */
-       if (__destroy_streams(asd, true))
-               dev_warn(isp->dev, "destroy stream failed.\n");
-
-       if (__destroy_pipes(asd, true))
-               dev_warn(isp->dev, "destroy pipe failed.\n");
-
-       if (__create_pipes(asd)) {
-               dev_err(isp->dev, "can't create pipes\n");
-               return -EINVAL;
-       }
-
-       if (__create_streams(asd)) {
-               dev_err(isp->dev, "can't create streams\n");
-               goto stream_err;
-       }
+       ret = atomisp_css_update_stream(asd);
+       if (ret)
+               return ret;
 
        ret = ia_css_pipe_get_info(asd->stream_env[stream_index].pipes[pipe_id],
                                   &p_info);
@@ -2683,7 +2659,6 @@ static int __get_frame_info(struct atomisp_sub_device *asd,
 
 get_info_err:
        __destroy_streams(asd, true);
-stream_err:
        __destroy_pipes(asd, true);
        return -EINVAL;
 }