mirror of
				https://github.com/alsa-project/alsa-lib.git
				synced 2025-11-03 09:01:52 -05:00 
			
		
		
		
	topology: Merge an element's be & cc pointer to one link pointer
Code refactoring. Previously an element has two pointers, 'be' and 'cc', for BE (Back End) and CC (Codec-Codec) link respectively. But actually the topology tool processes BE and CC links in the same way, so these two pointers can be merged into one 'link' pointer, which can be used configure any physical links. Signed-off-by: Mengdong Lin <mengdong.lin@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
		
							parent
							
								
									fc8e5ab4a0
								
							
						
					
					
						commit
						18652f4629
					
				
					 2 changed files with 7 additions and 14 deletions
				
			
		| 
						 | 
					@ -175,11 +175,7 @@ int tplg_build_link_cfg(snd_tplg_t *tplg, unsigned int type)
 | 
				
			||||||
			return -EINVAL;
 | 
								return -EINVAL;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (type == SND_TPLG_TYPE_BE)
 | 
							link = elem->link;
 | 
				
			||||||
			link = elem->be;
 | 
					 | 
				
			||||||
		else
 | 
					 | 
				
			||||||
			link = elem->cc;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		err = tplg_build_stream_cfg(tplg, link->stream,
 | 
							err = tplg_build_stream_cfg(tplg, link->stream,
 | 
				
			||||||
			link->num_streams);
 | 
								link->num_streams);
 | 
				
			||||||
		if (err < 0)
 | 
							if (err < 0)
 | 
				
			||||||
| 
						 | 
					@ -528,7 +524,7 @@ int tplg_parse_be(snd_tplg_t *tplg,
 | 
				
			||||||
	if (!elem)
 | 
						if (!elem)
 | 
				
			||||||
		return -ENOMEM;
 | 
							return -ENOMEM;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	link = elem->be;
 | 
						link = elem->link;
 | 
				
			||||||
	link->size = elem->size;
 | 
						link->size = elem->size;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	tplg_dbg(" BE: %s\n", elem->id);
 | 
						tplg_dbg(" BE: %s\n", elem->id);
 | 
				
			||||||
| 
						 | 
					@ -588,7 +584,7 @@ int tplg_parse_cc(snd_tplg_t *tplg,
 | 
				
			||||||
	if (!elem)
 | 
						if (!elem)
 | 
				
			||||||
		return -ENOMEM;
 | 
							return -ENOMEM;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	link = elem->cc;
 | 
						link = elem->link;
 | 
				
			||||||
	link->size = elem->size;
 | 
						link->size = elem->size;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	tplg_dbg(" CC: %s\n", elem->id);
 | 
						tplg_dbg(" CC: %s\n", elem->id);
 | 
				
			||||||
| 
						 | 
					@ -742,14 +738,12 @@ int tplg_add_link_object(snd_tplg_t *tplg, snd_tplg_obj_template_t *t)
 | 
				
			||||||
	if (!elem)
 | 
						if (!elem)
 | 
				
			||||||
		return -ENOMEM;
 | 
							return -ENOMEM;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (t->type == SND_TPLG_TYPE_BE) {
 | 
						if (t->type == SND_TPLG_TYPE_BE)
 | 
				
			||||||
		tplg_dbg("BE Link: %s", link->name);
 | 
							tplg_dbg("BE Link: %s", link->name);
 | 
				
			||||||
		lk = elem->be;
 | 
						else
 | 
				
			||||||
	} else {
 | 
					 | 
				
			||||||
		tplg_dbg("CC Link: %s", link->name);
 | 
							tplg_dbg("CC Link: %s", link->name);
 | 
				
			||||||
		lk = elem->cc;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						lk = elem->link;
 | 
				
			||||||
	lk->size = elem->size;
 | 
						lk->size = elem->size;
 | 
				
			||||||
	lk->id = link->id;
 | 
						lk->id = link->id;
 | 
				
			||||||
	lk->num_streams = link->num_streams;
 | 
						lk->num_streams = link->num_streams;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -144,8 +144,7 @@ struct tplg_elem {
 | 
				
			||||||
		struct snd_soc_tplg_bytes_control *bytes_ext;
 | 
							struct snd_soc_tplg_bytes_control *bytes_ext;
 | 
				
			||||||
		struct snd_soc_tplg_dapm_widget *widget;
 | 
							struct snd_soc_tplg_dapm_widget *widget;
 | 
				
			||||||
		struct snd_soc_tplg_pcm *pcm;
 | 
							struct snd_soc_tplg_pcm *pcm;
 | 
				
			||||||
		struct snd_soc_tplg_link_config *be;
 | 
							struct snd_soc_tplg_link_config *link;/* physical link */
 | 
				
			||||||
		struct snd_soc_tplg_link_config *cc;
 | 
					 | 
				
			||||||
		struct snd_soc_tplg_dapm_graph_elem *route;
 | 
							struct snd_soc_tplg_dapm_graph_elem *route;
 | 
				
			||||||
		struct snd_soc_tplg_stream *stream_cfg;
 | 
							struct snd_soc_tplg_stream *stream_cfg;
 | 
				
			||||||
		struct snd_soc_tplg_stream_caps *stream_caps;
 | 
							struct snd_soc_tplg_stream_caps *stream_caps;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue