diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-05-01 18:45:09 +0100 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-05-01 19:21:07 +0100 |
commit | 94aa733a477dd5fe6eb153e5b6741488d743fab5 (patch) | |
tree | 676e6e4c3a7d8623360ddf246829fd21079cc002 /sound/soc/codecs/wm_hubs.h | |
parent | 6264f668d51647be68bcfde8a56042bd646a7855 (diff) | |
download | op-kernel-dev-94aa733a477dd5fe6eb153e5b6741488d743fab5.zip op-kernel-dev-94aa733a477dd5fe6eb153e5b6741488d743fab5.tar.gz |
ASoC: wm_hubs: Cache multiple DCS offsets
Rather than invalidating the cached DCS value every time the headphone
gain changes store multiple values, indexed by gain. This allows the
optimisation we get from the cache to take effect more often.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs/wm_hubs.h')
-rw-r--r-- | sound/soc/codecs/wm_hubs.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/soc/codecs/wm_hubs.h b/sound/soc/codecs/wm_hubs.h index 71861fc..da2dc89 100644 --- a/sound/soc/codecs/wm_hubs.h +++ b/sound/soc/codecs/wm_hubs.h @@ -16,6 +16,7 @@ #include <linux/completion.h> #include <linux/interrupt.h> +#include <linux/list.h> #include <sound/control.h> struct snd_soc_codec; @@ -32,7 +33,7 @@ struct wm_hubs_data { int no_series_update; bool no_cache_dac_hp_direct; - u16 dac_hp_direct_dcs; + struct list_head dcs_cache; bool (*check_class_w_digital)(struct snd_soc_codec *); bool lineout1_se; |