Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 88 additions & 0 deletions app/boards/intel_adsp_ace40_nvl.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
CONFIG_NOVALAKE=y
CONFIG_RIMAGE_SIGNING_SCHEMA="nvl"

# SOF / IPC configuration
CONFIG_IPC_MAJOR_4=y
CONFIG_IPC4_BASE_FW_INTEL=y

# SOF / audio pipeline and module settings
CONFIG_COMP_SRC=y
CONFIG_MM_DRV=y
CONFIG_COMP_ARIA=y
CONFIG_COMP_CHAIN_DMA=y
CONFIG_COMP_DRC=y
CONFIG_COMP_KPB=y
CONFIG_COMP_SRC_IPC4_FULL_MATRIX=y
CONFIG_COMP_UP_DOWN_MIXER=y
CONFIG_COMP_VOLUME_WINDOWS_FADE=y
CONFIG_FORMAT_CONVERT_HIFI3=n
CONFIG_FORMAT_U8=y
CONFIG_PCM_CONVERTER_FORMAT_S16_C16_AND_S16_C32=y
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S32_C32=y
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S24_C32=y
CONFIG_PCM_CONVERTER_FORMAT_S24_C24_AND_S24_C32=y
CONFIG_PCM_CONVERTER_FORMAT_S24_C32_AND_S24_C24=y
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S16_C32=y
CONFIG_PCM_CONVERTER_FORMAT_U8=y
CONFIG_PIPELINE_2_0=y

# SOF / infrastructure
CONFIG_PROBE=y
CONFIG_PROBE_DMA_MAX=2
CONFIG_ZEPHYR_DP_SCHEDULER=y
CONFIG_ZEPHYR_NATIVE_DRIVERS=y

# SOF / loadable modules
CONFIG_INTEL_MODULES=y
CONFIG_LIBRARY_MANAGER=y

# SOF / logging
CONFIG_TRACE=n
CONFIG_SOF_LOG_LEVEL_INF=y
CONFIG_ZEPHYR_LOG=y

# Zephyr / OS features
CONFIG_HEAP_MEM_POOL_SIZE=8192
CONFIG_L3_HEAP=y

# Zephyr / device drivers
CONFIG_CLOCK_CONTROL=y
CONFIG_CLOCK_CONTROL_ADSP=y
CONFIG_DAI=y
CONFIG_DAI_INIT_PRIORITY=70
CONFIG_DAI_INTEL_DMIC=y
CONFIG_DAI_DMIC_HW_IOCLK=38400000
CONFIG_DAI_INTEL_DMIC_NHLT=y
CONFIG_DAI_DMIC_HAS_OWNERSHIP=n
CONFIG_DAI_DMIC_HAS_MULTIPLE_LINE_SYNC=y
CONFIG_DAI_INTEL_SSP=y
CONFIG_DMA=y
CONFIG_DMA_INTEL_ADSP_GPDMA=n
CONFIG_INTEL_ADSP_IPC=y
CONFIG_INTEL_ADSP_TIMER=y
CONFIG_MM_DRV_INTEL_ADSP_TLB_REMAP_UNUSED_RAM=y
CONFIG_SYS_CLOCK_TICKS_PER_SEC=12000

# Zephyr / power settings
CONFIG_ADSP_IMR_CONTEXT_SAVE=y
CONFIG_PM=y
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y
CONFIG_PM_DEVICE_POWER_DOMAIN=y
CONFIG_PM_DEVICE_SYSTEM_MANAGED=y
CONFIG_PM_POLICY_CUSTOM=y
CONFIG_PM_PREWAKEUP_CONV_MODE_CEIL=y
CONFIG_POWER_DOMAIN=y
CONFIG_POWER_DOMAIN_INTEL_ADSP=y
CONFIG_SRAM_RETENTION_MODE=n

