aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/sound/soc/intel/avs/registers.h
diff options
context:
space:
mode:
authorCezary Rojewski <cezary.rojewski@intel.com>2022-03-11 16:35:30 +0100
committerMark Brown <broonie@kernel.org>2022-03-11 16:23:54 +0000
commit9fe51c559a862d6c884f6784de26c8f9463187b1 (patch)
tree64438e9fbf8a1fb8db1b70060cd5b6b93521b292 /sound/soc/intel/avs/registers.h
parentASoC: Export DAI register and widget ctor and dctor functions (diff)
downloadwireguard-linux-9fe51c559a862d6c884f6784de26c8f9463187b1.tar.xz
wireguard-linux-9fe51c559a862d6c884f6784de26c8f9463187b1.zip
ASoC: Intel: Introduce AVS driver
Declare base structures and core DSP operations for the avs solution. The base structures describe PCI HDAudio bus device and platform-type differentiations. First set of operations added controls the lifecycle of any Audio DSP core: (un)powering, (un)resetting and (un)stalling. Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> Link: https://lore.kernel.org/r/20220311153544.136854-4-cezary.rojewski@intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/intel/avs/registers.h')
-rw-r--r--sound/soc/intel/avs/registers.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/sound/soc/intel/avs/registers.h b/sound/soc/intel/avs/registers.h
new file mode 100644
index 000000000000..e6b49973bd8f
--- /dev/null
+++ b/sound/soc/intel/avs/registers.h
@@ -0,0 +1,22 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * Copyright(c) 2021-2022 Intel Corporation. All rights reserved.
+ *
+ * Authors: Cezary Rojewski <cezary.rojewski@intel.com>
+ * Amadeusz Slawinski <amadeuszx.slawinski@linux.intel.com>
+ */
+
+#ifndef __SOUND_SOC_INTEL_AVS_REGS_H
+#define __SOUND_SOC_INTEL_AVS_REGS_H
+
+/* Intel HD Audio General DSP Registers */
+#define AVS_ADSP_GEN_BASE 0x0
+#define AVS_ADSP_REG_ADSPCS (AVS_ADSP_GEN_BASE + 0x04)
+
+#define AVS_ADSPCS_CRST_MASK(cm) (cm)
+#define AVS_ADSPCS_CSTALL_MASK(cm) ((cm) << 8)
+#define AVS_ADSPCS_SPA_MASK(cm) ((cm) << 16)
+#define AVS_ADSPCS_CPA_MASK(cm) ((cm) << 24)
+#define AVS_MAIN_CORE_MASK BIT(0)
+
+#endif /* __SOUND_SOC_INTEL_AVS_REGS_H */