MODULE_PARM_DESC(dapm_status, "enable DPM sysfs entries");
/* create a new dapm widget */
-static struct snd_soc_dapm_widget *dapm_cnew_widget(
+static inline struct snd_soc_dapm_widget *dapm_cnew_widget(
const struct snd_soc_dapm_widget *_widget)
{
- struct snd_soc_dapm_widget* widget;
- widget = kmalloc(sizeof(struct snd_soc_dapm_widget), GFP_KERNEL);
- if (!widget)
- return NULL;
-
- memcpy(widget, _widget, sizeof(struct snd_soc_dapm_widget));
- return widget;
+ return kmemdup(_widget, sizeof(*_widget), GFP_KERNEL);
}
/* set up initial codec paths */
p->source->name);
}
list_for_each_entry(p, &w->sinks, list_source) {
- p = list_entry(lp, struct snd_soc_dapm_path, list_source);
if (p->connect)
printk(" out %s %s\n", p->name ? p->name : "static",
p->sink->name);
{
struct snd_soc_dapm_widget *w;
+ if (stream == NULL)
+ return 0;
+
mutex_lock(&codec->mutex);
list_for_each_entry(w, &codec->dapm_widgets, list)
{