ASoC: rsnd: fixup for_each_rsnd_mod_array{s} iterator increment

commit 5f222a292 ("ASoC: rsnd: use for_each_rsnd_mod_xxx() ...")
modifies rsnd_dai_call() to use for_each_rsnd_mod_arrays().

Current rsnd is incrementing iterator in rsnd_mod_next(),
but the iterator will indicate +1 position in for_each loop in
this case. Incremental position should be inside for()

Reported-by: Hoan Nguyen An <na-hoan@jinso.co.jp>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Kuninori Morimoto 2017-01-20 04:23:29 +00:00 committed by Mark Brown
parent a5de5b74a5
commit 826e83de58
2 changed files with 2 additions and 4 deletions

View File

@ -363,8 +363,6 @@ struct rsnd_mod *rsnd_mod_next(int *iterator,
if (!mod) if (!mod)
continue; continue;
(*iterator)++;
return mod; return mod;
} }

View File

@ -374,10 +374,10 @@ struct rsnd_mod *rsnd_mod_next(int *iterator,
int array_size); int array_size);
#define for_each_rsnd_mod(iterator, pos, io) \ #define for_each_rsnd_mod(iterator, pos, io) \
for (iterator = 0; \ for (iterator = 0; \
(pos = rsnd_mod_next(&iterator, io, NULL, 0));) (pos = rsnd_mod_next(&iterator, io, NULL, 0)); iterator++)
#define for_each_rsnd_mod_arrays(iterator, pos, io, array, size) \ #define for_each_rsnd_mod_arrays(iterator, pos, io, array, size) \
for (iterator = 0; \ for (iterator = 0; \
(pos = rsnd_mod_next(&iterator, io, array, size));) (pos = rsnd_mod_next(&iterator, io, array, size)); iterator++)
#define for_each_rsnd_mod_array(iterator, pos, io, array) \ #define for_each_rsnd_mod_array(iterator, pos, io, array) \
for_each_rsnd_mod_arrays(iterator, pos, io, array, ARRAY_SIZE(array)) for_each_rsnd_mod_arrays(iterator, pos, io, array, ARRAY_SIZE(array))