From 0a801aa1dd96a7288a70b4ae2f6e92ebbb815888 Mon Sep 17 00:00:00 2001 From: Guennadi Liakhovetski Date: Thu, 1 Apr 2021 17:27:35 +0200 Subject: [PATCH] ADSP / SOF: don't force uniprocessor mode Allow SMP processing for SOF on ADSP. Note, that after this SOF will build with SMP support enabled on all cAVS versions, but secondary cores will remain disabled unless an SMP topology is loaded by the host. Signed-off-by: Guennadi Liakhovetski --- samples/subsys/audio/sof/boards/intel_adsp_cavs15.conf | 1 - samples/subsys/audio/sof/prj.conf | 6 ++++-- soc/xtensa/intel_adsp/cavs_v18/Kconfig.defconfig.series | 1 + soc/xtensa/intel_adsp/cavs_v20/Kconfig.defconfig.series | 1 + soc/xtensa/intel_adsp/cavs_v25/Kconfig.defconfig.series | 1 + 5 files changed, 7 insertions(+), 3 deletions(-) diff --git a/samples/subsys/audio/sof/boards/intel_adsp_cavs15.conf b/samples/subsys/audio/sof/boards/intel_adsp_cavs15.conf index ecc40cf02ac..bcaf871c134 100644 --- a/samples/subsys/audio/sof/boards/intel_adsp_cavs15.conf +++ b/samples/subsys/audio/sof/boards/intel_adsp_cavs15.conf @@ -1,7 +1,6 @@ CONFIG_APOLLOLAKE=y CONFIG_INTEL_DMIC=y CONFIG_INTEL_SSP=y -CONFIG_CORE_COUNT=1 CONFIG_LP_MEMORY_BANKS=2 CONFIG_HP_MEMORY_BANKS=8 CONFIG_PERFORMANCE_COUNTERS=y diff --git a/samples/subsys/audio/sof/prj.conf b/samples/subsys/audio/sof/prj.conf index 2be9a027b56..3e7021795da 100644 --- a/samples/subsys/audio/sof/prj.conf +++ b/samples/subsys/audio/sof/prj.conf @@ -1,8 +1,10 @@ CONFIG_SOF=y -CONFIG_SMP=n CONFIG_LOG=y -CONFIG_MP_NUM_CPUS=1 CONFIG_BUILD_OUTPUT_BIN=n # Requires heap_info() be implemented, but no Zephyr wrapper CONFIG_DEBUG_MEMORY_USAGE_SCAN=n + +CONFIG_SCHED_DEADLINE=y +CONFIG_SCHED_CPU_MASK=y +CONFIG_SMP_BOOT_DELAY=y diff --git a/soc/xtensa/intel_adsp/cavs_v18/Kconfig.defconfig.series b/soc/xtensa/intel_adsp/cavs_v18/Kconfig.defconfig.series index 6383d6eea24..0c11061851e 100644 --- a/soc/xtensa/intel_adsp/cavs_v18/Kconfig.defconfig.series +++ b/soc/xtensa/intel_adsp/cavs_v18/Kconfig.defconfig.series @@ -68,6 +68,7 @@ endif # LOG if SMP +# FIXME: these DSPs can have more cores, but Zephyr only supports up to 2 cores on them config MP_NUM_CPUS default 2 diff --git a/soc/xtensa/intel_adsp/cavs_v20/Kconfig.defconfig.series b/soc/xtensa/intel_adsp/cavs_v20/Kconfig.defconfig.series index 31f02026eb2..39bca1571ac 100644 --- a/soc/xtensa/intel_adsp/cavs_v20/Kconfig.defconfig.series +++ b/soc/xtensa/intel_adsp/cavs_v20/Kconfig.defconfig.series @@ -68,6 +68,7 @@ endif # LOG if SMP +# FIXME: these DSPs can have more cores, but Zephyr only supports up to 2 cores on them config MP_NUM_CPUS default 2 diff --git a/soc/xtensa/intel_adsp/cavs_v25/Kconfig.defconfig.series b/soc/xtensa/intel_adsp/cavs_v25/Kconfig.defconfig.series index 564c3e725dd..31add8ed410 100644 --- a/soc/xtensa/intel_adsp/cavs_v25/Kconfig.defconfig.series +++ b/soc/xtensa/intel_adsp/cavs_v25/Kconfig.defconfig.series @@ -68,6 +68,7 @@ endif # LOG if SMP +# FIXME: these DSPs can have more cores, but Zephyr only supports up to 2 cores on them config MP_NUM_CPUS default 2