# Zephyr / logging
CONFIG_LOG=y
CONFIG_LOG_BACKEND_ADSP=n
CONFIG_LOG_BACKEND_ADSP_MTRACE=y
CONFIG_LOG_FUNC_NAME_PREFIX_ERR=y
CONFIG_LOG_FUNC_NAME_PREFIX_WRN=y
CONFIG_LOG_FUNC_NAME_PREFIX_INF=y
CONFIG_LOG_FUNC_NAME_PREFIX_DBG=y
CONFIG_LOG_MODE_DEFERRED=y
CONFIG_WINSTREAM_CONSOLE=n
88 changes: 88 additions & 0 deletions app/boards/intel_adsp_ace40_nvls.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
CONFIG_NOVALAKE=y
CONFIG_RIMAGE_SIGNING_SCHEMA="nvl"

# SOF / IPC configuration
CONFIG_IPC_MAJOR_4=y
CONFIG_IPC4_BASE_FW_INTEL=y

# SOF / audio pipeline and module settings
CONFIG_COMP_SRC=y
CONFIG_MM_DRV=y
CONFIG_COMP_ARIA=y
CONFIG_COMP_CHAIN_DMA=y
CONFIG_COMP_DRC=y
CONFIG_COMP_KPB=y
CONFIG_COMP_SRC_IPC4_FULL_MATRIX=y
CONFIG_COMP_UP_DOWN_MIXER=y
CONFIG_COMP_VOLUME_WINDOWS_FADE=y
CONFIG_FORMAT_CONVERT_HIFI3=n
CONFIG_FORMAT_U8=y
CONFIG_PCM_CONVERTER_FORMAT_S16_C16_AND_S16_C32=y
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S32_C32=y
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S24_C32=y
CONFIG_PCM_CONVERTER_FORMAT_S24_C24_AND_S24_C32=y
CONFIG_PCM_CONVERTER_FORMAT_S24_C32_AND_S24_C24=y
CONFIG_PCM_CONVERTER_FORMAT_S16_C32_AND_S16_C32=y
CONFIG_PCM_CONVERTER_FORMAT_U8=y
CONFIG_PIPELINE_2_0=y

# SOF / infrastructure
CONFIG_PROBE=y
CONFIG_PROBE_DMA_MAX=2
CONFIG_ZEPHYR_DP_SCHEDULER=y
CONFIG_ZEPHYR_NATIVE_DRIVERS=y

# SOF / loadable modules
CONFIG_INTEL_MODULES=y
CONFIG_LIBRARY_MANAGER=y

# SOF / logging
CONFIG_TRACE=n
CONFIG_SOF_LOG_LEVEL_INF=y
CONFIG_ZEPHYR_LOG=y

# Zephyr / OS features
CONFIG_HEAP_MEM_POOL_SIZE=8192
CONFIG_L3_HEAP=y

# Zephyr / device drivers
CONFIG_CLOCK_CONTROL=y
CONFIG_CLOCK_CONTROL_ADSP=y
CONFIG_DAI=y
CONFIG_DAI_INIT_PRIORITY=70
CONFIG_DAI_INTEL_DMIC=y
CONFIG_DAI_DMIC_HW_IOCLK=38400000
CONFIG_DAI_INTEL_DMIC_NHLT=y
CONFIG_DAI_DMIC_HAS_OWNERSHIP=n
CONFIG_DAI_DMIC_HAS_MULTIPLE_LINE_SYNC=y
CONFIG_DAI_INTEL_SSP=y
CONFIG_DMA=y
CONFIG_DMA_INTEL_ADSP_GPDMA=n
CONFIG_INTEL_ADSP_IPC=y
CONFIG_INTEL_ADSP_TIMER=y
CONFIG_MM_DRV_INTEL_ADSP_TLB_REMAP_UNUSED_RAM=y
CONFIG_SYS_CLOCK_TICKS_PER_SEC=12000

# Zephyr / power settings
CONFIG_ADSP_IMR_CONTEXT_SAVE=y
CONFIG_PM=y
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y
CONFIG_PM_DEVICE_POWER_DOMAIN=y
CONFIG_PM_DEVICE_SYSTEM_MANAGED=y
CONFIG_PM_POLICY_CUSTOM=y
CONFIG_PM_PREWAKEUP_CONV_MODE_CEIL=y
CONFIG_POWER_DOMAIN=y
CONFIG_POWER_DOMAIN_INTEL_ADSP=y
CONFIG_SRAM_RETENTION_MODE=n

