Skip to content

Commit f7974b4

Browse files
intel: nvl: add NVL platform
Initial commit to add Nova Lake platform. Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com> Signed-off-by: Marcin Szkudlinski <marcin.szkudlinski@intel.com>
1 parent 2977518 commit f7974b4

File tree

28 files changed

+543
-27
lines changed

28 files changed

+543
-27
lines changed
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
CONFIG_NOVALAKE=y
2+
CONFIG_RIMAGE_SIGNING_SCHEMA="nvl"
3+
4+
# SOF / IPC configuration
5+
CONFIG_IPC_MAJOR_4=y
6+
CONFIG_IPC4_BASE_FW_INTEL=y
7+
8+
# SOF / audio pipeline and module settings
9+
CONFIG_COMP_SRC=y
10+
CONFIG_MM_DRV=y
11+
CONFIG_COMP_ARIA=y
12+
CONFIG_COMP_CHAIN_DMA=y
13+
CONFIG_COMP_DRC=y
14+
CONFIG_COMP_KPB=y
15+
CONFIG_COMP_SRC_IPC4_FULL_MATRIX=y
16+
CONFIG_COMP_UP_DOWN_MIXER=y
17+
CONFIG_COMP_VOLUME_WINDOWS_FADE=y
18+
CONFIG_FORMAT_CONVERT_HIFI3=n
19+
CONFIG_FORMAT_U8=y
20+
CONFIG_PCM_CONVERTER_FORMAT_S16_C16_AND_S16_C32=y
21+
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S32_C32=y
22+
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S24_C32=y
23+
CONFIG_PCM_CONVERTER_FORMAT_S24_C24_AND_S24_C32=y
24+
CONFIG_PCM_CONVERTER_FORMAT_S24_C32_AND_S24_C24=y
25+
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S16_C32=y
26+
CONFIG_PCM_CONVERTER_FORMAT_U8=y
27+
CONFIG_PIPELINE_2_0=y
28+
29+
# SOF / infrastructure
30+
CONFIG_PROBE=y
31+
CONFIG_PROBE_DMA_MAX=2
32+
CONFIG_ZEPHYR_DP_SCHEDULER=y
33+
CONFIG_ZEPHYR_NATIVE_DRIVERS=y
34+
35+
# SOF / loadable modules
36+
CONFIG_INTEL_MODULES=y
37+
CONFIG_LIBRARY_MANAGER=y
38+
39+
# SOF / logging
40+
CONFIG_TRACE=n
41+
CONFIG_SOF_LOG_LEVEL_INF=y
42+
CONFIG_ZEPHYR_LOG=y
43+
44+
# Zephyr / OS features
45+
CONFIG_HEAP_MEM_POOL_SIZE=8192
46+
CONFIG_L3_HEAP=y
47+
48+
# Zephyr / device drivers
49+
CONFIG_CLOCK_CONTROL=y
50+
CONFIG_CLOCK_CONTROL_ADSP=y
51+
CONFIG_DAI=y
52+
CONFIG_DAI_INIT_PRIORITY=70
53+
CONFIG_DAI_INTEL_DMIC=y
54+
CONFIG_DAI_DMIC_HW_IOCLK=38400000
55+
CONFIG_DAI_INTEL_DMIC_NHLT=y
56+
CONFIG_DAI_DMIC_HAS_OWNERSHIP=n
57+
CONFIG_DAI_DMIC_HAS_MULTIPLE_LINE_SYNC=y
58+
CONFIG_DAI_INTEL_SSP=y
59+
CONFIG_DMA=y
60+
CONFIG_DMA_INTEL_ADSP_GPDMA=n
61+
CONFIG_INTEL_ADSP_IPC=y
62+
CONFIG_INTEL_ADSP_TIMER=y
63+
CONFIG_MM_DRV_INTEL_ADSP_TLB_REMAP_UNUSED_RAM=y
64+
CONFIG_SYS_CLOCK_TICKS_PER_SEC=12000
65+
66+
# Zephyr / power settings
67+
CONFIG_ADSP_IMR_CONTEXT_SAVE=y
68+
CONFIG_PM=y
69+
CONFIG_PM_DEVICE=y
70+
CONFIG_PM_DEVICE_RUNTIME=y
71+
CONFIG_PM_DEVICE_POWER_DOMAIN=y
72+
CONFIG_PM_DEVICE_SYSTEM_MANAGED=y
73+
CONFIG_PM_POLICY_CUSTOM=y
74+
CONFIG_PM_PREWAKEUP_CONV_MODE_CEIL=y
75+
CONFIG_POWER_DOMAIN=y
76+
CONFIG_POWER_DOMAIN_INTEL_ADSP=y
77+
CONFIG_SRAM_RETENTION_MODE=n
78+
79+
# Zephyr / logging
80+
CONFIG_LOG=y
81+
CONFIG_LOG_BACKEND_ADSP=n
82+
CONFIG_LOG_BACKEND_ADSP_MTRACE=y
83+
CONFIG_LOG_FUNC_NAME_PREFIX_ERR=y
84+
CONFIG_LOG_FUNC_NAME_PREFIX_WRN=y
85+
CONFIG_LOG_FUNC_NAME_PREFIX_INF=y
86+
CONFIG_LOG_FUNC_NAME_PREFIX_DBG=y
87+
CONFIG_LOG_MODE_DEFERRED=y
88+
CONFIG_WINSTREAM_CONSOLE=n

