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
92 changes: 92 additions & 0 deletions app/boards/intel_adsp_ace30_wcl.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
CONFIG_WILDCATLAKE=y
CONFIG_RIMAGE_SIGNING_SCHEMA="ptl"

# SOF / IPC configuration
CONFIG_IPC_MAJOR_4=y
CONFIG_IPC4_BASE_FW_INTEL=y

# SOF / audio pipeline and module settings
CONFIG_MM_DRV=y
CONFIG_COMP_CHAIN_DMA=y
CONFIG_COMP_KPB=y
CONFIG_COMP_TESTER=m
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
CONFIG_FAST_GET=y

# SOF / infrastructure
CONFIG_KCPS_DYNAMIC_CLOCK_CONTROL=n
CONFIG_PROBE=y
CONFIG_PROBE_DMA_MAX=2
CONFIG_ZEPHYR_DP_SCHEDULER=y
CONFIG_ZEPHYR_NATIVE_DRIVERS=y
CONFIG_COLD_STORE_EXECUTE_DRAM=y

# SOF / loadable modules
CONFIG_INTEL_MODULES=y
CONFIG_LIBRARY_MANAGER=y
CONFIG_LIBRARY_BASE_ADDRESS=0xa0688000
CONFIG_LIBRARY_BUILD_LIB=y
CONFIG_LIBRARY_DEFAULT_MODULAR=y

# SOF / logging
CONFIG_SOF_LOG_LEVEL_INF=y

# Zephyr / OS features
CONFIG_HEAP_MEM_POOL_SIZE=8192
CONFIG_L3_HEAP=y
CONFIG_LLEXT=y
CONFIG_LLEXT_STORAGE_WRITABLE=y
CONFIG_MODULES=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_POWER_DOMAIN=y
CONFIG_POWER_DOMAIN_INTEL_ADSP=y

# Zephyr / logging
CONFIG_LOG=y
CONFIG_LOG_BACKEND_ADSP_MTRACE=y
CONFIG_LOG_FLUSH_SLEEP_US=5000
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_LOG_OUTPUT_FORMAT_LINUX_TIMESTAMP=y
CONFIG_LOG_TIMESTAMP_64BIT=y
64 changes: 64 additions & 0 deletions app/boards/intel_adsp_ace30_wcl_sim.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
CONFIG_WILDCATLAKE=y
CONFIG_IPC_MAJOR_4=y
CONFIG_IPC4_BASE_FW_INTEL=y

# turn off SOF drivers
CONFIG_COMP_SRC=y

CONFIG_COMP_SRC_IPC4_FULL_MATRIX=y

# power settings
CONFIG_PM=n
CONFIG_PM_POLICY_CUSTOM=y

# enable Zephyr drivers
CONFIG_ZEPHYR_NATIVE_DRIVERS=y
CONFIG_DAI=y
CONFIG_DAI_INIT_PRIORITY=70
CONFIG_DAI_INTEL_DMIC=y
CONFIG_DAI_DMIC_HW_IOCLK=19200000
CONFIG_DAI_INTEL_DMIC_NHLT=y
CONFIG_DAI_DMIC_HAS_OWNERSHIP=y
CONFIG_DAI_DMIC_HAS_MULTIPLE_LINE_SYNC=y
CONFIG_DAI_INTEL_SSP=n
CONFIG_DMA=y
CONFIG_DMA_INTEL_ADSP_GPDMA=n
CONFIG_INTEL_MODULES=n
CONFIG_LIBRARY_MANAGER=n
CONFIG_INTEL_ADSP_TIMER=y

CONFIG_HEAP_MEM_POOL_SIZE=8192
CONFIG_RIMAGE_SIGNING_SCHEMA="ptl"

CONFIG_FORMAT_CONVERT_HIFI3=n
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_LOG=n
CONFIG_LOG_MODE_DEFERRED=n
CONFIG_LOG_FUNC_NAME_PREFIX_INF=n
CONFIG_COMP_VOLUME_WINDOWS_FADE=y
CONFIG_COMP_UP_DOWN_MIXER=y
CONFIG_SYS_CLOCK_TICKS_PER_SEC=12000
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=19200000

CONFIG_LOG_BACKEND_ADSP_MTRACE=n
CONFIG_SOF_LOG_LEVEL_INF=n
CONFIG_SOF_LOG_LEVEL_OFF=y
CONFIG_ZEPHYR_LOG=n

CONFIG_INTEL_ADSP_IPC=y


# Temporary disabled options
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=n
CONFIG_PM_DEVICE_POWER_DOMAIN=n
CONFIG_COMP_KPB=n

CONFIG_CLOCK_CONTROL_ADSP=y
CONFIG_CLOCK_CONTROL=y
CONFIG_USERSPACE=y
8 changes: 8 additions & 0 deletions app/overlays/wcl/fpga_overlay.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=19200000
CONFIG_DAI_DMIC_HW_IOCLK=19200000

