From c340304dd8855a61a2e1bcdd5bde6b90408481a9 Mon Sep 17 00:00:00 2001 From: Mark Brown Date: Thu, 26 Apr 2012 21:29:29 +0100 Subject: ASoC: wm_hubs: Factor out class W management Since the analogue portions of the checks for class W are the same over all the devices factor out these checks into wm_hubs and while we're at it also use wm_hubs_dac_hp_direct() to enable class W optimisations on more paths. Signed-off-by: Mark Brown --- sound/soc/codecs/wm_hubs.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'sound/soc/codecs/wm_hubs.h') diff --git a/sound/soc/codecs/wm_hubs.h b/sound/soc/codecs/wm_hubs.h index 8bb9f1b51bf3..71861fc580a3 100644 --- a/sound/soc/codecs/wm_hubs.h +++ b/sound/soc/codecs/wm_hubs.h @@ -16,6 +16,7 @@ #include #include +#include struct snd_soc_codec; @@ -32,6 +33,7 @@ struct wm_hubs_data { bool no_cache_dac_hp_direct; u16 dac_hp_direct_dcs; + bool (*check_class_w_digital)(struct snd_soc_codec *); bool lineout1_se; bool lineout1n_ena; @@ -57,5 +59,9 @@ extern irqreturn_t wm_hubs_dcs_done(int irq, void *data); extern void wm_hubs_vmid_ena(struct snd_soc_codec *codec); extern void wm_hubs_set_bias_level(struct snd_soc_codec *codec, enum snd_soc_bias_level level); +extern void wm_hubs_update_class_w(struct snd_soc_codec *codec); + +extern const struct snd_kcontrol_new wm_hubs_hpl_mux; +extern const struct snd_kcontrol_new wm_hubs_hpr_mux; #endif -- cgit v1.2.3