> -----Original Message----- > From: Takashi Iwai [mailto:tiwai@xxxxxxx] > Sent: Friday, May 5, 2017 3:25 PM > To: Tang, FuweiX <fuweix.tang@xxxxxxxxx> > Cc: alsa-devel@xxxxxxxxxxxxxxxx; liam.r.girdwood@xxxxxxxxxxxxxxx; Lin, > Mengdong <mengdong.lin@xxxxxxxxx> > Subject: Re: [PATCH] topology: Fix issue in parsing routes when generating > topology binary > > On Fri, 05 May 2017 08:52:02 +0200, > fuweix.tang@xxxxxxxxx wrote: > > > > From: Fuwei Tang <fuweix.tang@xxxxxxxxx> > > > > We missed parsing the index value, which is used as a use case > > indicator, when processing the route objects. > > > > This patch fixes the bug. > > > > Signed-off-by: Fuwei Tang <fuweix.tang@xxxxxxxxx> > > Tested-by: Subhransu S. Prusty <subhransu.s.prusty@xxxxxxxxx> > > --- > > src/topology/dapm.c | 15 +++++++++++---- > > 1 file changed, 11 insertions(+), 4 deletions(-) > > > > diff --git a/src/topology/dapm.c b/src/topology/dapm.c index > > 13aa1c4..2fa387f 100644 > > --- a/src/topology/dapm.c > > +++ b/src/topology/dapm.c > > @@ -381,7 +381,7 @@ done: > > } > > > > > > -static int tplg_parse_routes(snd_tplg_t *tplg, snd_config_t *cfg) > > +static int tplg_parse_routes(snd_tplg_t *tplg, snd_config_t *cfg, int > > +index) > > { > > snd_config_iterator_t i, next; > > snd_config_t *n; > > @@ -399,7 +399,7 @@ static int tplg_parse_routes(snd_tplg_t *tplg, > snd_config_t *cfg) > > elem = tplg_elem_new_route(tplg); > > if (!elem) > > return -ENOMEM; > > - > > + elem->index = index; > > line = elem->route; > > > > err = tplg_parse_line(val, line); > > @@ -419,7 +419,8 @@ int tplg_parse_dapm_graph(snd_tplg_t *tplg, > snd_config_t *cfg, > > snd_config_iterator_t i, next; > > snd_config_t *n; > > int err; > > - const char *graph_id; > > + const char *graph_id, *val = NULL; > > + int index; > > > > if (snd_config_get_type(cfg) != SND_CONFIG_TYPE_COMPOUND) { > > SNDERR("error: compound is expected for dapm graph > definition\n"); > > @@ -436,8 +437,14 @@ int tplg_parse_dapm_graph(snd_tplg_t *tplg, > snd_config_t *cfg, > > continue; > > } > > > > + if (strcmp(id, "index") == 0) { > > + if (snd_config_get_string(n, &val) < 0) > > + return NULL; > > This function should return an error code. I'm sorry about that, I will do so. Thanks Fuwei > > > Takashi _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel