Skip to content

Commit

Permalink
ASoC: soc-dapm.c: replace snd_soc_dapm_wcache to snd_soc_dapm_widget
Browse files Browse the repository at this point in the history
Current ASoC has snd_soc_dapm_wcache, but its member is only
snd_soc_dapm_widget.

	struct snd_soc_dapm_wcache {
		struct snd_soc_dapm_widget *widget;
	};

It is no meaning for now, and makes code unreadable.
This patch replace snd_soc_dapm_wcache to snd_soc_dapm_widget directly.

Signed-off-by: Kuninori Morimoto <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Mark Brown <[email protected]>
  • Loading branch information
morimoto authored and broonie committed Oct 18, 2022
1 parent a474dce commit 03e13ef
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 27 deletions.
9 changes: 2 additions & 7 deletions include/sound/soc-dapm.h
Original file line number Diff line number Diff line change
Expand Up @@ -450,7 +450,6 @@ int snd_soc_dapm_del_routes(struct snd_soc_dapm_context *dapm,
int snd_soc_dapm_weak_routes(struct snd_soc_dapm_context *dapm,
const struct snd_soc_dapm_route *route, int num);
void snd_soc_dapm_free_widget(struct snd_soc_dapm_widget *w);
void snd_soc_dapm_reset_cache(struct snd_soc_dapm_context *dapm);

/* dapm events */
void snd_soc_dapm_stream_event(struct snd_soc_pcm_runtime *rtd, int stream,
Expand Down Expand Up @@ -680,10 +679,6 @@ struct snd_soc_dapm_update {
bool has_second_set;
};

struct snd_soc_dapm_wcache {
struct snd_soc_dapm_widget *widget;
};

/* DAPM context */
struct snd_soc_dapm_context {
enum snd_soc_bias_level bias_level;
Expand All @@ -699,8 +694,8 @@ struct snd_soc_dapm_context {
enum snd_soc_bias_level target_bias_level;
struct list_head list;

struct snd_soc_dapm_wcache path_sink_cache;
struct snd_soc_dapm_wcache path_source_cache;
struct snd_soc_dapm_widget *wcache_sink;
struct snd_soc_dapm_widget *wcache_source;

#ifdef CONFIG_DEBUG_FS
struct dentry *debugfs_dapm;
Expand Down
29 changes: 9 additions & 20 deletions sound/soc/soc-dapm.c
Original file line number Diff line number Diff line change
Expand Up @@ -652,10 +652,8 @@ static void soc_dapm_async_complete(struct snd_soc_dapm_context *dapm)
}

static struct snd_soc_dapm_widget *
dapm_wcache_lookup(struct snd_soc_dapm_wcache *wcache, const char *name)
dapm_wcache_lookup(struct snd_soc_dapm_widget *w, const char *name)
{
struct snd_soc_dapm_widget *w = wcache->widget;

if (w) {
struct list_head *wlist = &w->dapm->card->widgets;
const int depth = 2;
Expand All @@ -673,12 +671,6 @@ dapm_wcache_lookup(struct snd_soc_dapm_wcache *wcache, const char *name)
return NULL;
}

static inline void dapm_wcache_update(struct snd_soc_dapm_wcache *wcache,
struct snd_soc_dapm_widget *w)
{
wcache->widget = w;
}

/**
* snd_soc_dapm_force_bias_level() - Sets the DAPM bias level
* @dapm: The DAPM context for which to set the level
Expand Down Expand Up @@ -2516,12 +2508,6 @@ void snd_soc_dapm_free_widget(struct snd_soc_dapm_widget *w)
}
EXPORT_SYMBOL_GPL(snd_soc_dapm_free_widget);

void snd_soc_dapm_reset_cache(struct snd_soc_dapm_context *dapm)
{
dapm->path_sink_cache.widget = NULL;
dapm->path_source_cache.widget = NULL;
}

/* free all dapm widgets and resources */
static void dapm_free_widgets(struct snd_soc_dapm_context *dapm)
{
Expand All @@ -2532,7 +2518,9 @@ static void dapm_free_widgets(struct snd_soc_dapm_context *dapm)
continue;
snd_soc_dapm_free_widget(w);
}
snd_soc_dapm_reset_cache(dapm);

dapm->wcache_sink = NULL;
dapm->wcache_source = NULL;
}

static struct snd_soc_dapm_widget *dapm_find_widget(
Expand Down Expand Up @@ -2961,8 +2949,8 @@ static int snd_soc_dapm_add_route(struct snd_soc_dapm_context *dapm,
source = route->source;
}

wsource = dapm_wcache_lookup(&dapm->path_source_cache, source);
wsink = dapm_wcache_lookup(&dapm->path_sink_cache, sink);
wsource = dapm_wcache_lookup(dapm->wcache_source, source);
wsink = dapm_wcache_lookup(dapm->wcache_sink, sink);

if (wsink && wsource)
goto skip_search;
Expand Down Expand Up @@ -3018,8 +3006,9 @@ static int snd_soc_dapm_add_route(struct snd_soc_dapm_context *dapm,
}

skip_search:
dapm_wcache_update(&dapm->path_sink_cache, wsink);
dapm_wcache_update(&dapm->path_source_cache, wsource);
/* update cache */
dapm->wcache_sink = wsink;
dapm->wcache_source = wsource;

ret = snd_soc_dapm_add_path(dapm, wsource, wsink, route->control,
route->connected);
Expand Down

0 comments on commit 03e13ef

Please sign in to comment.