# limit logs to minimize runtime overhead of logging
CONFIG_SOF_LOG_LEVEL_ERR=y

# improves LPSRAM and HPSRAM access time
CONFIG_SRAM_RETENTION_MODE=n
2 changes: 2 additions & 0 deletions app/sample.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ tests:
- intel_adsp/ace20_lnl
- intel_adsp/ace30/ptl
- intel_adsp/ace30/ptl/sim
- intel_adsp/ace30/wcl
- intel_adsp/ace30/wcl/sim
- 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 @@ -92,6 +92,12 @@ class PlatformConfig:
# These cannot be built by everyone out of the box yet.
# For instance: there's no open-source toolchain available for them yet.
extra_platform_configs = {
"wcl-sim" : PlatformConfig(
"intel", "intel_adsp/ace30/wcl/sim",
f"RI-2022.10{xtensa_tools_version_postfix}",
"ace30_LX7HiFi4_PIF",
ipc4 = True
),
"ptl-sim" : PlatformConfig(
"intel", "intel_adsp/ace30/ptl/sim",
f"RI-2022.10{xtensa_tools_version_postfix}",
Expand Down Expand Up @@ -168,6 +174,12 @@ class PlatformConfig:
"ace30_LX7HiFi4_PIF",
ipc4 = True
),
"wcl" : PlatformConfig(
"intel", "intel_adsp/ace30/wcl",
f"RI-2022.10{xtensa_tools_version_postfix}",
"ace30_LX7HiFi4_PIF",
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 @@ -33,7 +33,7 @@
13, 0, 0, 0, 20480, 31871000, 384, 192, 0, 31871, 0,
14, 0, 0, 0, 20480, 34216000, 384, 256, 0, 34216, 0,
15, 0, 0, 0, 20480, 83448000, 1536, 1440, 0, 83448, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
mod_cfg = [0, 0, 0, 0, 20480, 4065600, 24, 22, 0, 0, 0,
1, 0, 0, 0, 20480, 5616000, 8, 25, 0, 0, 0,
2, 0, 0, 0, 20480, 7319200, 24, 27, 0, 0, 0,
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 @@ -60,7 +60,7 @@
40, 0, 0, 0, 280, 6246000, 32, 32, 0, 6246, 0,
41, 0, 0, 0, 280, 5272000, 192, 384, 0, 5272, 0,
42, 0, 0, 0, 280, 5350000, 384, 192, 0, 5350, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
mod_cfg = [ 0, 0, 0, 0, 280, 640100, 45, 60, 0, 0, 0,
1, 0, 0, 0, 280, 1106300, 192, 192, 0, 0, 0,
2, 0, 0, 0, 280, 1573000, 45, 45, 0, 0, 0,
Expand Down
2 changes: 1 addition & 1 deletion src/audio/eq_iir/eq_iir.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
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_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
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 @@ -26,7 +26,7 @@
3, 0, 0, 0, 296, 2928000, 512, 512, 0, 2928, 0,
4, 0, 0, 0, 296, 2572000, 128, 128, 0, 2572, 0,
5, 0, 0, 0, 296, 3760000, 1536, 1536, 0, 3760, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
mod_cfg = [ 0, 0, 0, 0, 296, 644000, 45, 60, 0, 0, 0,
1, 0, 0, 0, 296, 669900, 48, 64, 0, 0, 0,
2, 0, 0, 0, 296, 934000, 96, 128, 0, 0, 0,
Expand Down Expand Up @@ -70,7 +70,7 @@
3, 0, 0, 0, 520, 7631000, 512, 512, 0, 7631, 0,
4, 0, 0, 0, 520, 1953000, 128, 128, 0, 1953, 0,
5, 0, 0, 0, 520, 2301000, 1536, 1536, 0, 2301, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
mod_cfg = [0, 0, 0, 0, 520, 649600, 48, 64, 0, 0, 0,
1, 0, 0, 0, 520, 966300, 96, 128, 0, 0, 0,
2, 0, 0, 0, 520, 2101000, 48, 64, 0, 0, 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 @@ -22,7 +22,7 @@
mod_cfg = [0, 0, 0, 0, 960, 488500, 16, 16, 0, 0, 0,
1, 0, 0, 0, 960, 964500, 16, 16, 0, 0, 0,
2, 0, 0, 0, 960, 2003000, 16, 16, 0, 0, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
mod_cfg = [0, 0, 0, 0, 216, 706000, 12, 16, 0, 0, 0,
1, 0, 0, 0, 216, 1271000, 8, 8, 0, 0, 0,
2, 0, 0, 0, 216, 1839000, 89, 118, 0, 0, 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 @@ -45,7 +45,7 @@
24, 0, 0, 0, 12832, 27696000, 180, 256, 0, 27696, 0,
25, 0, 0, 0, 12832, 18368000, 256, 512, 0, 18368, 0,
26, 0, 0, 0, 12832, 15204000, 128, 256, 0, 15204, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
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
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 @@ -45,7 +45,7 @@
28, 0, 0, 0, 216, 5080000, 1536, 1152, 0, 5080, 0,
29, 0, 0, 0, 216, 3552000, 384, 1536, 0, 3552, 0,
30, 0, 0, 0, 216, 3728000, 768, 1152, 0, 3728, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
mod_cfg = [0, 0, 0, 0, 216, 706000, 12, 16, 0, 0, 0,
1, 0, 0, 0, 216, 1271000, 8, 8, 0, 0, 0,
2, 0, 0, 0, 216, 1839000, 89, 118, 0, 0, 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 @@ -25,7 +25,7 @@
3, 0, 0, 0, 480, 12567000, 720, 720, 0, 12567, 0,
4, 0, 0, 0, 480, 7360000, 768, 768, 0, 7360, 0,
5, 0, 0, 0, 480, 12236000, 1536, 1536, 0, 12236, 0]
#elif CONFIG_LUNARLAKE || CONFIG_PANTHERLAKE
#elif CONFIG_LUNARLAKE || CONFIG_SOC_INTEL_ACE30
mod_cfg = [0, 0, 0, 0, 480, 1114000, 48, 64, 0, 0, 0,
1, 0, 0, 0, 480, 3321600, 192, 256, 0, 0, 0,
2, 0, 0, 0, 480, 3786000, 192, 256, 0, 0, 0,
Expand Down Expand Up @@ -61,7 +61,7 @@
3, 0, 0, 0, 416, 8192000, 512, 512, 0, 8192, 0,
4, 0, 0, 0, 416, 10091000, 128, 128, 0, 10091, 0,
5, 0, 0, 0, 416, 5908000, 768, 768, 0, 5908, 0]
#elif CONFIG_LUNARLAKE || CONFIG_PANTHERLAKE
#elif CONFIG_LUNARLAKE || CONFIG_SOC_INTEL_ACE30
mod_cfg = [0, 0, 0, 0, 416, 914000, 48, 64, 0, 0, 0,
1, 0, 0, 0, 416, 1321600, 192, 256, 0, 0, 0,
2, 0, 0, 0, 416, 1786000, 192, 256, 0, 0, 0,
Expand Down
2 changes: 1 addition & 1 deletion src/debug/tester/tester.toml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
24, 0, 0, 0, 12832, 27696000, 180, 256, 0, 27696, 0,
25, 0, 0, 0, 12832, 18368000, 256, 512, 0, 18368, 0,
26, 0, 0, 0, 12832, 15204000, 128, 256, 0, 15204, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
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
8 changes: 8 additions & 0 deletions src/platform/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,13 @@ config PANTHERLAKE
help
Select if your target platform is Pantherlake-compatible

config WILDCATLAKE
bool "Build for Wildcatlake"
select ACE
select ACE_VERSION_3_0
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

select ACE_VERSION_3_0 but other files use CONFIG_SOC_INTEL_ACE30. Is it correct?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this is only for ace version reporting in IPC, actually we could completely remove this select and just use zephyr kconfigs to determine version but its a story for another PR

Copy link
Collaborator

@softwarecki softwarecki May 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I checked, and it looks like the ACE_VERSION_x_0 definitions set the value of ACE_VERSION. This is mainly used by the dai driver. I agree that this needs to be changed in a separate pr.

help
Select if your target platform is Wildcatlake-compatible

config LIBRARY
bool "Build Library"
help
Expand Down Expand Up @@ -324,6 +331,7 @@ config MAX_CORE_COUNT
default 5 if PANTHERLAKE
default 4 if TIGERLAKE
default 3 if METEORLAKE
default 3 if WILDCATLAKE
default 1
help
Maximum number of cores per configuration
Expand Down
2 changes: 1 addition & 1 deletion src/samples/audio/smart_amp_test.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
REM # mod_cfg [PAR_0 PAR_1 PAR_2 PAR_3 IS_BYTES CPS IBS OBS MOD_FLAGS CPC OBLS]
#ifdef CONFIG_METEORLAKE
mod_cfg = [0, 0, 0, 0, 296, 5000000, 384, 384, 0, 5000, 0]
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_PANTHERLAKE)
#elif defined(CONFIG_LUNARLAKE) || defined(CONFIG_SOC_INTEL_ACE30)
mod_cfg = [0, 0, 0, 0, 4096, 1000000, 128, 128, 0, 0, 0]
#endif

Expand Down
2 changes: 1 addition & 1 deletion tools/rimage/config/platform.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
#include "platform-mtl.toml"
#elif CONFIG_LUNARLAKE
#include "platform-lnl.toml"
#elif CONFIG_PANTHERLAKE
#elif CONFIG_SOC_INTEL_ACE30
#include "platform-ptl.toml"
#endif
Loading
Loading