Commit 58a32883 authored by Martiros Shakhzadyan's avatar Martiros Shakhzadyan Committed by Mauro Carvalho Chehab

media: staging: media: atomisp: Refactor ia_css_stream_load()

Move the support check to the beginning of the function.
Change the logic to avoid multiple nesting blocks.
Move 'err' variable assignment outside of the if statement.
Remove an unnecessary check whether 'j' is zero.
Signed-off-by: default avatarMartiros Shakhzadyan <vrzh@vrzh.net>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 7796e455
......@@ -9657,48 +9657,47 @@ ia_css_stream_get_info(const struct ia_css_stream *stream,
int
ia_css_stream_load(struct ia_css_stream *stream)
{
if (!IS_ISP2401) {
int i;
int err;
assert(stream);
ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_stream_load() enter,\n");
for (i = 0; i < MAX_ACTIVE_STREAMS; i++) {
if (my_css_save.stream_seeds[i].stream == stream) {
int j;
int i, j, err;
for (j = 0; j < my_css_save.stream_seeds[i].num_pipes; j++) {
if ((err = ia_css_pipe_create(&my_css_save.stream_seeds[i].pipe_config[j],
&my_css_save.stream_seeds[i].pipes[j])) != 0) {
if (j) {
int k;
for (k = 0; k < j; k++)
ia_css_pipe_destroy(my_css_save.stream_seeds[i].pipes[k]);
}
return err;
}
}
err = ia_css_stream_create(&my_css_save.stream_seeds[i].stream_config,
my_css_save.stream_seeds[i].num_pipes,
my_css_save.stream_seeds[i].pipes,
&my_css_save.stream_seeds[i].stream);
if (err) {
ia_css_stream_destroy(stream);
for (j = 0; j < my_css_save.stream_seeds[i].num_pipes; j++)
ia_css_pipe_destroy(my_css_save.stream_seeds[i].pipes[j]);
return err;
}
break;
}
}
ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_stream_load() exit,\n");
return 0;
} else {
if (IS_ISP2401) {
/* TODO remove function - DEPRECATED */
(void)stream;
return -ENOTSUPP;
}
assert(stream);
ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_stream_load() enter,\n");
for (i = 0; i < MAX_ACTIVE_STREAMS; i++) {
if (my_css_save.stream_seeds[i].stream != stream)
continue;
for (j = 0; j < my_css_save.stream_seeds[i].num_pipes; j++) {
int k;
err = ia_css_pipe_create(&my_css_save.stream_seeds[i].pipe_config[j],
&my_css_save.stream_seeds[i].pipes[j]);
if (!err)
continue;
for (k = 0; k < j; k++)
ia_css_pipe_destroy(my_css_save.stream_seeds[i].pipes[k]);
return err;
}
err = ia_css_stream_create(&my_css_save.stream_seeds[i].stream_config,
my_css_save.stream_seeds[i].num_pipes,
my_css_save.stream_seeds[i].pipes,
&my_css_save.stream_seeds[i].stream);
if (!err)
break;
ia_css_stream_destroy(stream);
for (j = 0; j < my_css_save.stream_seeds[i].num_pipes; j++)
ia_css_pipe_destroy(my_css_save.stream_seeds[i].pipes[j]);
return err;
}
ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_stream_load() exit,\n");
return 0;
}
int
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment