ASoC: Intel: Define SKL ADSP IPC and general purpose registers
authorSubhransu S. Prusty <subhransu.s.prusty@intel.com>
Fri, 3 Jul 2015 10:34:03 +0000 (16:04 +0530)
committerMark Brown <broonie@kernel.org>
Wed, 8 Jul 2015 18:46:48 +0000 (19:46 +0100)
Signed-off-by: Subhransu S. Prusty <subhransu.s.prusty@intel.com>
Signed-off-by: Kp, Jeeja <jeeja.kp@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/skylake/skl-sst-dsp.h [new file with mode: 0644]

diff --git a/sound/soc/intel/skylake/skl-sst-dsp.h b/sound/soc/intel/skylake/skl-sst-dsp.h
new file mode 100644 (file)
index 0000000..2ac120c
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+ * Skylake SST DSP Support
+ *
+ * Copyright (C) 2014-15, Intel Corporation.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as version 2, as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ */
+
+#ifndef __SKL_SST_DSP_H__
+#define __SKL_SST_DSP_H__
+
+/* Intel HD Audio General DSP Registers */
+#define SKL_ADSP_GEN_BASE              0x0
+#define SKL_ADSP_REG_ADSPCS            (SKL_ADSP_GEN_BASE + 0x04)
+#define SKL_ADSP_REG_ADSPIC            (SKL_ADSP_GEN_BASE + 0x08)
+#define SKL_ADSP_REG_ADSPIS            (SKL_ADSP_GEN_BASE + 0x0C)
+#define SKL_ADSP_REG_ADSPIC2           (SKL_ADSP_GEN_BASE + 0x10)
+#define SKL_ADSP_REG_ADSPIS2           (SKL_ADSP_GEN_BASE + 0x14)
+
+/* Intel HD Audio Inter-Processor Communication Registers */
+#define SKL_ADSP_IPC_BASE              0x40
+#define SKL_ADSP_REG_HIPCT             (SKL_ADSP_IPC_BASE + 0x00)
+#define SKL_ADSP_REG_HIPCTE            (SKL_ADSP_IPC_BASE + 0x04)
+#define SKL_ADSP_REG_HIPCI             (SKL_ADSP_IPC_BASE + 0x08)
+#define SKL_ADSP_REG_HIPCIE            (SKL_ADSP_IPC_BASE + 0x0C)
+#define SKL_ADSP_REG_HIPCCTL           (SKL_ADSP_IPC_BASE + 0x10)
+
+/*  HIPCI */
+#define SKL_ADSP_REG_HIPCI_BUSY                BIT(31)
+
+/* HIPCIE */
+#define SKL_ADSP_REG_HIPCIE_DONE       BIT(30)
+
+/* HIPCCTL */
+#define SKL_ADSP_REG_HIPCCTL_DONE      BIT(1)
+#define SKL_ADSP_REG_HIPCCTL_BUSY      BIT(0)
+
+/* HIPCT */
+#define SKL_ADSP_REG_HIPCT_BUSY                BIT(31)
+
+/* Intel HD Audio SRAM Window 1 */
+#define SKL_ADSP_SRAM1_BASE            0xA000
+
+#define SKL_ADSP_MMIO_LEN              0x10000
+
+#define SKL_ADSP_W0_STAT_SZ            0x800
+
+#define SKL_ADSP_W0_UP_SZ              0x800
+
+#define SKL_ADSP_W1_SZ                 0x1000
+
+#define SKL_ADSPIC_IPC                 1
+#define SKL_ADSPIS_IPC                 1
+
+#endif /*__SKL_SST_DSP_H__*/