mirror of https://github.com/thesofproject/sof.git
plugin: alsaplug: Modify the signature of plug_parse_conf()
In preparation for parsing just the topology file from the command line for kcontrols, modify the signature of plug_parse_conf() to add an argument to specify it. Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
This commit is contained in:
parent
119af89754
commit
139120033f
|
@ -1012,7 +1012,7 @@ SND_PCM_PLUGIN_DEFINE_FUNC(sof)
|
|||
pcm->capture = 1;
|
||||
|
||||
/* parse the ALSA configuration file for sof plugin */
|
||||
err = plug_parse_conf(plug, name, root, conf);
|
||||
err = plug_parse_conf(plug, name, root, conf, false);
|
||||
if (err < 0) {
|
||||
SNDERR("failed to parse config: %s", strerror(err));
|
||||
goto parse_conf_err;
|
||||
|
|
|
@ -297,7 +297,7 @@ static int parse_slave_configs(snd_sof_plug_t *plug, snd_config_t *n)
|
|||
* Parse the client cmdline. Format is
|
||||
* tplg:pcm:card:dev:config[dai_pipe:card:dev:config]...]
|
||||
*/
|
||||
static int parse_client_cmdline(snd_sof_plug_t *plug, char *cmdline)
|
||||
static int parse_client_cmdline(snd_sof_plug_t *plug, char *cmdline, bool just_tplg)
|
||||
{
|
||||
struct plug_cmdline_item *cmd_item;
|
||||
char *tplg, *next, *card, *dev, *config, *pcm;
|
||||
|
@ -328,6 +328,9 @@ static int parse_client_cmdline(snd_sof_plug_t *plug, char *cmdline)
|
|||
if (!plug->tplg_file)
|
||||
return -ENOMEM;
|
||||
|
||||
if (just_tplg)
|
||||
return 0;
|
||||
|
||||
/* get PCM ID */
|
||||
pcm = strtok_r(next, ":", &next);
|
||||
if (!pcm) {
|
||||
|
@ -393,7 +396,7 @@ static int parse_client_cmdline(snd_sof_plug_t *plug, char *cmdline)
|
|||
* TODO: contruct sof pipe cmd line.
|
||||
*/
|
||||
int plug_parse_conf(snd_sof_plug_t *plug, const char *name, snd_config_t *root,
|
||||
snd_config_t *conf)
|
||||
snd_config_t *conf, bool just_tplg)
|
||||
{
|
||||
snd_config_iterator_t i, next;
|
||||
const char *tplg = NULL;
|
||||
|
@ -443,7 +446,7 @@ int plug_parse_conf(snd_sof_plug_t *plug, const char *name, snd_config_t *root,
|
|||
}
|
||||
|
||||
/* parse the client command line */
|
||||
if (parse_client_cmdline(plug, (char *)tplg)) {
|
||||
if (parse_client_cmdline(plug, (char *)tplg, just_tplg)) {
|
||||
SNDERR("invalid sof cmd line");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
|
|
@ -57,7 +57,7 @@ int sofplug_load_hook(snd_config_t *root, snd_config_t *config,
|
|||
snd_config_t **dst, snd_config_t *private_data);
|
||||
|
||||
int plug_parse_conf(snd_sof_plug_t *plug, const char *name,
|
||||
snd_config_t *root, snd_config_t *conf);
|
||||
snd_config_t *root, snd_config_t *conf, bool just_tplg);
|
||||
int plug_parse_topology(snd_sof_plug_t *plug);
|
||||
int plug_set_up_pipelines(snd_sof_plug_t *plug, int dir);
|
||||
int plug_free_pipelines(snd_sof_plug_t *plug, struct tplg_pipeline_list *pipeline_list, int dir);
|
||||
|
|
Loading…
Reference in New Issue