# Zephyr / logging
CONFIG_LOG=y
CONFIG_LOG_BACKEND_ADSP=n
CONFIG_LOG_BACKEND_ADSP_MTRACE=y
CONFIG_LOG_FUNC_NAME_PREFIX_ERR=y
CONFIG_LOG_FUNC_NAME_PREFIX_WRN=y
CONFIG_LOG_FUNC_NAME_PREFIX_INF=y
CONFIG_LOG_FUNC_NAME_PREFIX_DBG=y
CONFIG_LOG_MODE_DEFERRED=y
CONFIG_WINSTREAM_CONSOLE=n
6 changes: 6 additions & 0 deletions app/overlays/nvl/fpga_overlay.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=19200000
CONFIG_DAI_DMIC_HW_IOCLK=19200000
CONFIG_XTENSA_CCOUNT_HZ=40105000

# limit logs to minimize runtime overhead of logging
CONFIG_SOF_LOG_LEVEL_ERR=y
2 changes: 2 additions & 0 deletions app/sample.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ tests:
- intel_adsp/ace30/ptl/sim
- intel_adsp/ace30/wcl
- intel_adsp/ace30/wcl/sim
- intel_adsp/ace40/nvl
- intel_adsp/ace40/nvls
- imx8qm_mek/mimx8qm6/adsp
- imx8qxp_mek/mimx8qx6/adsp
- imx8mp_evk/mimx8ml8/adsp
Expand Down
12 changes: 12 additions & 0 deletions scripts/xtensa-build-zephyr.py
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,18 @@ class PlatformConfig:
"ace30_LX7HiFi4_PIF",
ipc4 = True
),
"nvl" : PlatformConfig(
"intel", "intel_adsp/ace40/nvl",
f"RI-2022.10{xtensa_tools_version_postfix}",
"ace4px_HiFi5MMU_PIF_nlib",
ipc4 = True
),
"nvl-s" : PlatformConfig(
"intel", "intel_adsp/ace40/nvls",
f"RI-2022.10{xtensa_tools_version_postfix}",
"ace4px_HiFi5MMU_PIF_nlib",
ipc4 = True
),

