Skip to content

Commit 0317584

Browse files
plbossartranj063
authored andcommitted
ASoC: SOF: Intel: add IP identifier
This patch adds an IP identifier for each Intel platform. The identifier will be used to select different code branches or constants. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
1 parent daaa03a commit 0317584

9 files changed

Lines changed: 25 additions & 0 deletions

File tree

‎sound/soc/sof/intel/apl.c‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,5 +75,6 @@ const struct sof_intel_dsp_desc apl_chip_info = {
7575
.ssp_base_offset = APL_SSP_BASE_OFFSET,
7676
.quirks = SOF_INTEL_PROCEN_FMT_QUIRK,
7777
.check_ipc_irq = hda_dsp_check_ipc_irq,
78+
.hw_ip_version = SOF_INTEL_CAVS_1_5_PLUS,
7879
};
7980
EXPORT_SYMBOL_NS(apl_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);

‎sound/soc/sof/intel/bdw.c‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -637,6 +637,7 @@ static struct snd_sof_dsp_ops sof_bdw_ops = {
637637
static const struct sof_intel_dsp_desc bdw_chip_info = {
638638
.cores_num = 1,
639639
.host_managed_cores_mask = 1,
640+
.hw_ip_version = SOF_INTEL_BROADWELL,
640641
};
641642

642643
static const struct sof_dev_desc sof_acpi_broadwell_desc = {

‎sound/soc/sof/intel/byt.c‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,7 @@ static struct snd_sof_dsp_ops sof_byt_ops = {
295295
static const struct sof_intel_dsp_desc byt_chip_info = {
296296
.cores_num = 1,
297297
.host_managed_cores_mask = 1,
298+
.hw_ip_version = SOF_INTEL_BAYTRAIL,
298299
};
299300

300301
/* cherrytrail and braswell ops */
@@ -378,6 +379,7 @@ static struct snd_sof_dsp_ops sof_cht_ops = {
378379
static const struct sof_intel_dsp_desc cht_chip_info = {
379380
.cores_num = 1,
380381
.host_managed_cores_mask = 1,
382+
.hw_ip_version = SOF_INTEL_BAYTRAIL,
381383
};
382384

383385
/* BYTCR uses different IRQ index */

‎sound/soc/sof/intel/cnl.c‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,7 @@ const struct sof_intel_dsp_desc cnl_chip_info = {
295295
.sdw_alh_base = SDW_ALH_BASE,
296296
.check_sdw_irq = hda_common_check_sdw_irq,
297297
.check_ipc_irq = hda_dsp_check_ipc_irq,
298+
.hw_ip_version = SOF_INTEL_CAVS_1_8,
298299
};
299300
EXPORT_SYMBOL_NS(cnl_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);
300301

@@ -323,5 +324,6 @@ const struct sof_intel_dsp_desc jsl_chip_info = {
323324
.sdw_alh_base = SDW_ALH_BASE,
324325
.check_sdw_irq = hda_common_check_sdw_irq,
325326
.check_ipc_irq = hda_dsp_check_ipc_irq,
327+
.hw_ip_version = SOF_INTEL_CAVS_2_0,
326328
};
327329
EXPORT_SYMBOL_NS(jsl_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);

‎sound/soc/sof/intel/icl.c‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,5 +140,6 @@ const struct sof_intel_dsp_desc icl_chip_info = {
140140
.sdw_alh_base = SDW_ALH_BASE,
141141
.check_sdw_irq = hda_common_check_sdw_irq,
142142
.check_ipc_irq = hda_dsp_check_ipc_irq,
143+
.hw_ip_version = SOF_INTEL_CAVS_2_0,
143144
};
144145
EXPORT_SYMBOL_NS(icl_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);

‎sound/soc/sof/intel/pci-tng.c‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,7 @@ struct snd_sof_dsp_ops sof_tng_ops = {
206206
const struct sof_intel_dsp_desc tng_chip_info = {
207207
.cores_num = 1,
208208
.host_managed_cores_mask = 1,
209+
.hw_ip_version = SOF_INTEL_TANGIER,
209210
};
210211

211212
static const struct sof_dev_desc tng_desc = {

‎sound/soc/sof/intel/shim.h‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,17 @@
1111
#ifndef __SOF_INTEL_SHIM_H
1212
#define __SOF_INTEL_SHIM_H
1313

14+
enum sof_intel_hw_ip_version {
15+
SOF_INTEL_TANGIER,
16+
SOF_INTEL_BAYTRAIL,
17+
SOF_INTEL_BROADWELL,
18+
SOF_INTEL_CAVS_1_5, /* SkyLake, KabyLake, AmberLake */
19+
SOF_INTEL_CAVS_1_5_PLUS,/* ApolloLake, GeminiLake */
20+
SOF_INTEL_CAVS_1_8, /* CannonLake, CometLake, CoffeeLake */
21+
SOF_INTEL_CAVS_2_0, /* IceLake, JasperLake */
22+
SOF_INTEL_CAVS_2_5, /* TigerLake, AlderLake */
23+
};
24+
1425
/*
1526
* SHIM registers for BYT, BSW, CHT, BDW
1627
*/
@@ -171,6 +182,7 @@ struct sof_intel_dsp_desc {
171182
u32 sdw_shim_base;
172183
u32 sdw_alh_base;
173184
u32 quirks;
185+
enum sof_intel_hw_ip_version hw_ip_version;
174186
bool (*check_sdw_irq)(struct snd_sof_dev *sdev);
175187
bool (*check_ipc_irq)(struct snd_sof_dev *sdev);
176188
};

‎sound/soc/sof/intel/skl.c‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,5 +65,6 @@ const struct sof_intel_dsp_desc skl_chip_info = {
6565
.rom_status_reg = HDA_DSP_SRAM_REG_ROM_STATUS_SKL,
6666
.rom_init_timeout = 300,
6767
.check_ipc_irq = hda_dsp_check_ipc_irq,
68+
.hw_ip_version = SOF_INTEL_CAVS_1_5,
6869
};
6970
EXPORT_SYMBOL_NS(skl_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);

‎sound/soc/sof/intel/tgl.c‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ const struct sof_intel_dsp_desc tgl_chip_info = {
111111
.sdw_alh_base = SDW_ALH_BASE,
112112
.check_sdw_irq = hda_common_check_sdw_irq,
113113
.check_ipc_irq = hda_dsp_check_ipc_irq,
114+
.hw_ip_version = SOF_INTEL_CAVS_2_5,
114115
};
115116
EXPORT_SYMBOL_NS(tgl_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);
116117

@@ -132,6 +133,7 @@ const struct sof_intel_dsp_desc tglh_chip_info = {
132133
.sdw_alh_base = SDW_ALH_BASE,
133134
.check_sdw_irq = hda_common_check_sdw_irq,
134135
.check_ipc_irq = hda_dsp_check_ipc_irq,
136+
.hw_ip_version = SOF_INTEL_CAVS_2_5,
135137
};
136138
EXPORT_SYMBOL_NS(tglh_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);
137139

@@ -153,6 +155,7 @@ const struct sof_intel_dsp_desc ehl_chip_info = {
153155
.sdw_alh_base = SDW_ALH_BASE,
154156
.check_sdw_irq = hda_common_check_sdw_irq,
155157
.check_ipc_irq = hda_dsp_check_ipc_irq,
158+
.hw_ip_version = SOF_INTEL_CAVS_2_5,
156159
};
157160
EXPORT_SYMBOL_NS(ehl_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);
158161

@@ -174,5 +177,6 @@ const struct sof_intel_dsp_desc adls_chip_info = {
174177
.sdw_alh_base = SDW_ALH_BASE,
175178
.check_sdw_irq = hda_common_check_sdw_irq,
176179
.check_ipc_irq = hda_dsp_check_ipc_irq,
180+
.hw_ip_version = SOF_INTEL_CAVS_2_5,
177181
};
178182
EXPORT_SYMBOL_NS(adls_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);

0 commit comments

Comments
 (0)