app/overlays/nvl/fpga_overlay.conf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=19200000
2+
CONFIG_DAI_DMIC_HW_IOCLK=19200000
3+
CONFIG_XTENSA_CCOUNT_HZ=40105000
4+
5+
# limit logs to minimize runtime overhead of logging
6+
CONFIG_SOF_LOG_LEVEL_ERR=y

app/sample.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ tests:
1818
- intel_adsp/ace30/ptl/sim
1919
- intel_adsp/ace30/wcl
2020
- intel_adsp/ace30/wcl/sim
21+
- intel_adsp/ace40/nvl
2122
- imx8qm_mek/mimx8qm6/adsp
2223
- imx8qxp_mek/mimx8qx6/adsp
2324
- imx8mp_evk/mimx8ml8/adsp

scripts/xtensa-build-zephyr.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,12 @@ class PlatformConfig:
180180
"ace30_LX7HiFi4_PIF",
181181
ipc4 = True
182182
),
183+
"nvl" : PlatformConfig(
184+
"intel", "intel_adsp/ace40/nvl",
185+
f"RI-2022.10{xtensa_tools_version_postfix}",
186+
"ace4px_HiFi5MMU_PIF_nlib",
187+
ipc4 = True
188+
),
183189

184190
# NXP platforms
185191
"imx8" : PlatformConfig(

src/audio/asrc/asrc.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949
12, 0, 0, 0, 20480, 30050000, 384, 192, 0, 30050, 0,
5050
13, 0, 0, 0, 20480, 35152000, 384, 256, 0, 35152, 0,
5151
14, 0, 0, 0, 20480, 81647000, 1536, 1440, 0, 81647, 0]
52-
#elif CONFIG_SOC_INTEL_ACE30
52+
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
5353
mod_cfg = [0, 0, 0, 0, 20480, 29755000, 64, 192, 0, 29755, 0,
5454
1, 0, 0, 0, 20480, 58017000, 64, 384, 0, 58017, 0,
5555
2, 0, 0, 0, 20480, 103471000, 512, 1440, 0, 103471, 0,

src/audio/base_fw_intel.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ __cold int basefw_vendor_hw_config(uint32_t *data_offset, char *data)
103103
tuple = tlv_next(tuple);
104104
tlv_value_uint32_set(tuple, IPC4_LP_EBB_COUNT_HW_CFG, PLATFORM_LPSRAM_EBB_COUNT);
105105

106-
#ifdef CONFIG_SOC_INTEL_ACE30
106+
#if defined(CONFIG_SOC_INTEL_ACE30) || defined(CONFIG_SOC_INTEL_ACE40)
107107
tuple = tlv_next(tuple);
108108
tlv_value_uint32_set(tuple, IPC4_I2S_CAPS_HW_CFG, I2S_VER_30_PTL);
109109
#endif

src/audio/copier/copier.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@
9292
28, 0, 0, 0, 280, 6058000, 64, 64, 0, 6058, 0,
9393
29, 0, 0, 0, 280, 6198000, 64, 64, 0, 6198, 0,
9494
30, 0, 0, 0, 280, 6034000, 32, 32, 0, 6034, 0]
95-
#elif CONFIG_SOC_INTEL_ACE30
95+
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
9696
mod_cfg = [0, 0, 0, 0, 280, 7915000, 768, 768, 0, 7915, 0,
9797
1, 0, 0, 0, 280, 9487000, 768, 768, 0, 9487, 0,
9898
2, 0, 0, 0, 280, 7363000, 384, 384, 0, 7363, 0,

src/audio/eq_iir/eq_iir.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@
2323
mod_cfg = [0, 0, 0, 0, 4096, 1000000, 128, 128, 0, 1000, 0,
2424
0, 0, 0, 0, 4096, 20663000, 768, 768, 0, 20663, 0,
2525
0, 0, 0, 0, 4096, 11357000, 384, 384, 0, 11357, 0]
26-
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
26+
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30) || \
27+
defined(CONFIG_SOC_INTEL_ACE40)
2728
mod_cfg = [0, 0, 0, 0, 4096, 1000000, 128, 128, 0, 0, 0]
2829
#endif
2930