# NXP platforms
"imx8" : PlatformConfig(
Expand Down
2 changes: 1 addition & 1 deletion src/audio/asrc/asrc.toml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
12, 0, 0, 0, 20480, 30050000, 384, 192, 0, 30050, 0,
13, 0, 0, 0, 20480, 35152000, 384, 256, 0, 35152, 0,
14, 0, 0, 0, 20480, 81647000, 1536, 1440, 0, 81647, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 20480, 29755000, 64, 192, 0, 29755, 0,
1, 0, 0, 0, 20480, 58017000, 64, 384, 0, 58017, 0,
2, 0, 0, 0, 20480, 103471000, 512, 1440, 0, 103471, 0,
Expand Down
2 changes: 1 addition & 1 deletion src/audio/base_fw_intel.c
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ __cold int basefw_vendor_hw_config(uint32_t *data_offset, char *data)
tuple = tlv_next(tuple);
tlv_value_uint32_set(tuple, IPC4_LP_EBB_COUNT_HW_CFG, PLATFORM_LPSRAM_EBB_COUNT);

#ifdef CONFIG_SOC_INTEL_ACE30
#if defined(CONFIG_SOC_INTEL_ACE30) || defined(CONFIG_SOC_INTEL_ACE40)
tuple = tlv_next(tuple);
tlv_value_uint32_set(tuple, IPC4_I2S_CAPS_HW_CFG, I2S_VER_30_PTL);
#endif
Expand Down
2 changes: 1 addition & 1 deletion src/audio/copier/copier.toml
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@
28, 0, 0, 0, 280, 6058000, 64, 64, 0, 6058, 0,
29, 0, 0, 0, 280, 6198000, 64, 64, 0, 6198, 0,
30, 0, 0, 0, 280, 6034000, 32, 32, 0, 6034, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 280, 7915000, 768, 768, 0, 7915, 0,
1, 0, 0, 0, 280, 9487000, 768, 768, 0, 9487, 0,
2, 0, 0, 0, 280, 7363000, 384, 384, 0, 7363, 0,
Expand Down
3 changes: 2 additions & 1 deletion src/audio/eq_iir/eq_iir.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@
mod_cfg = [0, 0, 0, 0, 4096, 1000000, 128, 128, 0, 1000, 0,
0, 0, 0, 0, 4096, 20663000, 768, 768, 0, 20663, 0,
0, 0, 0, 0, 4096, 11357000, 384, 384, 0, 11357, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30) || \
defined(CONFIG_SOC_INTEL_ACE40)
mod_cfg = [0, 0, 0, 0, 4096, 1000000, 128, 128, 0, 0, 0]
#endif

Expand Down
4 changes: 2 additions & 2 deletions src/audio/mixin_mixout/mixin_mixout.toml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
2, 0, 0, 0, 296, 2448000, 512, 512, 0, 2448, 0,
3, 0, 0, 0, 296, 2160000, 128, 128, 0, 2160, 0,
4, 0, 0, 0, 296, 3268000, 1536, 1536, 0, 3268, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 296, 5091000, 384, 384, 0, 5091, 0,
1, 0, 0, 0, 296, 5111000, 384, 384, 0, 5111, 0,
2, 0, 0, 0, 296, 5195000, 512, 512, 0, 5195, 0,
Expand Down Expand Up @@ -77,7 +77,7 @@
2, 0, 0, 0, 520, 7631000, 512, 512, 0, 0, 0,
3, 0, 0, 0, 520, 1953000, 128, 128, 0, 0, 0,
4, 0, 0, 0, 520, 2301000, 1536, 1536, 0, 0, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 520, 3999000, 384, 384, 0, 3999, 0,
1, 0, 0, 0, 520, 3999000, 384, 384, 0, 3999, 0,
2, 0, 0, 0, 520, 4055000, 512, 512, 0, 4055, 0,
Expand Down
2 changes: 1 addition & 1 deletion src/audio/selector/selector.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
13, 0, 0, 0, 216, 8818000, 384, 1152, 0, 8818, 0,
14, 0, 0, 0, 216, 12274000, 768, 1152, 0, 12274, 0,
15, 0, 0, 0, 216, 19186000, 1536, 1152, 0, 19186, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 216, 2952000, 384, 192, 0, 2952, 0,
1, 0, 0, 0, 216, 4720000, 384, 384, 0, 4720, 0,
2, 0, 0, 0, 216, 5705000, 576, 384, 0, 5705, 0,
Expand Down
2 changes: 1 addition & 1 deletion src/audio/src/src.toml
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
23, 0, 0, 0, 12832, 21852000, 180, 256, 0, 21852, 0,
24, 0, 0, 0, 12832, 12629000, 256, 512, 0, 12629, 0,
25, 0, 0, 0, 12832, 13996000, 128, 256, 0, 13996, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 12832, 30633000, 128, 512, 0, 30633, 0,
1, 0, 0, 0, 12832, 28143000, 64, 256, 0, 28143, 0,
2, 0, 0, 0, 12832, 33513000, 96, 512, 0, 33513, 0,
Expand Down
2 changes: 1 addition & 1 deletion src/audio/up_down_mixer/up_down_mixer.toml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@
16, 0, 0, 0, 216, 4596000, 768, 1152, 0, 4596, 0,
17, 0, 0, 0, 216, 5572000, 1536, 1152, 0, 5572, 0,
18, 0, 0, 0, 216, 4896000, 384, 1536, 0, 4896, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 216, 4841000, 384, 192, 0, 4841, 0,
1, 0, 0, 0, 216, 4355000, 384, 384, 0, 4355, 0,
2, 0, 0, 0, 216, 5079000, 576, 384, 0, 5079, 0,
Expand Down
4 changes: 2 additions & 2 deletions src/audio/volume/volume.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
2, 0, 0, 0, 480, 6846000, 720, 720, 0, 6846, 0,
3, 0, 0, 0, 480, 7212000, 768, 768, 0, 7212, 0,
4, 0, 0, 0, 480, 9532000, 1536, 1536, 0, 9532, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 480, 6993000, 384, 384, 0, 6993, 0,
1, 0, 0, 0, 480, 6385000, 192, 192, 0, 6385, 0,
2, 0, 0, 0, 480, 10887000, 720, 720, 0, 10887, 0,
Expand Down Expand Up @@ -71,7 +71,7 @@
2, 0, 0, 0, 416, 7882000, 512, 512, 0, 7882, 0,
3, 0, 0, 0, 416, 5170000, 128, 128, 0, 5170, 0,
4, 0, 0, 0, 416, 5908000, 768, 768, 0, 0, 0]
#elif CONFIG_SOC_INTEL_ACE30
#elif CONFIG_SOC_INTEL_ACE30 || CONFIG_SOC_INTEL_ACE40
mod_cfg = [0, 0, 0, 0, 416, 11865000, 1536, 1536, 0, 11865, 0,
1, 0, 0, 0, 416, 7797000, 384, 384, 1, 7797, 1,
2, 0, 0, 0, 416, 12083000, 512, 512, 2, 12083, 2,
Expand Down
3 changes: 2 additions & 1 deletion src/debug/tester/tester.toml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,8 @@
23, 0, 0, 0, 12832, 27696000, 180, 256, 0, 27696, 0,
24, 0, 0, 0, 12832, 18368000, 256, 512, 0, 18368, 0,
25, 0, 0, 0, 12832, 15204000, 128, 256, 0, 15204, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30) || \
defined(CONFIG_SOC_INTEL_ACE40)
mod_cfg = [0, 0, 0, 0, 12832, 1365500, 0, 0, 0, 1365, 0,
1, 0, 0, 0, 12832, 2302300, 0, 0, 0, 2302, 0,
2, 0, 0, 0, 12832, 3218200, 0, 0, 0, 3218, 0,
Expand Down
18 changes: 15 additions & 3 deletions src/platform/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,13 @@ config WILDCATLAKE
help
Select if your target platform is Wildcatlake-compatible

config NOVALAKE
bool "Build for Novalake"
select ACE
select ACE_VERSION_4_0
help
Select if your target platform is Novalake-compatible

config LIBRARY
bool "Build Library"
help
Expand Down Expand Up @@ -327,9 +334,8 @@ endchoice

config MAX_CORE_COUNT
int
default 5 if LUNARLAKE
default 5 if PANTHERLAKE
default 4 if TIGERLAKE
default 5 if LUNARLAKE || PANTHERLAKE
default 4 if TIGERLAKE || NOVALAKE
default 3 if METEORLAKE
default 3 if WILDCATLAKE
default 1
Expand Down Expand Up @@ -421,6 +427,12 @@ config ACE_VERSION_3_0
help
Select for ACE version 3.0

config ACE_VERSION_4_0
depends on ACE
bool
help
Select for ACE version 4.0

config HP_MEMORY_BANKS
int "HP memory banks count"
depends on CAVS
Expand Down
3 changes: 3 additions & 0 deletions src/platform/intel/ace/include/ace/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
#define ACE_VERSION_1_5 0x10500 /* MTL */
#define ACE_VERSION_2_0 0x20000 /* LNL */
#define ACE_VERSION_3_0 0x30000 /* PTL */
#define ACE_VERSION_4_0 0x40000 /* NVL */

/* ACE version defined by CONFIG_ACE_VER_*/
#if defined(CONFIG_ACE_VERSION_1_5)
Expand All @@ -19,6 +20,8 @@
#define ACE_VERSION ACE_VERSION_2_0
#elif defined(CONFIG_ACE_VERSION_3_0)
#define ACE_VERSION ACE_VERSION_3_0
#elif defined(CONFIG_ACE_VERSION_4_0)
#define ACE_VERSION ACE_VERSION_4_0
#endif

#define HW_CFG_VERSION ACE_VERSION
Expand Down
Loading
Loading