Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ec02995a authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: dapm: Bodge for lack of a widely available clk API

parent 695594f1
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1011,12 +1011,14 @@ int dapm_clock_event(struct snd_soc_dapm_widget *w,
	if (!w->clk)
		return -EIO;

#ifdef CONFIG_HAVE_CLK
	if (SND_SOC_DAPM_EVENT_ON(event)) {
		return clk_enable(w->clk);
	} else {
		clk_disable(w->clk);
		return 0;
	}
#endif
}
EXPORT_SYMBOL_GPL(dapm_clock_event);

@@ -2902,6 +2904,7 @@ snd_soc_dapm_new_control(struct snd_soc_dapm_context *dapm,
		}
		break;
	case snd_soc_dapm_clock_supply:
#ifdef CONFIG_HAVE_CLK
		w->clk = devm_clk_get(dapm->dev, w->name);
		if (IS_ERR(w->clk)) {
			ret = PTR_ERR(w->clk);
@@ -2909,6 +2912,9 @@ snd_soc_dapm_new_control(struct snd_soc_dapm_context *dapm,
				w->name, ret);
			return NULL;
		}
#else
		return NULL;
#endif
		break;
	default:
		break;