summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/wm_adsp.h
diff options
context:
space:
mode:
authorSimon Trimmer <simont@opensource.cirrus.com>2021-09-13 17:00:51 +0100
committerMark Brown <broonie@kernel.org>2021-09-27 13:00:36 +0100
commit0700bc2fb94c28459f57a10d2ee2c7ef4cb70862 (patch)
tree8c4650226e72b8060e1b85a3b2c9ff3c6080ba88 /sound/soc/codecs/wm_adsp.h
parent6092be2d93b3b28dfeca4e5944052a1a21f51ca3 (diff)
downloadlinux-0700bc2fb94c28459f57a10d2ee2c7ef4cb70862.tar.bz2
ASoC: wm_adsp: Separate generic cs_dsp_coeff_ctl handling
This is preparation for moving the generic DSP support out of ASoC. The majority of the handling of firmware controls is generic and this change separates the generic and ASoC specific details into separate structures and functions and renames the generic code named wm_* to cs_*. Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20210913160057.103842-11-simont@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/codecs/wm_adsp.h')
-rw-r--r--sound/soc/codecs/wm_adsp.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm_adsp.h b/sound/soc/codecs/wm_adsp.h
index 98b12b485916..eee298e94946 100644
--- a/sound/soc/codecs/wm_adsp.h
+++ b/sound/soc/codecs/wm_adsp.h
@@ -49,10 +49,30 @@ struct cs_dsp_alg_region {
unsigned int base;
};
+struct wm_adsp;
struct wm_adsp_compr;
struct wm_adsp_compr_buf;
struct cs_dsp_ops;
+struct cs_dsp_coeff_ctl {
+ const char *fw_name;
+ /* Subname is needed to match with firmware */
+ const char *subname;
+ unsigned int subname_len;
+ struct cs_dsp_alg_region alg_region;
+ struct wm_adsp *dsp;
+ unsigned int enabled:1;
+ struct list_head list;
+ void *cache;
+ unsigned int offset;
+ size_t len;
+ unsigned int set:1;
+ unsigned int flags;
+ unsigned int type;
+
+ void *priv;
+};
+
struct wm_adsp {
const char *part;
const char *name;