src/audio/mixin_mixout/mixin_mixout.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
2, 0, 0, 0, 296, 2448000, 512, 512, 0, 2448, 0,
3333
3, 0, 0, 0, 296, 2160000, 128, 128, 0, 2160, 0,
3434
4, 0, 0, 0, 296, 3268000, 1536, 1536, 0, 3268, 0]
35-
#elif CONFIG_SOC_INTEL_ACE30
35+
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
3636
mod_cfg = [0, 0, 0, 0, 296, 5091000, 384, 384, 0, 5091, 0,
3737
1, 0, 0, 0, 296, 5111000, 384, 384, 0, 5111, 0,
3838
2, 0, 0, 0, 296, 5195000, 512, 512, 0, 5195, 0,
@@ -77,7 +77,7 @@
7777
2, 0, 0, 0, 520, 7631000, 512, 512, 0, 0, 0,
7878
3, 0, 0, 0, 520, 1953000, 128, 128, 0, 0, 0,
7979
4, 0, 0, 0, 520, 2301000, 1536, 1536, 0, 0, 0]
80-
#elif CONFIG_SOC_INTEL_ACE30
80+
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
8181
mod_cfg = [0, 0, 0, 0, 520, 3999000, 384, 384, 0, 3999, 0,
8282
1, 0, 0, 0, 520, 3999000, 384, 384, 0, 3999, 0,
8383
2, 0, 0, 0, 520, 4055000, 512, 512, 0, 4055, 0,

src/audio/selector/selector.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
13, 0, 0, 0, 216, 8818000, 384, 1152, 0, 8818, 0,
4040
14, 0, 0, 0, 216, 12274000, 768, 1152, 0, 12274, 0,
4141
15, 0, 0, 0, 216, 19186000, 1536, 1152, 0, 19186, 0]
42-
#elif CONFIG_SOC_INTEL_ACE30
42+
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
4343
mod_cfg = [0, 0, 0, 0, 216, 2952000, 384, 192, 0, 2952, 0,
4444
1, 0, 0, 0, 216, 4720000, 384, 384, 0, 4720, 0,
4545
2, 0, 0, 0, 216, 5705000, 576, 384, 0, 5705, 0,

0 commit comments

Comments
 (0)