zephyr/soc/xtensa/intel_adsp/common/soc_mp.c

446 lines
13 KiB
C
Raw Normal View History

/*
* Copyright (c) 2019 Intel Corporation
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <device.h>
#include <init.h>
#include <kernel.h>
#include <kernel_structs.h>
#include <toolchain.h>
#include <sys/__assert.h>
#include <sys/sys_io.h>
#include <xtensa/config/core-isa.h>
#include <logging/log.h>
LOG_MODULE_REGISTER(soc_mp, CONFIG_SOC_LOG_LEVEL);
#include <cavs-idc.h>
soc/xtensa/intel_adsp: Upstream updates Significant rework of the Intel Audio DSP SoC/board layers. Includes code from the following upstream commits: Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 25 16:34:36 2020 +0100 xtesna: adsp: use 50k ticks per sec for audio Audio needs high resolution scheduling so schedule to nearest 20uS. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 24 13:59:01 2020 -0700 soc/xtensa/intel_adsp: Remove sof-config.h includes This header isn't used any more, and in any case shouldn't be included by SoC-layer Zephyr headers that need to be able to build without SOF. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat Jun 20 15:42:58 2020 -0700 soc/intel_adsp: Leave interrupts disabled at MP startup This had some code that was pasted in from esp32 that was inexplicably enabling interrupts when starting an auxiliary CPU. The original intent was that the resulting key would be passed down to the OS, but that's a legacy SMP mechanism and unused. What it actually did was SET the resulting value in PS.INTLEVEL, enabling interrupts globally before the CPU is ready to handle them. Just remove. The system doesn't need to enable interrupts until the entrance to the first user thread on this CPU, which will do it automatically as part of the context switch. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 13:57:54 2020 +0300 dts: intel_cavs: Add required label Add required label fixing build for CAVS15, 20, 25. Fixes following errors: ... devicetree error: 'label' is marked as required in 'properties:' in bindings/interrupt-controller/intel,cavs-intc.yaml, but does not appear in ... Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:19:56 2020 +0300 soc: cavs_v18: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:12:25 2020 +0300 soc: cavs_v20: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 14:59:23 2020 +0300 soc: cavs_v25: Remove dts_fixup fix build Remove unused now dts_fixup and fix build with the latest code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:29:06 2020 +0300 soc: intel_adsp: Remove unused functions Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:53:58 2020 +0300 soc: intel_adsp: Clean up soc.h Remove unused or duplicated definitions. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:02:23 2020 +0300 soc: intel_adsp: De-duplicate soc.h Move soc.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:54:19 2020 +0300 soc: intel_adsp: Remove duplicated io.h Move duplicated io.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:46 2020 +0300 cmake: Correct SOC_SERIES name for byt and bdw Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:02 2020 +0300 soc: intel_adsp: Build bootloader only for specific SOCs Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 11 13:46:25 2020 +0100 boards: xtensa: adsp: add byt and bdw boards WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 10 10:01:29 2020 -0700 soc/intel_adsp: Make the HDA timer the default always The CAVS_TIMER was originally written because the CCOUNT values are skewed between SMP CPUs, so it's the default when SMP=y. But really it should be the default always, the 19.2 MHz timer is plenty fast enough to be the Zephyr cycle timer, and it's rate is synchronized across the whole system (including the host CPU), making it a better choice for timing-sensitive applications. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:21:43 2020 +0300 soc: cavs_v25: Enable general samples build Enables general samples build for SOC cavs_v25. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:13:53 2020 +0300 soc: cavs_v20: Enable general samples build Enable general sample build. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:35:13 2020 +0300 soc: cavs_v18: Fix build general samples Fix building general samples for CAVS18. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:22:40 2020 +0300 soc: intel_adsp: Add support for other SOCs Support other SOCs in the "ready" message to the Host. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 13:25:39 2020 +0300 soc: intel_adsp: Move adsp.c to common SOC area Move adsp.c to common and clean makefiles. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 17:18:18 2020 +0300 boards: intel_adsp: Remove dependency on SOF Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 14:29:44 2020 +0100 soc: xtensa: cavs: build now good for cavs20 + 25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 15:57:01 2020 +0300 soc: cavs_v15: Fix build for hello_world Fix build for other then audio/sof targets. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:50:12 2020 +0300 sample: audio/sof: Remove old overlays Removing old overlays used to switch logging backend. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 15:02:01 2020 +0300 soc: intel_adsp: Correct TEXT area Correct HEADER_SPACE and put TEXT to: (HP_SRAM_WIN0_BASE + HP_SRAM_WIN0_SIZE + VECTOR_TBL_SIZE) Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:44:47 2020 +0300 soc: intel_adsp: Trivial syntax cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:41:07 2020 +0300 soc: intel_adsp: Fix bootloader script path Make it possible to find linker script if build is done not inside ZEPHYR_BASE. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 12:10:17 2020 +0100 soc: xtensa: cavs20/25: fix build with new headers - WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 13:35:38 2020 +0300 soc: intel_adsp: Fix include headers Fixes include headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 10:38:50 2020 +0100 soc: xtensa: cav18: updated headers- WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Fri May 1 15:29:26 2020 -0700 soc/xtensa/intel_adsp: Clean up MP config logic CONFIG_MP_NUM_CPUS is a platform value, indicating the number of CPUs for which the Zephyr image is built. This is the value kernel and device code should use to predicate questions like "is there more than one CPU?" CONFIG_SMP is an application tunable, controlling whether or not the kernel schedules threads on CPUs other than the first one. This is orthogonal to MP_NUM_CPUS: it's possible to build a "SMP" kernel on a uniprocessor system or have a UP kernel on a MP system if the other cores are used for non-thread application code. CONFIG_SCHED_IPI_SUPPORTED is a platform flag telling an SMP kernel whether or not it can synchronously signal other CPUs of scheduler state changes. It should be inspected only inside the scheduler (or other code that uses the API). This should be selected in kconfig by soc layer code, or by a driver that implements the feature. CONFIG_IPM_CAVS_IDC is a driver required to implement IPI on this platform. This is what we should use as a predicate if we have dependence on the IPM driver for a platform feature. These were all being sort of borged together in code. Split them up correctly, allowing the platform MP layer to be unit tested in the absence of SMP (c.f. tests/kernel/mp), and SMP kernels with only one CPU (which is pathlogical in practice, but also a very good unit test) to be built. Also removes some dead linker code for SMP-related sections that don't exist in Zephyr. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:41:55 2020 +0100 soc: xtensa: bootloader - use linker script Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:26:18 2020 +0100 soc: xtensa: further fix headers - WIP Simplify the directory structure, WIP for cavs20 and cavs25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 12:59:30 2020 +0300 soc: cavs_v15: Remove unneeded include Remove include fixing build. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Jun 7 12:37:35 2020 +0100 soc:xtensa: adsp: remove sof specific code from soc headers TODO: v1.8+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 23:19:37 2020 -0700 intel_adsp_*/doc: fix duplicate .rst labels Quick fix purely to make the build green again. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 22:34:40 2020 -0700 samples/audio/sof: use OVERLAY_CONFIG to import apollolake_defconfig This reverts commit 21f16b5b1d29fca83d1b62b1b75683b5a1bc2935 that copied it here instead. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 5 12:34:48 2020 +0300 soc: intel_adsp: Move soc_mp to common Moving soc_mp to common SOC area, it still needs fixes for taking number of cores from Zephyr Kconfig, etc. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 16:05:06 2020 +0300 soc: intel_adsp: Move memory.h from lib/ For those files from SOF referencing platform/lib/memory.h we have include. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 15:20:09 2020 +0300 soc: intel_adsp: Rename platform.h to soc.h Rename to prevent including it from SOF. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:47:55 2020 +0300 soc: intel_adsp: Move headers Move headers to more convenient place Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:21:51 2020 +0300 soc: intel_adsp: More SOC cleaning Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Mon Jun 1 15:31:34 2020 -0700 samples/audio/sof: import sof/src/arch/xtensa/ apollolake_defconfig Import modules/audio/sof/src/arch/xtensa/configs/apollolake_defconfig into prj.conf and new boards/up_squared_adsp.conf Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:07:40 2020 +0100 soc:xtensa: adsp: let SOF configure the DSP for audio Let SOF do this for the moment. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:06:20 2020 +0100 soc: xtensa: cavs: remove headers similar to cavs15 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 15:58:38 2020 +0300 soc: intel_adsp: Move ipc header to common Remove duplicated headers from CAVS to common SOC part Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 13:02:09 2020 +0300 soc: cavs_v15: Remove unneeded headers Remove also from CAVS15. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 18:34:11 2020 +0300 Remove more headers Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:12:09 2020 +0100 soc: xtensa: remove cavs sod headers for drivers and trace. Duplicate cavs15 headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:05:12 2020 +0100 samples: move sof dai, dma and clk configs to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 17:38:45 2020 +0300 soc: intel_adsp: Remove more duplicated headers Remove more headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 2 15:50:03 2020 +0100 samples: sof: remove pm realted files. Use the SOF versions. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 16:55:40 2020 +0300 WIP: Strip lib from include path WIP, pushed for sync Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:44:33 2020 +0300 soc: intel_adsp: Remove more headers Remove even more common headers Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:00:47 2020 +0300 soc: intel_adsp: Remove SOF headers The headers would be used by audio/sof app directly from SOF module. Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat May 30 11:01:26 2020 -0700 soc/intel_adsp: Alternative log reading script This script speaks the same protocol and works with the same firmware, but: * Is a single file with no dependencies outside the python3 standard library and can be run out-of-tree (i.e. with setups where the firmware is not built on the device under test) * Operates in "tail" mode, where it will continue polling for more output, making it easier to watch a running process and acting more like a conventional console device. * Has no dependence on the diag_driver kernel module (it reads the DSP SRAM memory directly from the BAR mapping in the PCI device) * Is MUCH smaller than the existing tool. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 28 16:17:51 2020 +0300 Decrease HEP pool size to 192000 Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:27:00 2020 +0100 soc: xtensa: cavs25: complete support for cavs25 Builds, not tested on qmeu due to missing SOF ROM (TODO) Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:24:26 2020 +0100 soc: xtensa: cavs20: complete cavs20 support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:22:13 2020 +0100 soc: xtensa: cavs18: complete boot support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:19:23 2020 +0100 soc: xtensa: cavs15: use cavs15 instead of apl as linker soc name Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:16:06 2020 +0100 TODO: samples: sof: work around missing trace symbols. Disable local trace. Needs trace updates finished before this can be removed. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:57:19 2020 +0100 dts: xtensa: rename apl to cavs15 DTS This DTS is used by more than APL SOC. i.e. all CAVS15 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:52:20 2020 +0100 west: commands: sign: Add signing support for other CAVS targets Sign for CAVS15, CAVS18, CAVS20 and CAVS25 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:50:07 2020 +0100 boards: xtensa: cavs: used Zephyr mask macro Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:49:46 2020 +0100 soc: xtensa: move code to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 26 11:40:36 2020 +0100 soc: xtensa: use SOF versions of clk Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:38:45 2020 +0300 soc: intel_adsp: Send FW ready for non SOF configuration Configure windows and send FW ready when used without SOF, should be loaded with fw_loader script. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:02:22 2020 +0300 soc: intel_adsp: Use SOF version of the file Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:47:27 2020 +0300 soc: intel_adsp: Clean up include headers Remove SOF mentions from the SOC headers. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:43:05 2020 +0300 soc: intel_adsp: Move SOF specific code to samples/audio/sof Move SOF specific code to the SOF sample. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:39:42 2020 +0300 soc: intel_adsp: Use SOF module's version of mem_window.c Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:36:41 2020 +0300 soc: intel_adsp: Use exact copy from SOF module Use SOF module verion of the clk.c Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 14:03:35 2020 +0300 soc: xtensa: Add {SOC_FAMILY}/common/include path Add ${SOC_DIR}/${ARCH}/${SOC_FAMILY}/common/include path if exist. Fixes issues for xtensa SOCs. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:18:50 2020 +0100 soc: xtensa: cavs common: fix headers for build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:10:57 2020 +0100 soc: xtensa: adsp: add so_inthandlers.h for Intel platforms Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:08:26 2020 +0100 cmake: xtensa: select correct compiler per CAVS target. TODO: what about XCC ? Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue May 19 14:59:26 2020 +0300 boards: up_squared_adsp: Move SOF configuration to samples Move SOF-specific configuration to samples/audio/sof prj. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 15 15:29:50 2020 +0300 soc: intel_adsp: Move SOF code to modules/audio/sof Move SOF dependent code out of SOC area. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 14 17:30:38 2020 +0300 Move task_main_start() to audio/sof sample Start task_main_start() from main of audio/sof sample. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed May 13 15:37:20 2020 +0300 Rename up_xtreme_adsp to intel_adsp_cavs18 Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Apr 27 14:12:59 2020 +0300 Add sample audio/sof for SOF initialization Add dedicated sample where we put SOF specific initialization. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 18:49:36 2020 +0300 WIP: soc: cavs_v18: Cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:44:06 2020 +0300 soc: cavs_v15: Move soc init to common part Moving SOC init to the right place. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:02:28 2020 +0300 soc: intel_adsp: Move common part to special dir Moving common part to common/adsp.c Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 8 14:37:50 2020 +0300 boards: up_xtreme_adsp: Add initial up_xtreme_adsp board Add initial board copying existing up_squared_adsp board and using CAVS1.8 SOC family. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 7 15:30:51 2020 +0300 soc: intel_adsp: Generalize bootloader Move bootloader to soc/xtensa/intel_adsp making it available for other boards. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:31:00 2020 +0100 boards: xtensa: up_squared: Add support for all CAVS Add boot support for all CAVS versions. TODO: needs to be made common Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:25:34 2020 +0100 soc: xtensa: intel_adsp: Manage cache for DMA descriptors Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 21:10:50 2020 +0100 soc: xtensa: adsp: use 24M567 clock Use audio clock Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 10:04:01 2020 +0100 xtensa: soc: adsp: enable system agent Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:03:07 2020 +0100 soc: xtensa: intel_adsp: increase mem pool to 192k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:02:31 2020 +0100 soc: xtensa: intel_adsp: re-enable DMA trace Buffer will be empty (as trace items sent to Zephyr LOG) but logic is running. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 11:18:55 2020 +0100 soc: xtensa: intel: dont use uncache region yet. Some code was still using this region. Use later. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 10:07:28 2020 +0100 soc: xtensa: intel_adsp: fix notifier init Topology now loads. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:18:38 2020 +0100 boards: up2: Need to use sof config for bootloader This will need uncoupled at some point. For testing today. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:16:38 2020 +0100 boards: up2: increase heap to 128k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:35:19 2020 +0300 boards: up_squared_adsp: Use bigger HEAP Use HEAP from old demo. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 16:06:32 2020 +0100 soc: xtensa: intel_adsp: Fix config.h naming collisions Rename sof version to sof-config.h Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:22:42 2020 +0300 Small cleanups Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 22:00:44 2020 +0300 tests: sof/audio: Test ll scheduler Add more tests for scheduler. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 18:38:35 2020 +0300 tests: Add first schedule test Add initial test for testing scheduling. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 29 13:36:23 2020 +0100 soc: xtensa: rmeove build warnings Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 18:04:33 2020 +0300 soc/intel_adsp: Register sof logging Register sof logging for tracing Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 14:16:55 2020 +0300 boards: up_squared_adsp: Define HEAP_MEM_POOL_SIZE Define HEAP_MEM_POOL_SIZE when SOF enabled. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 10:09:20 2020 +0300 tests: audio/sof: Add interrupt API for testing Add initial interrupt API for testing. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 15:54:28 2020 +0100 soc: xtensa: adsp: Update linker script for SOF sections. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 11:20:01 2020 +0100 soc: xtensa: adsp: send SOF FW metadata as boot message Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 26 21:47:20 2020 +0100 soc: xtensa: adsp: re-enable all SOF IP init. Do all SOF IP init. TODO: ATOMCTL, WFI on LX6 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sat Apr 25 15:30:40 2020 +0100 soc: xtensa: irq: Make sure IPC IRQ is registered. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 20:56:09 2020 +0300 tests: sof: Enable console Enable console for the test. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 17:57:22 2020 +0300 soc: cavs_v15: Fix XTENSA_KERNEL_CPU_PTR_SR Use correct value for XTENSA_KERNEL_CPU_PTR_SR. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 14:48:31 2020 +0300 tests: audio/sof: Add tests for alloc API testing Add initial tests for allocation API testing. Can be extended for other later. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 17:49:32 2020 +0300 logging: Enable xtensa simulator backend for ADSP Enable xtensa simulator backend for SOC_FAMILY_INTEL_ADSP. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 20:58:30 2020 +0100 soc: xtensa: add common cpu logic Support for additional cores. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 10:11:07 2020 +0300 Update west.yaml to point to the latest repo Update west.yaml Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:17:01 2020 +0100 soc: xtensa: cavs: Fix build for clk.c on cavs18+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:31 2020 +0100 soc: xtensa: cavs15: removed unused headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:09 2020 +0100 soc: xtensa: cavs25: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:52 2020 +0100 soc: xtensa: cavs20: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:09 2020 +0100 soc: xtensa: cavs18: Align with SOF headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 11:42:39 2020 +0100 west: sof: Updated to latest version. Now builds, links and runs SOF code (but not to FW ready). Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 19 13:28:53 2020 +0100 xtensa: intel adsp: build in SOF symbols if CONFIG_SOF Code now fully links against SOF. Needs to be run tested. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:19:28 2020 -0700 DO NOT MERGE: temporarily add thesoftproject as remote for sof module Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:33:40 2020 -0700 ipm: cavs_idc: use the IPC/IDC definitions in SoC The SoC definitions have the necessary IPC/IDC bits so there is no need to define them separately. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 14:30:20 2020 +0100 TODO: config: Use static config for SOF module. TODO: needs to be generated as part of SOF kconfig Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri Apr 10 21:56:07 2020 +0100 HACK: Add SOF into build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:55:15 2020 +0100 west: modules: Add SOF audio module. Add support for building SOF as a Zephyr module. This is the starting point for add SOF audio into Zephyr. Currently builds but does not use any symbols yet. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:48:48 2020 +0100 WIP soc: adsp-cavs15: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:43:44 2020 +0100 WIP soc: adsp-common: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:36:32 2020 +0000 WIP: soc: adsp-common: cache is common across all Intel ADSP platforms De-duplicate soc.h cache definitions. TODO: this needs done for other common functions. TODO: need to fix include path Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:43 2020 -0700 WIP: soc: cavs25: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:12 2020 -0700 WIP: soc: cavs20: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:06:40 2020 -0700 WIP: soc: cavs18: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 12:37:17 2020 -0700 soc: intel_adsp: use main_entry.S in common for cavs_v15 The files are identical anyway. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:38:14 2020 -0700 soc: intel_adsp/cavs_v15: link common code Let cavs_v15 link against the code compiled under common/. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 13:08:28 2020 +0000 WIP: soc: common: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:37:32 2020 +0000 WIP soc: adsp-cavs15: build power down support Build the power down support for CAVS1.5 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 12:40:17 2020 +0000 WIP: soc: cavs15: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:30:08 2020 +0000 soc: cavs15: Add missing SHIM registers. SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 9 15:43:01 2020 +0000 xtensa: intel_adsp/cavs_v15: fix usage of LP SRAM power gating Remove LSPGCTL as it can cause confusion, use SHIM_LSPGCTL instead. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Feb 26 15:28:48 2020 +0000 boards: up_squared_adsp: Use local xtensa HAL instead of SDK HAL SDK HAL is deprecated for Intel ADSP SoCs so fix and use local HAL module. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 10:45:15 2020 -0700 soc: add Intel Audio DSP SoC family This creates a SoC family for the audio DSPs on various Intel CPUs. The intel_apl_adsp is being moved into this family as well, since it is part of the CAVS v1.5 series of DSPs. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:29:02 2020 -0700 soc: xtensa: add CMakeLists.txt Add CMakeLists.txt under soc/xtensa so that CMakeLists.txt inside each SoC directory will be included, similar to what ARM and RISCV have. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:43 2020 -0700 Revert "boards: up_squared_adsp: Add flasher script" This reverts commit 80f295a9dd259f75f201c09abee849f1780efaff. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:32 2020 -0700 Revert "boards: up_squared_adsp: Update logtool tool" This reverts commit 7770d182c15b8173cade5804a0889b69291354d4. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:23 2020 -0700 Revert "soc: intel_adsp: Generalize bootloader" This reverts commit d6a33ef4677dddd7c76d4672ebec82352448c1d2. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> soc: xtensa; intel: remove sof-config.h - SQUASH No longer used. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-06-25 17:42:51 -07:00
#include <soc.h>
#include <arch/xtensa/cache.h>
soc/xtensa/intel_adsp: Upstream updates Significant rework of the Intel Audio DSP SoC/board layers. Includes code from the following upstream commits: Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 25 16:34:36 2020 +0100 xtesna: adsp: use 50k ticks per sec for audio Audio needs high resolution scheduling so schedule to nearest 20uS. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 24 13:59:01 2020 -0700 soc/xtensa/intel_adsp: Remove sof-config.h includes This header isn't used any more, and in any case shouldn't be included by SoC-layer Zephyr headers that need to be able to build without SOF. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat Jun 20 15:42:58 2020 -0700 soc/intel_adsp: Leave interrupts disabled at MP startup This had some code that was pasted in from esp32 that was inexplicably enabling interrupts when starting an auxiliary CPU. The original intent was that the resulting key would be passed down to the OS, but that's a legacy SMP mechanism and unused. What it actually did was SET the resulting value in PS.INTLEVEL, enabling interrupts globally before the CPU is ready to handle them. Just remove. The system doesn't need to enable interrupts until the entrance to the first user thread on this CPU, which will do it automatically as part of the context switch. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 13:57:54 2020 +0300 dts: intel_cavs: Add required label Add required label fixing build for CAVS15, 20, 25. Fixes following errors: ... devicetree error: 'label' is marked as required in 'properties:' in bindings/interrupt-controller/intel,cavs-intc.yaml, but does not appear in ... Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:19:56 2020 +0300 soc: cavs_v18: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:12:25 2020 +0300 soc: cavs_v20: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 14:59:23 2020 +0300 soc: cavs_v25: Remove dts_fixup fix build Remove unused now dts_fixup and fix build with the latest code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:29:06 2020 +0300 soc: intel_adsp: Remove unused functions Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:53:58 2020 +0300 soc: intel_adsp: Clean up soc.h Remove unused or duplicated definitions. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:02:23 2020 +0300 soc: intel_adsp: De-duplicate soc.h Move soc.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:54:19 2020 +0300 soc: intel_adsp: Remove duplicated io.h Move duplicated io.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:46 2020 +0300 cmake: Correct SOC_SERIES name for byt and bdw Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:02 2020 +0300 soc: intel_adsp: Build bootloader only for specific SOCs Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 11 13:46:25 2020 +0100 boards: xtensa: adsp: add byt and bdw boards WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 10 10:01:29 2020 -0700 soc/intel_adsp: Make the HDA timer the default always The CAVS_TIMER was originally written because the CCOUNT values are skewed between SMP CPUs, so it's the default when SMP=y. But really it should be the default always, the 19.2 MHz timer is plenty fast enough to be the Zephyr cycle timer, and it's rate is synchronized across the whole system (including the host CPU), making it a better choice for timing-sensitive applications. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:21:43 2020 +0300 soc: cavs_v25: Enable general samples build Enables general samples build for SOC cavs_v25. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:13:53 2020 +0300 soc: cavs_v20: Enable general samples build Enable general sample build. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:35:13 2020 +0300 soc: cavs_v18: Fix build general samples Fix building general samples for CAVS18. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:22:40 2020 +0300 soc: intel_adsp: Add support for other SOCs Support other SOCs in the "ready" message to the Host. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 13:25:39 2020 +0300 soc: intel_adsp: Move adsp.c to common SOC area Move adsp.c to common and clean makefiles. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 17:18:18 2020 +0300 boards: intel_adsp: Remove dependency on SOF Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 14:29:44 2020 +0100 soc: xtensa: cavs: build now good for cavs20 + 25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 15:57:01 2020 +0300 soc: cavs_v15: Fix build for hello_world Fix build for other then audio/sof targets. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:50:12 2020 +0300 sample: audio/sof: Remove old overlays Removing old overlays used to switch logging backend. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 15:02:01 2020 +0300 soc: intel_adsp: Correct TEXT area Correct HEADER_SPACE and put TEXT to: (HP_SRAM_WIN0_BASE + HP_SRAM_WIN0_SIZE + VECTOR_TBL_SIZE) Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:44:47 2020 +0300 soc: intel_adsp: Trivial syntax cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:41:07 2020 +0300 soc: intel_adsp: Fix bootloader script path Make it possible to find linker script if build is done not inside ZEPHYR_BASE. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 12:10:17 2020 +0100 soc: xtensa: cavs20/25: fix build with new headers - WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 13:35:38 2020 +0300 soc: intel_adsp: Fix include headers Fixes include headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 10:38:50 2020 +0100 soc: xtensa: cav18: updated headers- WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Fri May 1 15:29:26 2020 -0700 soc/xtensa/intel_adsp: Clean up MP config logic CONFIG_MP_NUM_CPUS is a platform value, indicating the number of CPUs for which the Zephyr image is built. This is the value kernel and device code should use to predicate questions like "is there more than one CPU?" CONFIG_SMP is an application tunable, controlling whether or not the kernel schedules threads on CPUs other than the first one. This is orthogonal to MP_NUM_CPUS: it's possible to build a "SMP" kernel on a uniprocessor system or have a UP kernel on a MP system if the other cores are used for non-thread application code. CONFIG_SCHED_IPI_SUPPORTED is a platform flag telling an SMP kernel whether or not it can synchronously signal other CPUs of scheduler state changes. It should be inspected only inside the scheduler (or other code that uses the API). This should be selected in kconfig by soc layer code, or by a driver that implements the feature. CONFIG_IPM_CAVS_IDC is a driver required to implement IPI on this platform. This is what we should use as a predicate if we have dependence on the IPM driver for a platform feature. These were all being sort of borged together in code. Split them up correctly, allowing the platform MP layer to be unit tested in the absence of SMP (c.f. tests/kernel/mp), and SMP kernels with only one CPU (which is pathlogical in practice, but also a very good unit test) to be built. Also removes some dead linker code for SMP-related sections that don't exist in Zephyr. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:41:55 2020 +0100 soc: xtensa: bootloader - use linker script Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:26:18 2020 +0100 soc: xtensa: further fix headers - WIP Simplify the directory structure, WIP for cavs20 and cavs25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 12:59:30 2020 +0300 soc: cavs_v15: Remove unneeded include Remove include fixing build. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Jun 7 12:37:35 2020 +0100 soc:xtensa: adsp: remove sof specific code from soc headers TODO: v1.8+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 23:19:37 2020 -0700 intel_adsp_*/doc: fix duplicate .rst labels Quick fix purely to make the build green again. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 22:34:40 2020 -0700 samples/audio/sof: use OVERLAY_CONFIG to import apollolake_defconfig This reverts commit 21f16b5b1d29fca83d1b62b1b75683b5a1bc2935 that copied it here instead. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 5 12:34:48 2020 +0300 soc: intel_adsp: Move soc_mp to common Moving soc_mp to common SOC area, it still needs fixes for taking number of cores from Zephyr Kconfig, etc. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 16:05:06 2020 +0300 soc: intel_adsp: Move memory.h from lib/ For those files from SOF referencing platform/lib/memory.h we have include. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 15:20:09 2020 +0300 soc: intel_adsp: Rename platform.h to soc.h Rename to prevent including it from SOF. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:47:55 2020 +0300 soc: intel_adsp: Move headers Move headers to more convenient place Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:21:51 2020 +0300 soc: intel_adsp: More SOC cleaning Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Mon Jun 1 15:31:34 2020 -0700 samples/audio/sof: import sof/src/arch/xtensa/ apollolake_defconfig Import modules/audio/sof/src/arch/xtensa/configs/apollolake_defconfig into prj.conf and new boards/up_squared_adsp.conf Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:07:40 2020 +0100 soc:xtensa: adsp: let SOF configure the DSP for audio Let SOF do this for the moment. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:06:20 2020 +0100 soc: xtensa: cavs: remove headers similar to cavs15 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 15:58:38 2020 +0300 soc: intel_adsp: Move ipc header to common Remove duplicated headers from CAVS to common SOC part Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 13:02:09 2020 +0300 soc: cavs_v15: Remove unneeded headers Remove also from CAVS15. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 18:34:11 2020 +0300 Remove more headers Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:12:09 2020 +0100 soc: xtensa: remove cavs sod headers for drivers and trace. Duplicate cavs15 headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:05:12 2020 +0100 samples: move sof dai, dma and clk configs to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 17:38:45 2020 +0300 soc: intel_adsp: Remove more duplicated headers Remove more headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 2 15:50:03 2020 +0100 samples: sof: remove pm realted files. Use the SOF versions. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 16:55:40 2020 +0300 WIP: Strip lib from include path WIP, pushed for sync Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:44:33 2020 +0300 soc: intel_adsp: Remove more headers Remove even more common headers Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:00:47 2020 +0300 soc: intel_adsp: Remove SOF headers The headers would be used by audio/sof app directly from SOF module. Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat May 30 11:01:26 2020 -0700 soc/intel_adsp: Alternative log reading script This script speaks the same protocol and works with the same firmware, but: * Is a single file with no dependencies outside the python3 standard library and can be run out-of-tree (i.e. with setups where the firmware is not built on the device under test) * Operates in "tail" mode, where it will continue polling for more output, making it easier to watch a running process and acting more like a conventional console device. * Has no dependence on the diag_driver kernel module (it reads the DSP SRAM memory directly from the BAR mapping in the PCI device) * Is MUCH smaller than the existing tool. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 28 16:17:51 2020 +0300 Decrease HEP pool size to 192000 Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:27:00 2020 +0100 soc: xtensa: cavs25: complete support for cavs25 Builds, not tested on qmeu due to missing SOF ROM (TODO) Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:24:26 2020 +0100 soc: xtensa: cavs20: complete cavs20 support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:22:13 2020 +0100 soc: xtensa: cavs18: complete boot support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:19:23 2020 +0100 soc: xtensa: cavs15: use cavs15 instead of apl as linker soc name Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:16:06 2020 +0100 TODO: samples: sof: work around missing trace symbols. Disable local trace. Needs trace updates finished before this can be removed. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:57:19 2020 +0100 dts: xtensa: rename apl to cavs15 DTS This DTS is used by more than APL SOC. i.e. all CAVS15 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:52:20 2020 +0100 west: commands: sign: Add signing support for other CAVS targets Sign for CAVS15, CAVS18, CAVS20 and CAVS25 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:50:07 2020 +0100 boards: xtensa: cavs: used Zephyr mask macro Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:49:46 2020 +0100 soc: xtensa: move code to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 26 11:40:36 2020 +0100 soc: xtensa: use SOF versions of clk Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:38:45 2020 +0300 soc: intel_adsp: Send FW ready for non SOF configuration Configure windows and send FW ready when used without SOF, should be loaded with fw_loader script. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:02:22 2020 +0300 soc: intel_adsp: Use SOF version of the file Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:47:27 2020 +0300 soc: intel_adsp: Clean up include headers Remove SOF mentions from the SOC headers. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:43:05 2020 +0300 soc: intel_adsp: Move SOF specific code to samples/audio/sof Move SOF specific code to the SOF sample. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:39:42 2020 +0300 soc: intel_adsp: Use SOF module's version of mem_window.c Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:36:41 2020 +0300 soc: intel_adsp: Use exact copy from SOF module Use SOF module verion of the clk.c Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 14:03:35 2020 +0300 soc: xtensa: Add {SOC_FAMILY}/common/include path Add ${SOC_DIR}/${ARCH}/${SOC_FAMILY}/common/include path if exist. Fixes issues for xtensa SOCs. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:18:50 2020 +0100 soc: xtensa: cavs common: fix headers for build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:10:57 2020 +0100 soc: xtensa: adsp: add so_inthandlers.h for Intel platforms Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:08:26 2020 +0100 cmake: xtensa: select correct compiler per CAVS target. TODO: what about XCC ? Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue May 19 14:59:26 2020 +0300 boards: up_squared_adsp: Move SOF configuration to samples Move SOF-specific configuration to samples/audio/sof prj. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 15 15:29:50 2020 +0300 soc: intel_adsp: Move SOF code to modules/audio/sof Move SOF dependent code out of SOC area. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 14 17:30:38 2020 +0300 Move task_main_start() to audio/sof sample Start task_main_start() from main of audio/sof sample. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed May 13 15:37:20 2020 +0300 Rename up_xtreme_adsp to intel_adsp_cavs18 Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Apr 27 14:12:59 2020 +0300 Add sample audio/sof for SOF initialization Add dedicated sample where we put SOF specific initialization. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 18:49:36 2020 +0300 WIP: soc: cavs_v18: Cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:44:06 2020 +0300 soc: cavs_v15: Move soc init to common part Moving SOC init to the right place. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:02:28 2020 +0300 soc: intel_adsp: Move common part to special dir Moving common part to common/adsp.c Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 8 14:37:50 2020 +0300 boards: up_xtreme_adsp: Add initial up_xtreme_adsp board Add initial board copying existing up_squared_adsp board and using CAVS1.8 SOC family. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 7 15:30:51 2020 +0300 soc: intel_adsp: Generalize bootloader Move bootloader to soc/xtensa/intel_adsp making it available for other boards. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:31:00 2020 +0100 boards: xtensa: up_squared: Add support for all CAVS Add boot support for all CAVS versions. TODO: needs to be made common Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:25:34 2020 +0100 soc: xtensa: intel_adsp: Manage cache for DMA descriptors Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 21:10:50 2020 +0100 soc: xtensa: adsp: use 24M567 clock Use audio clock Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 10:04:01 2020 +0100 xtensa: soc: adsp: enable system agent Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:03:07 2020 +0100 soc: xtensa: intel_adsp: increase mem pool to 192k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:02:31 2020 +0100 soc: xtensa: intel_adsp: re-enable DMA trace Buffer will be empty (as trace items sent to Zephyr LOG) but logic is running. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 11:18:55 2020 +0100 soc: xtensa: intel: dont use uncache region yet. Some code was still using this region. Use later. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 10:07:28 2020 +0100 soc: xtensa: intel_adsp: fix notifier init Topology now loads. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:18:38 2020 +0100 boards: up2: Need to use sof config for bootloader This will need uncoupled at some point. For testing today. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:16:38 2020 +0100 boards: up2: increase heap to 128k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:35:19 2020 +0300 boards: up_squared_adsp: Use bigger HEAP Use HEAP from old demo. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 16:06:32 2020 +0100 soc: xtensa: intel_adsp: Fix config.h naming collisions Rename sof version to sof-config.h Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:22:42 2020 +0300 Small cleanups Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 22:00:44 2020 +0300 tests: sof/audio: Test ll scheduler Add more tests for scheduler. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 18:38:35 2020 +0300 tests: Add first schedule test Add initial test for testing scheduling. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 29 13:36:23 2020 +0100 soc: xtensa: rmeove build warnings Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 18:04:33 2020 +0300 soc/intel_adsp: Register sof logging Register sof logging for tracing Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 14:16:55 2020 +0300 boards: up_squared_adsp: Define HEAP_MEM_POOL_SIZE Define HEAP_MEM_POOL_SIZE when SOF enabled. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 10:09:20 2020 +0300 tests: audio/sof: Add interrupt API for testing Add initial interrupt API for testing. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 15:54:28 2020 +0100 soc: xtensa: adsp: Update linker script for SOF sections. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 11:20:01 2020 +0100 soc: xtensa: adsp: send SOF FW metadata as boot message Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 26 21:47:20 2020 +0100 soc: xtensa: adsp: re-enable all SOF IP init. Do all SOF IP init. TODO: ATOMCTL, WFI on LX6 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sat Apr 25 15:30:40 2020 +0100 soc: xtensa: irq: Make sure IPC IRQ is registered. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 20:56:09 2020 +0300 tests: sof: Enable console Enable console for the test. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 17:57:22 2020 +0300 soc: cavs_v15: Fix XTENSA_KERNEL_CPU_PTR_SR Use correct value for XTENSA_KERNEL_CPU_PTR_SR. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 14:48:31 2020 +0300 tests: audio/sof: Add tests for alloc API testing Add initial tests for allocation API testing. Can be extended for other later. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 17:49:32 2020 +0300 logging: Enable xtensa simulator backend for ADSP Enable xtensa simulator backend for SOC_FAMILY_INTEL_ADSP. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 20:58:30 2020 +0100 soc: xtensa: add common cpu logic Support for additional cores. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 10:11:07 2020 +0300 Update west.yaml to point to the latest repo Update west.yaml Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:17:01 2020 +0100 soc: xtensa: cavs: Fix build for clk.c on cavs18+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:31 2020 +0100 soc: xtensa: cavs15: removed unused headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:09 2020 +0100 soc: xtensa: cavs25: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:52 2020 +0100 soc: xtensa: cavs20: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:09 2020 +0100 soc: xtensa: cavs18: Align with SOF headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 11:42:39 2020 +0100 west: sof: Updated to latest version. Now builds, links and runs SOF code (but not to FW ready). Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 19 13:28:53 2020 +0100 xtensa: intel adsp: build in SOF symbols if CONFIG_SOF Code now fully links against SOF. Needs to be run tested. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:19:28 2020 -0700 DO NOT MERGE: temporarily add thesoftproject as remote for sof module Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:33:40 2020 -0700 ipm: cavs_idc: use the IPC/IDC definitions in SoC The SoC definitions have the necessary IPC/IDC bits so there is no need to define them separately. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 14:30:20 2020 +0100 TODO: config: Use static config for SOF module. TODO: needs to be generated as part of SOF kconfig Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri Apr 10 21:56:07 2020 +0100 HACK: Add SOF into build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:55:15 2020 +0100 west: modules: Add SOF audio module. Add support for building SOF as a Zephyr module. This is the starting point for add SOF audio into Zephyr. Currently builds but does not use any symbols yet. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:48:48 2020 +0100 WIP soc: adsp-cavs15: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:43:44 2020 +0100 WIP soc: adsp-common: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:36:32 2020 +0000 WIP: soc: adsp-common: cache is common across all Intel ADSP platforms De-duplicate soc.h cache definitions. TODO: this needs done for other common functions. TODO: need to fix include path Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:43 2020 -0700 WIP: soc: cavs25: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:12 2020 -0700 WIP: soc: cavs20: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:06:40 2020 -0700 WIP: soc: cavs18: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 12:37:17 2020 -0700 soc: intel_adsp: use main_entry.S in common for cavs_v15 The files are identical anyway. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:38:14 2020 -0700 soc: intel_adsp/cavs_v15: link common code Let cavs_v15 link against the code compiled under common/. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 13:08:28 2020 +0000 WIP: soc: common: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:37:32 2020 +0000 WIP soc: adsp-cavs15: build power down support Build the power down support for CAVS1.5 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 12:40:17 2020 +0000 WIP: soc: cavs15: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:30:08 2020 +0000 soc: cavs15: Add missing SHIM registers. SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 9 15:43:01 2020 +0000 xtensa: intel_adsp/cavs_v15: fix usage of LP SRAM power gating Remove LSPGCTL as it can cause confusion, use SHIM_LSPGCTL instead. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Feb 26 15:28:48 2020 +0000 boards: up_squared_adsp: Use local xtensa HAL instead of SDK HAL SDK HAL is deprecated for Intel ADSP SoCs so fix and use local HAL module. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 10:45:15 2020 -0700 soc: add Intel Audio DSP SoC family This creates a SoC family for the audio DSPs on various Intel CPUs. The intel_apl_adsp is being moved into this family as well, since it is part of the CAVS v1.5 series of DSPs. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:29:02 2020 -0700 soc: xtensa: add CMakeLists.txt Add CMakeLists.txt under soc/xtensa so that CMakeLists.txt inside each SoC directory will be included, similar to what ARM and RISCV have. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:43 2020 -0700 Revert "boards: up_squared_adsp: Add flasher script" This reverts commit 80f295a9dd259f75f201c09abee849f1780efaff. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:32 2020 -0700 Revert "boards: up_squared_adsp: Update logtool tool" This reverts commit 7770d182c15b8173cade5804a0889b69291354d4. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:23 2020 -0700 Revert "soc: intel_adsp: Generalize bootloader" This reverts commit d6a33ef4677dddd7c76d4672ebec82352448c1d2. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> soc: xtensa; intel: remove sof-config.h - SQUASH No longer used. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-06-25 17:42:51 -07:00
#include <adsp/io.h>
soc/xtensa/intel_adsp: Upstream updates Significant rework of the Intel Audio DSP SoC/board layers. Includes code from the following upstream commits: Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 25 16:34:36 2020 +0100 xtesna: adsp: use 50k ticks per sec for audio Audio needs high resolution scheduling so schedule to nearest 20uS. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 24 13:59:01 2020 -0700 soc/xtensa/intel_adsp: Remove sof-config.h includes This header isn't used any more, and in any case shouldn't be included by SoC-layer Zephyr headers that need to be able to build without SOF. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat Jun 20 15:42:58 2020 -0700 soc/intel_adsp: Leave interrupts disabled at MP startup This had some code that was pasted in from esp32 that was inexplicably enabling interrupts when starting an auxiliary CPU. The original intent was that the resulting key would be passed down to the OS, but that's a legacy SMP mechanism and unused. What it actually did was SET the resulting value in PS.INTLEVEL, enabling interrupts globally before the CPU is ready to handle them. Just remove. The system doesn't need to enable interrupts until the entrance to the first user thread on this CPU, which will do it automatically as part of the context switch. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 13:57:54 2020 +0300 dts: intel_cavs: Add required label Add required label fixing build for CAVS15, 20, 25. Fixes following errors: ... devicetree error: 'label' is marked as required in 'properties:' in bindings/interrupt-controller/intel,cavs-intc.yaml, but does not appear in ... Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:19:56 2020 +0300 soc: cavs_v18: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:12:25 2020 +0300 soc: cavs_v20: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 14:59:23 2020 +0300 soc: cavs_v25: Remove dts_fixup fix build Remove unused now dts_fixup and fix build with the latest code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:29:06 2020 +0300 soc: intel_adsp: Remove unused functions Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:53:58 2020 +0300 soc: intel_adsp: Clean up soc.h Remove unused or duplicated definitions. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:02:23 2020 +0300 soc: intel_adsp: De-duplicate soc.h Move soc.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:54:19 2020 +0300 soc: intel_adsp: Remove duplicated io.h Move duplicated io.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:46 2020 +0300 cmake: Correct SOC_SERIES name for byt and bdw Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:02 2020 +0300 soc: intel_adsp: Build bootloader only for specific SOCs Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 11 13:46:25 2020 +0100 boards: xtensa: adsp: add byt and bdw boards WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 10 10:01:29 2020 -0700 soc/intel_adsp: Make the HDA timer the default always The CAVS_TIMER was originally written because the CCOUNT values are skewed between SMP CPUs, so it's the default when SMP=y. But really it should be the default always, the 19.2 MHz timer is plenty fast enough to be the Zephyr cycle timer, and it's rate is synchronized across the whole system (including the host CPU), making it a better choice for timing-sensitive applications. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:21:43 2020 +0300 soc: cavs_v25: Enable general samples build Enables general samples build for SOC cavs_v25. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:13:53 2020 +0300 soc: cavs_v20: Enable general samples build Enable general sample build. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:35:13 2020 +0300 soc: cavs_v18: Fix build general samples Fix building general samples for CAVS18. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:22:40 2020 +0300 soc: intel_adsp: Add support for other SOCs Support other SOCs in the "ready" message to the Host. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 13:25:39 2020 +0300 soc: intel_adsp: Move adsp.c to common SOC area Move adsp.c to common and clean makefiles. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 17:18:18 2020 +0300 boards: intel_adsp: Remove dependency on SOF Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 14:29:44 2020 +0100 soc: xtensa: cavs: build now good for cavs20 + 25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 15:57:01 2020 +0300 soc: cavs_v15: Fix build for hello_world Fix build for other then audio/sof targets. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:50:12 2020 +0300 sample: audio/sof: Remove old overlays Removing old overlays used to switch logging backend. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 15:02:01 2020 +0300 soc: intel_adsp: Correct TEXT area Correct HEADER_SPACE and put TEXT to: (HP_SRAM_WIN0_BASE + HP_SRAM_WIN0_SIZE + VECTOR_TBL_SIZE) Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:44:47 2020 +0300 soc: intel_adsp: Trivial syntax cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:41:07 2020 +0300 soc: intel_adsp: Fix bootloader script path Make it possible to find linker script if build is done not inside ZEPHYR_BASE. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 12:10:17 2020 +0100 soc: xtensa: cavs20/25: fix build with new headers - WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 13:35:38 2020 +0300 soc: intel_adsp: Fix include headers Fixes include headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 10:38:50 2020 +0100 soc: xtensa: cav18: updated headers- WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Fri May 1 15:29:26 2020 -0700 soc/xtensa/intel_adsp: Clean up MP config logic CONFIG_MP_NUM_CPUS is a platform value, indicating the number of CPUs for which the Zephyr image is built. This is the value kernel and device code should use to predicate questions like "is there more than one CPU?" CONFIG_SMP is an application tunable, controlling whether or not the kernel schedules threads on CPUs other than the first one. This is orthogonal to MP_NUM_CPUS: it's possible to build a "SMP" kernel on a uniprocessor system or have a UP kernel on a MP system if the other cores are used for non-thread application code. CONFIG_SCHED_IPI_SUPPORTED is a platform flag telling an SMP kernel whether or not it can synchronously signal other CPUs of scheduler state changes. It should be inspected only inside the scheduler (or other code that uses the API). This should be selected in kconfig by soc layer code, or by a driver that implements the feature. CONFIG_IPM_CAVS_IDC is a driver required to implement IPI on this platform. This is what we should use as a predicate if we have dependence on the IPM driver for a platform feature. These were all being sort of borged together in code. Split them up correctly, allowing the platform MP layer to be unit tested in the absence of SMP (c.f. tests/kernel/mp), and SMP kernels with only one CPU (which is pathlogical in practice, but also a very good unit test) to be built. Also removes some dead linker code for SMP-related sections that don't exist in Zephyr. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:41:55 2020 +0100 soc: xtensa: bootloader - use linker script Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:26:18 2020 +0100 soc: xtensa: further fix headers - WIP Simplify the directory structure, WIP for cavs20 and cavs25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 12:59:30 2020 +0300 soc: cavs_v15: Remove unneeded include Remove include fixing build. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Jun 7 12:37:35 2020 +0100 soc:xtensa: adsp: remove sof specific code from soc headers TODO: v1.8+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 23:19:37 2020 -0700 intel_adsp_*/doc: fix duplicate .rst labels Quick fix purely to make the build green again. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 22:34:40 2020 -0700 samples/audio/sof: use OVERLAY_CONFIG to import apollolake_defconfig This reverts commit 21f16b5b1d29fca83d1b62b1b75683b5a1bc2935 that copied it here instead. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 5 12:34:48 2020 +0300 soc: intel_adsp: Move soc_mp to common Moving soc_mp to common SOC area, it still needs fixes for taking number of cores from Zephyr Kconfig, etc. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 16:05:06 2020 +0300 soc: intel_adsp: Move memory.h from lib/ For those files from SOF referencing platform/lib/memory.h we have include. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 15:20:09 2020 +0300 soc: intel_adsp: Rename platform.h to soc.h Rename to prevent including it from SOF. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:47:55 2020 +0300 soc: intel_adsp: Move headers Move headers to more convenient place Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:21:51 2020 +0300 soc: intel_adsp: More SOC cleaning Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Mon Jun 1 15:31:34 2020 -0700 samples/audio/sof: import sof/src/arch/xtensa/ apollolake_defconfig Import modules/audio/sof/src/arch/xtensa/configs/apollolake_defconfig into prj.conf and new boards/up_squared_adsp.conf Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:07:40 2020 +0100 soc:xtensa: adsp: let SOF configure the DSP for audio Let SOF do this for the moment. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:06:20 2020 +0100 soc: xtensa: cavs: remove headers similar to cavs15 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 15:58:38 2020 +0300 soc: intel_adsp: Move ipc header to common Remove duplicated headers from CAVS to common SOC part Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 13:02:09 2020 +0300 soc: cavs_v15: Remove unneeded headers Remove also from CAVS15. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 18:34:11 2020 +0300 Remove more headers Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:12:09 2020 +0100 soc: xtensa: remove cavs sod headers for drivers and trace. Duplicate cavs15 headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:05:12 2020 +0100 samples: move sof dai, dma and clk configs to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 17:38:45 2020 +0300 soc: intel_adsp: Remove more duplicated headers Remove more headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 2 15:50:03 2020 +0100 samples: sof: remove pm realted files. Use the SOF versions. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 16:55:40 2020 +0300 WIP: Strip lib from include path WIP, pushed for sync Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:44:33 2020 +0300 soc: intel_adsp: Remove more headers Remove even more common headers Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:00:47 2020 +0300 soc: intel_adsp: Remove SOF headers The headers would be used by audio/sof app directly from SOF module. Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat May 30 11:01:26 2020 -0700 soc/intel_adsp: Alternative log reading script This script speaks the same protocol and works with the same firmware, but: * Is a single file with no dependencies outside the python3 standard library and can be run out-of-tree (i.e. with setups where the firmware is not built on the device under test) * Operates in "tail" mode, where it will continue polling for more output, making it easier to watch a running process and acting more like a conventional console device. * Has no dependence on the diag_driver kernel module (it reads the DSP SRAM memory directly from the BAR mapping in the PCI device) * Is MUCH smaller than the existing tool. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 28 16:17:51 2020 +0300 Decrease HEP pool size to 192000 Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:27:00 2020 +0100 soc: xtensa: cavs25: complete support for cavs25 Builds, not tested on qmeu due to missing SOF ROM (TODO) Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:24:26 2020 +0100 soc: xtensa: cavs20: complete cavs20 support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:22:13 2020 +0100 soc: xtensa: cavs18: complete boot support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:19:23 2020 +0100 soc: xtensa: cavs15: use cavs15 instead of apl as linker soc name Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:16:06 2020 +0100 TODO: samples: sof: work around missing trace symbols. Disable local trace. Needs trace updates finished before this can be removed. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:57:19 2020 +0100 dts: xtensa: rename apl to cavs15 DTS This DTS is used by more than APL SOC. i.e. all CAVS15 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:52:20 2020 +0100 west: commands: sign: Add signing support for other CAVS targets Sign for CAVS15, CAVS18, CAVS20 and CAVS25 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:50:07 2020 +0100 boards: xtensa: cavs: used Zephyr mask macro Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:49:46 2020 +0100 soc: xtensa: move code to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 26 11:40:36 2020 +0100 soc: xtensa: use SOF versions of clk Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:38:45 2020 +0300 soc: intel_adsp: Send FW ready for non SOF configuration Configure windows and send FW ready when used without SOF, should be loaded with fw_loader script. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:02:22 2020 +0300 soc: intel_adsp: Use SOF version of the file Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:47:27 2020 +0300 soc: intel_adsp: Clean up include headers Remove SOF mentions from the SOC headers. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:43:05 2020 +0300 soc: intel_adsp: Move SOF specific code to samples/audio/sof Move SOF specific code to the SOF sample. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:39:42 2020 +0300 soc: intel_adsp: Use SOF module's version of mem_window.c Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:36:41 2020 +0300 soc: intel_adsp: Use exact copy from SOF module Use SOF module verion of the clk.c Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 14:03:35 2020 +0300 soc: xtensa: Add {SOC_FAMILY}/common/include path Add ${SOC_DIR}/${ARCH}/${SOC_FAMILY}/common/include path if exist. Fixes issues for xtensa SOCs. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:18:50 2020 +0100 soc: xtensa: cavs common: fix headers for build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:10:57 2020 +0100 soc: xtensa: adsp: add so_inthandlers.h for Intel platforms Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:08:26 2020 +0100 cmake: xtensa: select correct compiler per CAVS target. TODO: what about XCC ? Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue May 19 14:59:26 2020 +0300 boards: up_squared_adsp: Move SOF configuration to samples Move SOF-specific configuration to samples/audio/sof prj. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 15 15:29:50 2020 +0300 soc: intel_adsp: Move SOF code to modules/audio/sof Move SOF dependent code out of SOC area. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 14 17:30:38 2020 +0300 Move task_main_start() to audio/sof sample Start task_main_start() from main of audio/sof sample. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed May 13 15:37:20 2020 +0300 Rename up_xtreme_adsp to intel_adsp_cavs18 Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Apr 27 14:12:59 2020 +0300 Add sample audio/sof for SOF initialization Add dedicated sample where we put SOF specific initialization. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 18:49:36 2020 +0300 WIP: soc: cavs_v18: Cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:44:06 2020 +0300 soc: cavs_v15: Move soc init to common part Moving SOC init to the right place. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:02:28 2020 +0300 soc: intel_adsp: Move common part to special dir Moving common part to common/adsp.c Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 8 14:37:50 2020 +0300 boards: up_xtreme_adsp: Add initial up_xtreme_adsp board Add initial board copying existing up_squared_adsp board and using CAVS1.8 SOC family. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 7 15:30:51 2020 +0300 soc: intel_adsp: Generalize bootloader Move bootloader to soc/xtensa/intel_adsp making it available for other boards. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:31:00 2020 +0100 boards: xtensa: up_squared: Add support for all CAVS Add boot support for all CAVS versions. TODO: needs to be made common Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:25:34 2020 +0100 soc: xtensa: intel_adsp: Manage cache for DMA descriptors Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 21:10:50 2020 +0100 soc: xtensa: adsp: use 24M567 clock Use audio clock Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 10:04:01 2020 +0100 xtensa: soc: adsp: enable system agent Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:03:07 2020 +0100 soc: xtensa: intel_adsp: increase mem pool to 192k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:02:31 2020 +0100 soc: xtensa: intel_adsp: re-enable DMA trace Buffer will be empty (as trace items sent to Zephyr LOG) but logic is running. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 11:18:55 2020 +0100 soc: xtensa: intel: dont use uncache region yet. Some code was still using this region. Use later. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 10:07:28 2020 +0100 soc: xtensa: intel_adsp: fix notifier init Topology now loads. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:18:38 2020 +0100 boards: up2: Need to use sof config for bootloader This will need uncoupled at some point. For testing today. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:16:38 2020 +0100 boards: up2: increase heap to 128k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:35:19 2020 +0300 boards: up_squared_adsp: Use bigger HEAP Use HEAP from old demo. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 16:06:32 2020 +0100 soc: xtensa: intel_adsp: Fix config.h naming collisions Rename sof version to sof-config.h Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:22:42 2020 +0300 Small cleanups Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 22:00:44 2020 +0300 tests: sof/audio: Test ll scheduler Add more tests for scheduler. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 18:38:35 2020 +0300 tests: Add first schedule test Add initial test for testing scheduling. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 29 13:36:23 2020 +0100 soc: xtensa: rmeove build warnings Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 18:04:33 2020 +0300 soc/intel_adsp: Register sof logging Register sof logging for tracing Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 14:16:55 2020 +0300 boards: up_squared_adsp: Define HEAP_MEM_POOL_SIZE Define HEAP_MEM_POOL_SIZE when SOF enabled. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 10:09:20 2020 +0300 tests: audio/sof: Add interrupt API for testing Add initial interrupt API for testing. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 15:54:28 2020 +0100 soc: xtensa: adsp: Update linker script for SOF sections. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 11:20:01 2020 +0100 soc: xtensa: adsp: send SOF FW metadata as boot message Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 26 21:47:20 2020 +0100 soc: xtensa: adsp: re-enable all SOF IP init. Do all SOF IP init. TODO: ATOMCTL, WFI on LX6 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sat Apr 25 15:30:40 2020 +0100 soc: xtensa: irq: Make sure IPC IRQ is registered. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 20:56:09 2020 +0300 tests: sof: Enable console Enable console for the test. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 17:57:22 2020 +0300 soc: cavs_v15: Fix XTENSA_KERNEL_CPU_PTR_SR Use correct value for XTENSA_KERNEL_CPU_PTR_SR. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 14:48:31 2020 +0300 tests: audio/sof: Add tests for alloc API testing Add initial tests for allocation API testing. Can be extended for other later. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 17:49:32 2020 +0300 logging: Enable xtensa simulator backend for ADSP Enable xtensa simulator backend for SOC_FAMILY_INTEL_ADSP. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 20:58:30 2020 +0100 soc: xtensa: add common cpu logic Support for additional cores. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 10:11:07 2020 +0300 Update west.yaml to point to the latest repo Update west.yaml Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:17:01 2020 +0100 soc: xtensa: cavs: Fix build for clk.c on cavs18+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:31 2020 +0100 soc: xtensa: cavs15: removed unused headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:09 2020 +0100 soc: xtensa: cavs25: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:52 2020 +0100 soc: xtensa: cavs20: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:09 2020 +0100 soc: xtensa: cavs18: Align with SOF headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 11:42:39 2020 +0100 west: sof: Updated to latest version. Now builds, links and runs SOF code (but not to FW ready). Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 19 13:28:53 2020 +0100 xtensa: intel adsp: build in SOF symbols if CONFIG_SOF Code now fully links against SOF. Needs to be run tested. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:19:28 2020 -0700 DO NOT MERGE: temporarily add thesoftproject as remote for sof module Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:33:40 2020 -0700 ipm: cavs_idc: use the IPC/IDC definitions in SoC The SoC definitions have the necessary IPC/IDC bits so there is no need to define them separately. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 14:30:20 2020 +0100 TODO: config: Use static config for SOF module. TODO: needs to be generated as part of SOF kconfig Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri Apr 10 21:56:07 2020 +0100 HACK: Add SOF into build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:55:15 2020 +0100 west: modules: Add SOF audio module. Add support for building SOF as a Zephyr module. This is the starting point for add SOF audio into Zephyr. Currently builds but does not use any symbols yet. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:48:48 2020 +0100 WIP soc: adsp-cavs15: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:43:44 2020 +0100 WIP soc: adsp-common: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:36:32 2020 +0000 WIP: soc: adsp-common: cache is common across all Intel ADSP platforms De-duplicate soc.h cache definitions. TODO: this needs done for other common functions. TODO: need to fix include path Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:43 2020 -0700 WIP: soc: cavs25: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:12 2020 -0700 WIP: soc: cavs20: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:06:40 2020 -0700 WIP: soc: cavs18: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 12:37:17 2020 -0700 soc: intel_adsp: use main_entry.S in common for cavs_v15 The files are identical anyway. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:38:14 2020 -0700 soc: intel_adsp/cavs_v15: link common code Let cavs_v15 link against the code compiled under common/. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 13:08:28 2020 +0000 WIP: soc: common: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:37:32 2020 +0000 WIP soc: adsp-cavs15: build power down support Build the power down support for CAVS1.5 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 12:40:17 2020 +0000 WIP: soc: cavs15: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:30:08 2020 +0000 soc: cavs15: Add missing SHIM registers. SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 9 15:43:01 2020 +0000 xtensa: intel_adsp/cavs_v15: fix usage of LP SRAM power gating Remove LSPGCTL as it can cause confusion, use SHIM_LSPGCTL instead. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Feb 26 15:28:48 2020 +0000 boards: up_squared_adsp: Use local xtensa HAL instead of SDK HAL SDK HAL is deprecated for Intel ADSP SoCs so fix and use local HAL module. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 10:45:15 2020 -0700 soc: add Intel Audio DSP SoC family This creates a SoC family for the audio DSPs on various Intel CPUs. The intel_apl_adsp is being moved into this family as well, since it is part of the CAVS v1.5 series of DSPs. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:29:02 2020 -0700 soc: xtensa: add CMakeLists.txt Add CMakeLists.txt under soc/xtensa so that CMakeLists.txt inside each SoC directory will be included, similar to what ARM and RISCV have. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:43 2020 -0700 Revert "boards: up_squared_adsp: Add flasher script" This reverts commit 80f295a9dd259f75f201c09abee849f1780efaff. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:32 2020 -0700 Revert "boards: up_squared_adsp: Update logtool tool" This reverts commit 7770d182c15b8173cade5804a0889b69291354d4. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:23 2020 -0700 Revert "soc: intel_adsp: Generalize bootloader" This reverts commit d6a33ef4677dddd7c76d4672ebec82352448c1d2. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> soc: xtensa; intel: remove sof-config.h - SQUASH No longer used. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-06-25 17:42:51 -07:00
#include <soc/shim.h>
#include <drivers/ipm.h>
#include <ipm/ipm_cavs_idc.h>
soc/xtensa/intel_adsp: Upstream updates Significant rework of the Intel Audio DSP SoC/board layers. Includes code from the following upstream commits: Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 25 16:34:36 2020 +0100 xtesna: adsp: use 50k ticks per sec for audio Audio needs high resolution scheduling so schedule to nearest 20uS. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 24 13:59:01 2020 -0700 soc/xtensa/intel_adsp: Remove sof-config.h includes This header isn't used any more, and in any case shouldn't be included by SoC-layer Zephyr headers that need to be able to build without SOF. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat Jun 20 15:42:58 2020 -0700 soc/intel_adsp: Leave interrupts disabled at MP startup This had some code that was pasted in from esp32 that was inexplicably enabling interrupts when starting an auxiliary CPU. The original intent was that the resulting key would be passed down to the OS, but that's a legacy SMP mechanism and unused. What it actually did was SET the resulting value in PS.INTLEVEL, enabling interrupts globally before the CPU is ready to handle them. Just remove. The system doesn't need to enable interrupts until the entrance to the first user thread on this CPU, which will do it automatically as part of the context switch. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 13:57:54 2020 +0300 dts: intel_cavs: Add required label Add required label fixing build for CAVS15, 20, 25. Fixes following errors: ... devicetree error: 'label' is marked as required in 'properties:' in bindings/interrupt-controller/intel,cavs-intc.yaml, but does not appear in ... Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:19:56 2020 +0300 soc: cavs_v18: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:12:25 2020 +0300 soc: cavs_v20: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 14:59:23 2020 +0300 soc: cavs_v25: Remove dts_fixup fix build Remove unused now dts_fixup and fix build with the latest code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:29:06 2020 +0300 soc: intel_adsp: Remove unused functions Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:53:58 2020 +0300 soc: intel_adsp: Clean up soc.h Remove unused or duplicated definitions. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:02:23 2020 +0300 soc: intel_adsp: De-duplicate soc.h Move soc.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:54:19 2020 +0300 soc: intel_adsp: Remove duplicated io.h Move duplicated io.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:46 2020 +0300 cmake: Correct SOC_SERIES name for byt and bdw Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:02 2020 +0300 soc: intel_adsp: Build bootloader only for specific SOCs Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 11 13:46:25 2020 +0100 boards: xtensa: adsp: add byt and bdw boards WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 10 10:01:29 2020 -0700 soc/intel_adsp: Make the HDA timer the default always The CAVS_TIMER was originally written because the CCOUNT values are skewed between SMP CPUs, so it's the default when SMP=y. But really it should be the default always, the 19.2 MHz timer is plenty fast enough to be the Zephyr cycle timer, and it's rate is synchronized across the whole system (including the host CPU), making it a better choice for timing-sensitive applications. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:21:43 2020 +0300 soc: cavs_v25: Enable general samples build Enables general samples build for SOC cavs_v25. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:13:53 2020 +0300 soc: cavs_v20: Enable general samples build Enable general sample build. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:35:13 2020 +0300 soc: cavs_v18: Fix build general samples Fix building general samples for CAVS18. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:22:40 2020 +0300 soc: intel_adsp: Add support for other SOCs Support other SOCs in the "ready" message to the Host. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 13:25:39 2020 +0300 soc: intel_adsp: Move adsp.c to common SOC area Move adsp.c to common and clean makefiles. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 17:18:18 2020 +0300 boards: intel_adsp: Remove dependency on SOF Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 14:29:44 2020 +0100 soc: xtensa: cavs: build now good for cavs20 + 25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 15:57:01 2020 +0300 soc: cavs_v15: Fix build for hello_world Fix build for other then audio/sof targets. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:50:12 2020 +0300 sample: audio/sof: Remove old overlays Removing old overlays used to switch logging backend. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 15:02:01 2020 +0300 soc: intel_adsp: Correct TEXT area Correct HEADER_SPACE and put TEXT to: (HP_SRAM_WIN0_BASE + HP_SRAM_WIN0_SIZE + VECTOR_TBL_SIZE) Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:44:47 2020 +0300 soc: intel_adsp: Trivial syntax cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:41:07 2020 +0300 soc: intel_adsp: Fix bootloader script path Make it possible to find linker script if build is done not inside ZEPHYR_BASE. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 12:10:17 2020 +0100 soc: xtensa: cavs20/25: fix build with new headers - WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 13:35:38 2020 +0300 soc: intel_adsp: Fix include headers Fixes include headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 10:38:50 2020 +0100 soc: xtensa: cav18: updated headers- WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Fri May 1 15:29:26 2020 -0700 soc/xtensa/intel_adsp: Clean up MP config logic CONFIG_MP_NUM_CPUS is a platform value, indicating the number of CPUs for which the Zephyr image is built. This is the value kernel and device code should use to predicate questions like "is there more than one CPU?" CONFIG_SMP is an application tunable, controlling whether or not the kernel schedules threads on CPUs other than the first one. This is orthogonal to MP_NUM_CPUS: it's possible to build a "SMP" kernel on a uniprocessor system or have a UP kernel on a MP system if the other cores are used for non-thread application code. CONFIG_SCHED_IPI_SUPPORTED is a platform flag telling an SMP kernel whether or not it can synchronously signal other CPUs of scheduler state changes. It should be inspected only inside the scheduler (or other code that uses the API). This should be selected in kconfig by soc layer code, or by a driver that implements the feature. CONFIG_IPM_CAVS_IDC is a driver required to implement IPI on this platform. This is what we should use as a predicate if we have dependence on the IPM driver for a platform feature. These were all being sort of borged together in code. Split them up correctly, allowing the platform MP layer to be unit tested in the absence of SMP (c.f. tests/kernel/mp), and SMP kernels with only one CPU (which is pathlogical in practice, but also a very good unit test) to be built. Also removes some dead linker code for SMP-related sections that don't exist in Zephyr. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:41:55 2020 +0100 soc: xtensa: bootloader - use linker script Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:26:18 2020 +0100 soc: xtensa: further fix headers - WIP Simplify the directory structure, WIP for cavs20 and cavs25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 12:59:30 2020 +0300 soc: cavs_v15: Remove unneeded include Remove include fixing build. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Jun 7 12:37:35 2020 +0100 soc:xtensa: adsp: remove sof specific code from soc headers TODO: v1.8+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 23:19:37 2020 -0700 intel_adsp_*/doc: fix duplicate .rst labels Quick fix purely to make the build green again. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 22:34:40 2020 -0700 samples/audio/sof: use OVERLAY_CONFIG to import apollolake_defconfig This reverts commit 21f16b5b1d29fca83d1b62b1b75683b5a1bc2935 that copied it here instead. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 5 12:34:48 2020 +0300 soc: intel_adsp: Move soc_mp to common Moving soc_mp to common SOC area, it still needs fixes for taking number of cores from Zephyr Kconfig, etc. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 16:05:06 2020 +0300 soc: intel_adsp: Move memory.h from lib/ For those files from SOF referencing platform/lib/memory.h we have include. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 15:20:09 2020 +0300 soc: intel_adsp: Rename platform.h to soc.h Rename to prevent including it from SOF. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:47:55 2020 +0300 soc: intel_adsp: Move headers Move headers to more convenient place Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:21:51 2020 +0300 soc: intel_adsp: More SOC cleaning Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Mon Jun 1 15:31:34 2020 -0700 samples/audio/sof: import sof/src/arch/xtensa/ apollolake_defconfig Import modules/audio/sof/src/arch/xtensa/configs/apollolake_defconfig into prj.conf and new boards/up_squared_adsp.conf Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:07:40 2020 +0100 soc:xtensa: adsp: let SOF configure the DSP for audio Let SOF do this for the moment. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:06:20 2020 +0100 soc: xtensa: cavs: remove headers similar to cavs15 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 15:58:38 2020 +0300 soc: intel_adsp: Move ipc header to common Remove duplicated headers from CAVS to common SOC part Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 13:02:09 2020 +0300 soc: cavs_v15: Remove unneeded headers Remove also from CAVS15. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 18:34:11 2020 +0300 Remove more headers Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:12:09 2020 +0100 soc: xtensa: remove cavs sod headers for drivers and trace. Duplicate cavs15 headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:05:12 2020 +0100 samples: move sof dai, dma and clk configs to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 17:38:45 2020 +0300 soc: intel_adsp: Remove more duplicated headers Remove more headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 2 15:50:03 2020 +0100 samples: sof: remove pm realted files. Use the SOF versions. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 16:55:40 2020 +0300 WIP: Strip lib from include path WIP, pushed for sync Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:44:33 2020 +0300 soc: intel_adsp: Remove more headers Remove even more common headers Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:00:47 2020 +0300 soc: intel_adsp: Remove SOF headers The headers would be used by audio/sof app directly from SOF module. Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat May 30 11:01:26 2020 -0700 soc/intel_adsp: Alternative log reading script This script speaks the same protocol and works with the same firmware, but: * Is a single file with no dependencies outside the python3 standard library and can be run out-of-tree (i.e. with setups where the firmware is not built on the device under test) * Operates in "tail" mode, where it will continue polling for more output, making it easier to watch a running process and acting more like a conventional console device. * Has no dependence on the diag_driver kernel module (it reads the DSP SRAM memory directly from the BAR mapping in the PCI device) * Is MUCH smaller than the existing tool. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 28 16:17:51 2020 +0300 Decrease HEP pool size to 192000 Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:27:00 2020 +0100 soc: xtensa: cavs25: complete support for cavs25 Builds, not tested on qmeu due to missing SOF ROM (TODO) Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:24:26 2020 +0100 soc: xtensa: cavs20: complete cavs20 support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:22:13 2020 +0100 soc: xtensa: cavs18: complete boot support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:19:23 2020 +0100 soc: xtensa: cavs15: use cavs15 instead of apl as linker soc name Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:16:06 2020 +0100 TODO: samples: sof: work around missing trace symbols. Disable local trace. Needs trace updates finished before this can be removed. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:57:19 2020 +0100 dts: xtensa: rename apl to cavs15 DTS This DTS is used by more than APL SOC. i.e. all CAVS15 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:52:20 2020 +0100 west: commands: sign: Add signing support for other CAVS targets Sign for CAVS15, CAVS18, CAVS20 and CAVS25 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:50:07 2020 +0100 boards: xtensa: cavs: used Zephyr mask macro Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:49:46 2020 +0100 soc: xtensa: move code to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 26 11:40:36 2020 +0100 soc: xtensa: use SOF versions of clk Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:38:45 2020 +0300 soc: intel_adsp: Send FW ready for non SOF configuration Configure windows and send FW ready when used without SOF, should be loaded with fw_loader script. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:02:22 2020 +0300 soc: intel_adsp: Use SOF version of the file Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:47:27 2020 +0300 soc: intel_adsp: Clean up include headers Remove SOF mentions from the SOC headers. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:43:05 2020 +0300 soc: intel_adsp: Move SOF specific code to samples/audio/sof Move SOF specific code to the SOF sample. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:39:42 2020 +0300 soc: intel_adsp: Use SOF module's version of mem_window.c Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:36:41 2020 +0300 soc: intel_adsp: Use exact copy from SOF module Use SOF module verion of the clk.c Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 14:03:35 2020 +0300 soc: xtensa: Add {SOC_FAMILY}/common/include path Add ${SOC_DIR}/${ARCH}/${SOC_FAMILY}/common/include path if exist. Fixes issues for xtensa SOCs. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:18:50 2020 +0100 soc: xtensa: cavs common: fix headers for build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:10:57 2020 +0100 soc: xtensa: adsp: add so_inthandlers.h for Intel platforms Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:08:26 2020 +0100 cmake: xtensa: select correct compiler per CAVS target. TODO: what about XCC ? Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue May 19 14:59:26 2020 +0300 boards: up_squared_adsp: Move SOF configuration to samples Move SOF-specific configuration to samples/audio/sof prj. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 15 15:29:50 2020 +0300 soc: intel_adsp: Move SOF code to modules/audio/sof Move SOF dependent code out of SOC area. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 14 17:30:38 2020 +0300 Move task_main_start() to audio/sof sample Start task_main_start() from main of audio/sof sample. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed May 13 15:37:20 2020 +0300 Rename up_xtreme_adsp to intel_adsp_cavs18 Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Apr 27 14:12:59 2020 +0300 Add sample audio/sof for SOF initialization Add dedicated sample where we put SOF specific initialization. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 18:49:36 2020 +0300 WIP: soc: cavs_v18: Cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:44:06 2020 +0300 soc: cavs_v15: Move soc init to common part Moving SOC init to the right place. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:02:28 2020 +0300 soc: intel_adsp: Move common part to special dir Moving common part to common/adsp.c Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 8 14:37:50 2020 +0300 boards: up_xtreme_adsp: Add initial up_xtreme_adsp board Add initial board copying existing up_squared_adsp board and using CAVS1.8 SOC family. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 7 15:30:51 2020 +0300 soc: intel_adsp: Generalize bootloader Move bootloader to soc/xtensa/intel_adsp making it available for other boards. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:31:00 2020 +0100 boards: xtensa: up_squared: Add support for all CAVS Add boot support for all CAVS versions. TODO: needs to be made common Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:25:34 2020 +0100 soc: xtensa: intel_adsp: Manage cache for DMA descriptors Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 21:10:50 2020 +0100 soc: xtensa: adsp: use 24M567 clock Use audio clock Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 10:04:01 2020 +0100 xtensa: soc: adsp: enable system agent Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:03:07 2020 +0100 soc: xtensa: intel_adsp: increase mem pool to 192k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:02:31 2020 +0100 soc: xtensa: intel_adsp: re-enable DMA trace Buffer will be empty (as trace items sent to Zephyr LOG) but logic is running. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 11:18:55 2020 +0100 soc: xtensa: intel: dont use uncache region yet. Some code was still using this region. Use later. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 10:07:28 2020 +0100 soc: xtensa: intel_adsp: fix notifier init Topology now loads. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:18:38 2020 +0100 boards: up2: Need to use sof config for bootloader This will need uncoupled at some point. For testing today. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:16:38 2020 +0100 boards: up2: increase heap to 128k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:35:19 2020 +0300 boards: up_squared_adsp: Use bigger HEAP Use HEAP from old demo. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 16:06:32 2020 +0100 soc: xtensa: intel_adsp: Fix config.h naming collisions Rename sof version to sof-config.h Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:22:42 2020 +0300 Small cleanups Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 22:00:44 2020 +0300 tests: sof/audio: Test ll scheduler Add more tests for scheduler. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 18:38:35 2020 +0300 tests: Add first schedule test Add initial test for testing scheduling. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 29 13:36:23 2020 +0100 soc: xtensa: rmeove build warnings Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 18:04:33 2020 +0300 soc/intel_adsp: Register sof logging Register sof logging for tracing Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 14:16:55 2020 +0300 boards: up_squared_adsp: Define HEAP_MEM_POOL_SIZE Define HEAP_MEM_POOL_SIZE when SOF enabled. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 10:09:20 2020 +0300 tests: audio/sof: Add interrupt API for testing Add initial interrupt API for testing. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 15:54:28 2020 +0100 soc: xtensa: adsp: Update linker script for SOF sections. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 11:20:01 2020 +0100 soc: xtensa: adsp: send SOF FW metadata as boot message Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 26 21:47:20 2020 +0100 soc: xtensa: adsp: re-enable all SOF IP init. Do all SOF IP init. TODO: ATOMCTL, WFI on LX6 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sat Apr 25 15:30:40 2020 +0100 soc: xtensa: irq: Make sure IPC IRQ is registered. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 20:56:09 2020 +0300 tests: sof: Enable console Enable console for the test. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 17:57:22 2020 +0300 soc: cavs_v15: Fix XTENSA_KERNEL_CPU_PTR_SR Use correct value for XTENSA_KERNEL_CPU_PTR_SR. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 14:48:31 2020 +0300 tests: audio/sof: Add tests for alloc API testing Add initial tests for allocation API testing. Can be extended for other later. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 17:49:32 2020 +0300 logging: Enable xtensa simulator backend for ADSP Enable xtensa simulator backend for SOC_FAMILY_INTEL_ADSP. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 20:58:30 2020 +0100 soc: xtensa: add common cpu logic Support for additional cores. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 10:11:07 2020 +0300 Update west.yaml to point to the latest repo Update west.yaml Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:17:01 2020 +0100 soc: xtensa: cavs: Fix build for clk.c on cavs18+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:31 2020 +0100 soc: xtensa: cavs15: removed unused headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:09 2020 +0100 soc: xtensa: cavs25: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:52 2020 +0100 soc: xtensa: cavs20: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:09 2020 +0100 soc: xtensa: cavs18: Align with SOF headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 11:42:39 2020 +0100 west: sof: Updated to latest version. Now builds, links and runs SOF code (but not to FW ready). Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 19 13:28:53 2020 +0100 xtensa: intel adsp: build in SOF symbols if CONFIG_SOF Code now fully links against SOF. Needs to be run tested. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:19:28 2020 -0700 DO NOT MERGE: temporarily add thesoftproject as remote for sof module Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:33:40 2020 -0700 ipm: cavs_idc: use the IPC/IDC definitions in SoC The SoC definitions have the necessary IPC/IDC bits so there is no need to define them separately. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 14:30:20 2020 +0100 TODO: config: Use static config for SOF module. TODO: needs to be generated as part of SOF kconfig Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri Apr 10 21:56:07 2020 +0100 HACK: Add SOF into build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:55:15 2020 +0100 west: modules: Add SOF audio module. Add support for building SOF as a Zephyr module. This is the starting point for add SOF audio into Zephyr. Currently builds but does not use any symbols yet. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:48:48 2020 +0100 WIP soc: adsp-cavs15: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:43:44 2020 +0100 WIP soc: adsp-common: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:36:32 2020 +0000 WIP: soc: adsp-common: cache is common across all Intel ADSP platforms De-duplicate soc.h cache definitions. TODO: this needs done for other common functions. TODO: need to fix include path Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:43 2020 -0700 WIP: soc: cavs25: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:12 2020 -0700 WIP: soc: cavs20: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:06:40 2020 -0700 WIP: soc: cavs18: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 12:37:17 2020 -0700 soc: intel_adsp: use main_entry.S in common for cavs_v15 The files are identical anyway. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:38:14 2020 -0700 soc: intel_adsp/cavs_v15: link common code Let cavs_v15 link against the code compiled under common/. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 13:08:28 2020 +0000 WIP: soc: common: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:37:32 2020 +0000 WIP soc: adsp-cavs15: build power down support Build the power down support for CAVS1.5 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 12:40:17 2020 +0000 WIP: soc: cavs15: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:30:08 2020 +0000 soc: cavs15: Add missing SHIM registers. SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 9 15:43:01 2020 +0000 xtensa: intel_adsp/cavs_v15: fix usage of LP SRAM power gating Remove LSPGCTL as it can cause confusion, use SHIM_LSPGCTL instead. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Feb 26 15:28:48 2020 +0000 boards: up_squared_adsp: Use local xtensa HAL instead of SDK HAL SDK HAL is deprecated for Intel ADSP SoCs so fix and use local HAL module. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 10:45:15 2020 -0700 soc: add Intel Audio DSP SoC family This creates a SoC family for the audio DSPs on various Intel CPUs. The intel_apl_adsp is being moved into this family as well, since it is part of the CAVS v1.5 series of DSPs. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:29:02 2020 -0700 soc: xtensa: add CMakeLists.txt Add CMakeLists.txt under soc/xtensa so that CMakeLists.txt inside each SoC directory will be included, similar to what ARM and RISCV have. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:43 2020 -0700 Revert "boards: up_squared_adsp: Add flasher script" This reverts commit 80f295a9dd259f75f201c09abee849f1780efaff. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:32 2020 -0700 Revert "boards: up_squared_adsp: Update logtool tool" This reverts commit 7770d182c15b8173cade5804a0889b69291354d4. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:23 2020 -0700 Revert "soc: intel_adsp: Generalize bootloader" This reverts commit d6a33ef4677dddd7c76d4672ebec82352448c1d2. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> soc: xtensa; intel: remove sof-config.h - SQUASH No longer used. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-06-25 17:42:51 -07:00
extern void z_sched_ipi(void);
/* ROM wake version parsed by ROM during core wake up. */
#define IDC_ROM_WAKE_VERSION 0x2
/* IDC message type. */
#define IDC_TYPE_SHIFT 24
#define IDC_TYPE_MASK 0x7f
#define IDC_TYPE(x) (((x) & IDC_TYPE_MASK) << IDC_TYPE_SHIFT)
/* IDC message header. */
#define IDC_HEADER_MASK 0xffffff
#define IDC_HEADER(x) ((x) & IDC_HEADER_MASK)
/* IDC message extension. */
#define IDC_EXTENSION_MASK 0x3fffffff
#define IDC_EXTENSION(x) ((x) & IDC_EXTENSION_MASK)
/* IDC power up message. */
#define IDC_MSG_POWER_UP \
(IDC_TYPE(0x1) | IDC_HEADER(IDC_ROM_WAKE_VERSION))
#define IDC_MSG_POWER_UP_EXT(x) IDC_EXTENSION((x) >> 2)
struct cpustart_rec {
uint32_t cpu;
arch_cpustart_t fn;
void *arg;
uint32_t vecbase;
uint32_t alive;
};
char *z_mp_stack_top;
#ifdef CONFIG_KERNEL_COHERENCE
/* Coherence guarantees that normal .data will be coherent and that it
* won't overlap any cached memory.
*/
static struct {
struct cpustart_rec cpustart;
} cpustart_mem;
#else
/* If .data RAM is by default incoherent, then the start record goes
* into its own dedicated cache line(s)
*/
static __aligned(XCHAL_DCACHE_LINESIZE) union {
struct cpustart_rec cpustart;
char pad[XCHAL_DCACHE_LINESIZE];
} cpustart_mem;
#endif
#define start_rec \
(*((volatile struct cpustart_rec *) \
z_soc_uncached_ptr(&cpustart_mem.cpustart)))
static uint32_t cpu_mask;
/* Simple array of CPUs that are active and available for an IPI. The
* IDC interrupt is ALSO used to bring a CPU out of reset, so we need
* to be absolutely sure we don't try to IPI a CPU that isn't ready to
* start, or else we'll launch it into garbage and crash the DSP.
*/
static bool cpus_active[CONFIG_MP_NUM_CPUS];
/* Tiny assembly stub for calling z_mp_entry() on the auxiliary CPUs.
* Mask interrupts, clear the register window state and set the stack
* pointer. This represents the minimum work required to run C code
* safely.
*
* Note that alignment is absolutely required: the IDC protocol passes
* only the upper 30 bits of the address to the second CPU.
*/
void z_soc_mp_asm_entry(void);
__asm__(".align 4 \n\t"
".global z_soc_mp_asm_entry \n\t"
"z_soc_mp_asm_entry: \n\t"
" movi a0, 0x40025 \n\t" /* WOE | UM | INTLEVEL(5) */
" wsr a0, PS \n\t"
" movi a0, 0 \n\t"
" wsr a0, WINDOWBASE \n\t"
" movi a0, 1 \n\t"
" wsr a0, WINDOWSTART \n\t"
" rsync \n\t"
" movi a1, z_mp_stack_top \n\t"
" l32i a1, a1, 0 \n\t"
" call4 z_mp_entry \n\t");
BUILD_ASSERT(XCHAL_EXCM_LEVEL == 5);
int cavs_idc_smp_init(const struct device *dev);
#define CxL1CCAP (*(volatile uint32_t *)0x9F080080)
#define CxL1CCFG (*(volatile uint32_t *)0x9F080084)
#define CxL1PCFG (*(volatile uint32_t *)0x9F080088)
/* "Data/Instruction Cache Memory Way Count" fields */
#define CxL1CCAP_DCMWC ((CxL1CCAP >> 16) & 7)
#define CxL1CCAP_ICMWC ((CxL1CCAP >> 20) & 7)
static ALWAYS_INLINE void enable_l1_cache(void)
{
uint32_t reg;
#ifdef CONFIG_SOC_SERIES_INTEL_CAVS_V25
/* First, on cAVS 2.5 we need to power the cache SRAM banks
* on! Write a bit for each cache way in the bottom half of
* the L1CCFG register and poll the top half for them to turn
* on.
*/
uint32_t dmask = BIT(CxL1CCAP_DCMWC) - 1;
uint32_t imask = BIT(CxL1CCAP_ICMWC) - 1;
uint32_t waymask = (imask << 8) | dmask;
CxL1CCFG = waymask;
while (((CxL1CCFG >> 16) & waymask) != waymask) {
}
/* Prefetcher also power gates, same interface */
CxL1PCFG = 1;
while ((CxL1PCFG & 0x10000) == 0) {
}
#endif
/* Now set up the Xtensa CPU to enable the cache logic. The
* details of the fields are somewhat complicated, but per the
* ISA ref: "Turning on caches at power-up usually consists of
* writing a constant with bits[31:8] all 1s to MEMCTL.".
* Also set bit 0 to enable the LOOP extension instruction
* fetch buffer.
*/
#ifdef XCHAL_HAVE_ICACHE_DYN_ENABLE
reg = 0xffffff01;
__asm__ volatile("wsr %0, MEMCTL; rsync" :: "r"(reg));
#endif
/* Likewise enable prefetching. Sadly these values are not
* architecturally defined by Xtensa (they're just documented
* as priority hints), so this constant is just copied from
* SOF for now. If we care about prefetch priority tuning
* we're supposed to ask Cadence I guess.
*/
reg = IS_ENABLED(CONFIG_SOC_SERIES_INTEL_CAVS_V25) ? 0x1038 : 0;
__asm__ volatile("wsr %0, PREFCTL; rsync" :: "r"(reg));
/* Finally we need to enable the cache in the Region
* Protection Option "TLB" entries. The hardware defaults
* have this set to RW/uncached (2) everywhere. We want
* writeback caching (4) in the sixth mapping (the second of
* two RAM mappings) and to mark all unused regions
* inaccessible (15) for safety. Note that there is a HAL
* routine that does this (by emulating the older "cacheattr"
* hardware register), but it generates significantly larger
* code.
*/
const uint8_t attribs[] = { 2, 15, 15, 15, 2, 4, 15, 15 };
for (int region = 0; region < 8; region++) {
reg = 0x20000000 * region;
__asm__ volatile("wdtlb %0, %1" :: "r"(attribs[region]), "r"(reg));
}
}
void z_mp_entry(void)
{
soc/xtensa/intel_adsp: Upstream updates Significant rework of the Intel Audio DSP SoC/board layers. Includes code from the following upstream commits: Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 25 16:34:36 2020 +0100 xtesna: adsp: use 50k ticks per sec for audio Audio needs high resolution scheduling so schedule to nearest 20uS. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 24 13:59:01 2020 -0700 soc/xtensa/intel_adsp: Remove sof-config.h includes This header isn't used any more, and in any case shouldn't be included by SoC-layer Zephyr headers that need to be able to build without SOF. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat Jun 20 15:42:58 2020 -0700 soc/intel_adsp: Leave interrupts disabled at MP startup This had some code that was pasted in from esp32 that was inexplicably enabling interrupts when starting an auxiliary CPU. The original intent was that the resulting key would be passed down to the OS, but that's a legacy SMP mechanism and unused. What it actually did was SET the resulting value in PS.INTLEVEL, enabling interrupts globally before the CPU is ready to handle them. Just remove. The system doesn't need to enable interrupts until the entrance to the first user thread on this CPU, which will do it automatically as part of the context switch. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 13:57:54 2020 +0300 dts: intel_cavs: Add required label Add required label fixing build for CAVS15, 20, 25. Fixes following errors: ... devicetree error: 'label' is marked as required in 'properties:' in bindings/interrupt-controller/intel,cavs-intc.yaml, but does not appear in ... Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:19:56 2020 +0300 soc: cavs_v18: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:12:25 2020 +0300 soc: cavs_v20: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 14:59:23 2020 +0300 soc: cavs_v25: Remove dts_fixup fix build Remove unused now dts_fixup and fix build with the latest code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:29:06 2020 +0300 soc: intel_adsp: Remove unused functions Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:53:58 2020 +0300 soc: intel_adsp: Clean up soc.h Remove unused or duplicated definitions. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:02:23 2020 +0300 soc: intel_adsp: De-duplicate soc.h Move soc.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:54:19 2020 +0300 soc: intel_adsp: Remove duplicated io.h Move duplicated io.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:46 2020 +0300 cmake: Correct SOC_SERIES name for byt and bdw Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:02 2020 +0300 soc: intel_adsp: Build bootloader only for specific SOCs Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 11 13:46:25 2020 +0100 boards: xtensa: adsp: add byt and bdw boards WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 10 10:01:29 2020 -0700 soc/intel_adsp: Make the HDA timer the default always The CAVS_TIMER was originally written because the CCOUNT values are skewed between SMP CPUs, so it's the default when SMP=y. But really it should be the default always, the 19.2 MHz timer is plenty fast enough to be the Zephyr cycle timer, and it's rate is synchronized across the whole system (including the host CPU), making it a better choice for timing-sensitive applications. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:21:43 2020 +0300 soc: cavs_v25: Enable general samples build Enables general samples build for SOC cavs_v25. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:13:53 2020 +0300 soc: cavs_v20: Enable general samples build Enable general sample build. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:35:13 2020 +0300 soc: cavs_v18: Fix build general samples Fix building general samples for CAVS18. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:22:40 2020 +0300 soc: intel_adsp: Add support for other SOCs Support other SOCs in the "ready" message to the Host. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 13:25:39 2020 +0300 soc: intel_adsp: Move adsp.c to common SOC area Move adsp.c to common and clean makefiles. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 17:18:18 2020 +0300 boards: intel_adsp: Remove dependency on SOF Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 14:29:44 2020 +0100 soc: xtensa: cavs: build now good for cavs20 + 25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 15:57:01 2020 +0300 soc: cavs_v15: Fix build for hello_world Fix build for other then audio/sof targets. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:50:12 2020 +0300 sample: audio/sof: Remove old overlays Removing old overlays used to switch logging backend. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 15:02:01 2020 +0300 soc: intel_adsp: Correct TEXT area Correct HEADER_SPACE and put TEXT to: (HP_SRAM_WIN0_BASE + HP_SRAM_WIN0_SIZE + VECTOR_TBL_SIZE) Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:44:47 2020 +0300 soc: intel_adsp: Trivial syntax cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:41:07 2020 +0300 soc: intel_adsp: Fix bootloader script path Make it possible to find linker script if build is done not inside ZEPHYR_BASE. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 12:10:17 2020 +0100 soc: xtensa: cavs20/25: fix build with new headers - WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 13:35:38 2020 +0300 soc: intel_adsp: Fix include headers Fixes include headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 10:38:50 2020 +0100 soc: xtensa: cav18: updated headers- WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Fri May 1 15:29:26 2020 -0700 soc/xtensa/intel_adsp: Clean up MP config logic CONFIG_MP_NUM_CPUS is a platform value, indicating the number of CPUs for which the Zephyr image is built. This is the value kernel and device code should use to predicate questions like "is there more than one CPU?" CONFIG_SMP is an application tunable, controlling whether or not the kernel schedules threads on CPUs other than the first one. This is orthogonal to MP_NUM_CPUS: it's possible to build a "SMP" kernel on a uniprocessor system or have a UP kernel on a MP system if the other cores are used for non-thread application code. CONFIG_SCHED_IPI_SUPPORTED is a platform flag telling an SMP kernel whether or not it can synchronously signal other CPUs of scheduler state changes. It should be inspected only inside the scheduler (or other code that uses the API). This should be selected in kconfig by soc layer code, or by a driver that implements the feature. CONFIG_IPM_CAVS_IDC is a driver required to implement IPI on this platform. This is what we should use as a predicate if we have dependence on the IPM driver for a platform feature. These were all being sort of borged together in code. Split them up correctly, allowing the platform MP layer to be unit tested in the absence of SMP (c.f. tests/kernel/mp), and SMP kernels with only one CPU (which is pathlogical in practice, but also a very good unit test) to be built. Also removes some dead linker code for SMP-related sections that don't exist in Zephyr. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:41:55 2020 +0100 soc: xtensa: bootloader - use linker script Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:26:18 2020 +0100 soc: xtensa: further fix headers - WIP Simplify the directory structure, WIP for cavs20 and cavs25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 12:59:30 2020 +0300 soc: cavs_v15: Remove unneeded include Remove include fixing build. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Jun 7 12:37:35 2020 +0100 soc:xtensa: adsp: remove sof specific code from soc headers TODO: v1.8+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 23:19:37 2020 -0700 intel_adsp_*/doc: fix duplicate .rst labels Quick fix purely to make the build green again. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 22:34:40 2020 -0700 samples/audio/sof: use OVERLAY_CONFIG to import apollolake_defconfig This reverts commit 21f16b5b1d29fca83d1b62b1b75683b5a1bc2935 that copied it here instead. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 5 12:34:48 2020 +0300 soc: intel_adsp: Move soc_mp to common Moving soc_mp to common SOC area, it still needs fixes for taking number of cores from Zephyr Kconfig, etc. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 16:05:06 2020 +0300 soc: intel_adsp: Move memory.h from lib/ For those files from SOF referencing platform/lib/memory.h we have include. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 15:20:09 2020 +0300 soc: intel_adsp: Rename platform.h to soc.h Rename to prevent including it from SOF. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:47:55 2020 +0300 soc: intel_adsp: Move headers Move headers to more convenient place Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:21:51 2020 +0300 soc: intel_adsp: More SOC cleaning Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Mon Jun 1 15:31:34 2020 -0700 samples/audio/sof: import sof/src/arch/xtensa/ apollolake_defconfig Import modules/audio/sof/src/arch/xtensa/configs/apollolake_defconfig into prj.conf and new boards/up_squared_adsp.conf Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:07:40 2020 +0100 soc:xtensa: adsp: let SOF configure the DSP for audio Let SOF do this for the moment. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:06:20 2020 +0100 soc: xtensa: cavs: remove headers similar to cavs15 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 15:58:38 2020 +0300 soc: intel_adsp: Move ipc header to common Remove duplicated headers from CAVS to common SOC part Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 13:02:09 2020 +0300 soc: cavs_v15: Remove unneeded headers Remove also from CAVS15. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 18:34:11 2020 +0300 Remove more headers Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:12:09 2020 +0100 soc: xtensa: remove cavs sod headers for drivers and trace. Duplicate cavs15 headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:05:12 2020 +0100 samples: move sof dai, dma and clk configs to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 17:38:45 2020 +0300 soc: intel_adsp: Remove more duplicated headers Remove more headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 2 15:50:03 2020 +0100 samples: sof: remove pm realted files. Use the SOF versions. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 16:55:40 2020 +0300 WIP: Strip lib from include path WIP, pushed for sync Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:44:33 2020 +0300 soc: intel_adsp: Remove more headers Remove even more common headers Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:00:47 2020 +0300 soc: intel_adsp: Remove SOF headers The headers would be used by audio/sof app directly from SOF module. Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat May 30 11:01:26 2020 -0700 soc/intel_adsp: Alternative log reading script This script speaks the same protocol and works with the same firmware, but: * Is a single file with no dependencies outside the python3 standard library and can be run out-of-tree (i.e. with setups where the firmware is not built on the device under test) * Operates in "tail" mode, where it will continue polling for more output, making it easier to watch a running process and acting more like a conventional console device. * Has no dependence on the diag_driver kernel module (it reads the DSP SRAM memory directly from the BAR mapping in the PCI device) * Is MUCH smaller than the existing tool. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 28 16:17:51 2020 +0300 Decrease HEP pool size to 192000 Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:27:00 2020 +0100 soc: xtensa: cavs25: complete support for cavs25 Builds, not tested on qmeu due to missing SOF ROM (TODO) Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:24:26 2020 +0100 soc: xtensa: cavs20: complete cavs20 support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:22:13 2020 +0100 soc: xtensa: cavs18: complete boot support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:19:23 2020 +0100 soc: xtensa: cavs15: use cavs15 instead of apl as linker soc name Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:16:06 2020 +0100 TODO: samples: sof: work around missing trace symbols. Disable local trace. Needs trace updates finished before this can be removed. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:57:19 2020 +0100 dts: xtensa: rename apl to cavs15 DTS This DTS is used by more than APL SOC. i.e. all CAVS15 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:52:20 2020 +0100 west: commands: sign: Add signing support for other CAVS targets Sign for CAVS15, CAVS18, CAVS20 and CAVS25 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:50:07 2020 +0100 boards: xtensa: cavs: used Zephyr mask macro Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:49:46 2020 +0100 soc: xtensa: move code to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 26 11:40:36 2020 +0100 soc: xtensa: use SOF versions of clk Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:38:45 2020 +0300 soc: intel_adsp: Send FW ready for non SOF configuration Configure windows and send FW ready when used without SOF, should be loaded with fw_loader script. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:02:22 2020 +0300 soc: intel_adsp: Use SOF version of the file Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:47:27 2020 +0300 soc: intel_adsp: Clean up include headers Remove SOF mentions from the SOC headers. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:43:05 2020 +0300 soc: intel_adsp: Move SOF specific code to samples/audio/sof Move SOF specific code to the SOF sample. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:39:42 2020 +0300 soc: intel_adsp: Use SOF module's version of mem_window.c Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:36:41 2020 +0300 soc: intel_adsp: Use exact copy from SOF module Use SOF module verion of the clk.c Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 14:03:35 2020 +0300 soc: xtensa: Add {SOC_FAMILY}/common/include path Add ${SOC_DIR}/${ARCH}/${SOC_FAMILY}/common/include path if exist. Fixes issues for xtensa SOCs. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:18:50 2020 +0100 soc: xtensa: cavs common: fix headers for build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:10:57 2020 +0100 soc: xtensa: adsp: add so_inthandlers.h for Intel platforms Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:08:26 2020 +0100 cmake: xtensa: select correct compiler per CAVS target. TODO: what about XCC ? Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue May 19 14:59:26 2020 +0300 boards: up_squared_adsp: Move SOF configuration to samples Move SOF-specific configuration to samples/audio/sof prj. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 15 15:29:50 2020 +0300 soc: intel_adsp: Move SOF code to modules/audio/sof Move SOF dependent code out of SOC area. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 14 17:30:38 2020 +0300 Move task_main_start() to audio/sof sample Start task_main_start() from main of audio/sof sample. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed May 13 15:37:20 2020 +0300 Rename up_xtreme_adsp to intel_adsp_cavs18 Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Apr 27 14:12:59 2020 +0300 Add sample audio/sof for SOF initialization Add dedicated sample where we put SOF specific initialization. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 18:49:36 2020 +0300 WIP: soc: cavs_v18: Cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:44:06 2020 +0300 soc: cavs_v15: Move soc init to common part Moving SOC init to the right place. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:02:28 2020 +0300 soc: intel_adsp: Move common part to special dir Moving common part to common/adsp.c Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 8 14:37:50 2020 +0300 boards: up_xtreme_adsp: Add initial up_xtreme_adsp board Add initial board copying existing up_squared_adsp board and using CAVS1.8 SOC family. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 7 15:30:51 2020 +0300 soc: intel_adsp: Generalize bootloader Move bootloader to soc/xtensa/intel_adsp making it available for other boards. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:31:00 2020 +0100 boards: xtensa: up_squared: Add support for all CAVS Add boot support for all CAVS versions. TODO: needs to be made common Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:25:34 2020 +0100 soc: xtensa: intel_adsp: Manage cache for DMA descriptors Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 21:10:50 2020 +0100 soc: xtensa: adsp: use 24M567 clock Use audio clock Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 10:04:01 2020 +0100 xtensa: soc: adsp: enable system agent Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:03:07 2020 +0100 soc: xtensa: intel_adsp: increase mem pool to 192k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:02:31 2020 +0100 soc: xtensa: intel_adsp: re-enable DMA trace Buffer will be empty (as trace items sent to Zephyr LOG) but logic is running. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 11:18:55 2020 +0100 soc: xtensa: intel: dont use uncache region yet. Some code was still using this region. Use later. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 10:07:28 2020 +0100 soc: xtensa: intel_adsp: fix notifier init Topology now loads. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:18:38 2020 +0100 boards: up2: Need to use sof config for bootloader This will need uncoupled at some point. For testing today. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:16:38 2020 +0100 boards: up2: increase heap to 128k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:35:19 2020 +0300 boards: up_squared_adsp: Use bigger HEAP Use HEAP from old demo. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 16:06:32 2020 +0100 soc: xtensa: intel_adsp: Fix config.h naming collisions Rename sof version to sof-config.h Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:22:42 2020 +0300 Small cleanups Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 22:00:44 2020 +0300 tests: sof/audio: Test ll scheduler Add more tests for scheduler. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 18:38:35 2020 +0300 tests: Add first schedule test Add initial test for testing scheduling. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 29 13:36:23 2020 +0100 soc: xtensa: rmeove build warnings Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 18:04:33 2020 +0300 soc/intel_adsp: Register sof logging Register sof logging for tracing Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 14:16:55 2020 +0300 boards: up_squared_adsp: Define HEAP_MEM_POOL_SIZE Define HEAP_MEM_POOL_SIZE when SOF enabled. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 10:09:20 2020 +0300 tests: audio/sof: Add interrupt API for testing Add initial interrupt API for testing. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 15:54:28 2020 +0100 soc: xtensa: adsp: Update linker script for SOF sections. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 11:20:01 2020 +0100 soc: xtensa: adsp: send SOF FW metadata as boot message Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 26 21:47:20 2020 +0100 soc: xtensa: adsp: re-enable all SOF IP init. Do all SOF IP init. TODO: ATOMCTL, WFI on LX6 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sat Apr 25 15:30:40 2020 +0100 soc: xtensa: irq: Make sure IPC IRQ is registered. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 20:56:09 2020 +0300 tests: sof: Enable console Enable console for the test. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 17:57:22 2020 +0300 soc: cavs_v15: Fix XTENSA_KERNEL_CPU_PTR_SR Use correct value for XTENSA_KERNEL_CPU_PTR_SR. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 14:48:31 2020 +0300 tests: audio/sof: Add tests for alloc API testing Add initial tests for allocation API testing. Can be extended for other later. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 17:49:32 2020 +0300 logging: Enable xtensa simulator backend for ADSP Enable xtensa simulator backend for SOC_FAMILY_INTEL_ADSP. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 20:58:30 2020 +0100 soc: xtensa: add common cpu logic Support for additional cores. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 10:11:07 2020 +0300 Update west.yaml to point to the latest repo Update west.yaml Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:17:01 2020 +0100 soc: xtensa: cavs: Fix build for clk.c on cavs18+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:31 2020 +0100 soc: xtensa: cavs15: removed unused headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:09 2020 +0100 soc: xtensa: cavs25: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:52 2020 +0100 soc: xtensa: cavs20: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:09 2020 +0100 soc: xtensa: cavs18: Align with SOF headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 11:42:39 2020 +0100 west: sof: Updated to latest version. Now builds, links and runs SOF code (but not to FW ready). Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 19 13:28:53 2020 +0100 xtensa: intel adsp: build in SOF symbols if CONFIG_SOF Code now fully links against SOF. Needs to be run tested. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:19:28 2020 -0700 DO NOT MERGE: temporarily add thesoftproject as remote for sof module Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:33:40 2020 -0700 ipm: cavs_idc: use the IPC/IDC definitions in SoC The SoC definitions have the necessary IPC/IDC bits so there is no need to define them separately. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 14:30:20 2020 +0100 TODO: config: Use static config for SOF module. TODO: needs to be generated as part of SOF kconfig Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri Apr 10 21:56:07 2020 +0100 HACK: Add SOF into build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:55:15 2020 +0100 west: modules: Add SOF audio module. Add support for building SOF as a Zephyr module. This is the starting point for add SOF audio into Zephyr. Currently builds but does not use any symbols yet. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:48:48 2020 +0100 WIP soc: adsp-cavs15: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:43:44 2020 +0100 WIP soc: adsp-common: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:36:32 2020 +0000 WIP: soc: adsp-common: cache is common across all Intel ADSP platforms De-duplicate soc.h cache definitions. TODO: this needs done for other common functions. TODO: need to fix include path Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:43 2020 -0700 WIP: soc: cavs25: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:12 2020 -0700 WIP: soc: cavs20: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:06:40 2020 -0700 WIP: soc: cavs18: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 12:37:17 2020 -0700 soc: intel_adsp: use main_entry.S in common for cavs_v15 The files are identical anyway. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:38:14 2020 -0700 soc: intel_adsp/cavs_v15: link common code Let cavs_v15 link against the code compiled under common/. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 13:08:28 2020 +0000 WIP: soc: common: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:37:32 2020 +0000 WIP soc: adsp-cavs15: build power down support Build the power down support for CAVS1.5 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 12:40:17 2020 +0000 WIP: soc: cavs15: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:30:08 2020 +0000 soc: cavs15: Add missing SHIM registers. SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 9 15:43:01 2020 +0000 xtensa: intel_adsp/cavs_v15: fix usage of LP SRAM power gating Remove LSPGCTL as it can cause confusion, use SHIM_LSPGCTL instead. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Feb 26 15:28:48 2020 +0000 boards: up_squared_adsp: Use local xtensa HAL instead of SDK HAL SDK HAL is deprecated for Intel ADSP SoCs so fix and use local HAL module. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 10:45:15 2020 -0700 soc: add Intel Audio DSP SoC family This creates a SoC family for the audio DSPs on various Intel CPUs. The intel_apl_adsp is being moved into this family as well, since it is part of the CAVS v1.5 series of DSPs. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:29:02 2020 -0700 soc: xtensa: add CMakeLists.txt Add CMakeLists.txt under soc/xtensa so that CMakeLists.txt inside each SoC directory will be included, similar to what ARM and RISCV have. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:43 2020 -0700 Revert "boards: up_squared_adsp: Add flasher script" This reverts commit 80f295a9dd259f75f201c09abee849f1780efaff. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:32 2020 -0700 Revert "boards: up_squared_adsp: Update logtool tool" This reverts commit 7770d182c15b8173cade5804a0889b69291354d4. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:23 2020 -0700 Revert "soc: intel_adsp: Generalize bootloader" This reverts commit d6a33ef4677dddd7c76d4672ebec82352448c1d2. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> soc: xtensa; intel: remove sof-config.h - SQUASH No longer used. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-06-25 17:42:51 -07:00
volatile int ie;
uint32_t reg;
enable_l1_cache();
/* Fix ATOMCTL to match CPU0. Hardware defaults for S32C1I
* use internal operations (and are thus presumably atomic
* only WRT the local CPU!). We need external transactions on
* the shared bus.
*/
reg = 0x15;
__asm__ volatile("wsr %0, ATOMCTL" :: "r"(reg));
/* We don't know what the boot ROM (on pre-2.5 DSPs) might
* have touched and we don't care. Make sure it's not in our
* local cache to be flushed accidentally later.
*
* Note that technically this is dropping our own (cached)
* stack memory, which we don't have a guarantee the compiler
* isn't using yet. Manual inspection of generated code says
* we're safe, but really we need a better solution here.
*/
#ifndef CONFIG_SOC_SERIES_INTEL_CAVS_V25
z_xtensa_cache_flush_inv_all();
#endif
/* Copy over VECBASE from the main CPU for an initial value
* (will need to revisit this if we ever allow a user API to
soc/xtensa/intel_adsp: Upstream updates Significant rework of the Intel Audio DSP SoC/board layers. Includes code from the following upstream commits: Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 25 16:34:36 2020 +0100 xtesna: adsp: use 50k ticks per sec for audio Audio needs high resolution scheduling so schedule to nearest 20uS. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 24 13:59:01 2020 -0700 soc/xtensa/intel_adsp: Remove sof-config.h includes This header isn't used any more, and in any case shouldn't be included by SoC-layer Zephyr headers that need to be able to build without SOF. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat Jun 20 15:42:58 2020 -0700 soc/intel_adsp: Leave interrupts disabled at MP startup This had some code that was pasted in from esp32 that was inexplicably enabling interrupts when starting an auxiliary CPU. The original intent was that the resulting key would be passed down to the OS, but that's a legacy SMP mechanism and unused. What it actually did was SET the resulting value in PS.INTLEVEL, enabling interrupts globally before the CPU is ready to handle them. Just remove. The system doesn't need to enable interrupts until the entrance to the first user thread on this CPU, which will do it automatically as part of the context switch. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 13:57:54 2020 +0300 dts: intel_cavs: Add required label Add required label fixing build for CAVS15, 20, 25. Fixes following errors: ... devicetree error: 'label' is marked as required in 'properties:' in bindings/interrupt-controller/intel,cavs-intc.yaml, but does not appear in ... Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:19:56 2020 +0300 soc: cavs_v18: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:12:25 2020 +0300 soc: cavs_v20: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 14:59:23 2020 +0300 soc: cavs_v25: Remove dts_fixup fix build Remove unused now dts_fixup and fix build with the latest code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:29:06 2020 +0300 soc: intel_adsp: Remove unused functions Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:53:58 2020 +0300 soc: intel_adsp: Clean up soc.h Remove unused or duplicated definitions. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:02:23 2020 +0300 soc: intel_adsp: De-duplicate soc.h Move soc.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:54:19 2020 +0300 soc: intel_adsp: Remove duplicated io.h Move duplicated io.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:46 2020 +0300 cmake: Correct SOC_SERIES name for byt and bdw Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:02 2020 +0300 soc: intel_adsp: Build bootloader only for specific SOCs Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 11 13:46:25 2020 +0100 boards: xtensa: adsp: add byt and bdw boards WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 10 10:01:29 2020 -0700 soc/intel_adsp: Make the HDA timer the default always The CAVS_TIMER was originally written because the CCOUNT values are skewed between SMP CPUs, so it's the default when SMP=y. But really it should be the default always, the 19.2 MHz timer is plenty fast enough to be the Zephyr cycle timer, and it's rate is synchronized across the whole system (including the host CPU), making it a better choice for timing-sensitive applications. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:21:43 2020 +0300 soc: cavs_v25: Enable general samples build Enables general samples build for SOC cavs_v25. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:13:53 2020 +0300 soc: cavs_v20: Enable general samples build Enable general sample build. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:35:13 2020 +0300 soc: cavs_v18: Fix build general samples Fix building general samples for CAVS18. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:22:40 2020 +0300 soc: intel_adsp: Add support for other SOCs Support other SOCs in the "ready" message to the Host. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 13:25:39 2020 +0300 soc: intel_adsp: Move adsp.c to common SOC area Move adsp.c to common and clean makefiles. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 17:18:18 2020 +0300 boards: intel_adsp: Remove dependency on SOF Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 14:29:44 2020 +0100 soc: xtensa: cavs: build now good for cavs20 + 25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 15:57:01 2020 +0300 soc: cavs_v15: Fix build for hello_world Fix build for other then audio/sof targets. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:50:12 2020 +0300 sample: audio/sof: Remove old overlays Removing old overlays used to switch logging backend. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 15:02:01 2020 +0300 soc: intel_adsp: Correct TEXT area Correct HEADER_SPACE and put TEXT to: (HP_SRAM_WIN0_BASE + HP_SRAM_WIN0_SIZE + VECTOR_TBL_SIZE) Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:44:47 2020 +0300 soc: intel_adsp: Trivial syntax cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:41:07 2020 +0300 soc: intel_adsp: Fix bootloader script path Make it possible to find linker script if build is done not inside ZEPHYR_BASE. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 12:10:17 2020 +0100 soc: xtensa: cavs20/25: fix build with new headers - WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 13:35:38 2020 +0300 soc: intel_adsp: Fix include headers Fixes include headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 10:38:50 2020 +0100 soc: xtensa: cav18: updated headers- WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Fri May 1 15:29:26 2020 -0700 soc/xtensa/intel_adsp: Clean up MP config logic CONFIG_MP_NUM_CPUS is a platform value, indicating the number of CPUs for which the Zephyr image is built. This is the value kernel and device code should use to predicate questions like "is there more than one CPU?" CONFIG_SMP is an application tunable, controlling whether or not the kernel schedules threads on CPUs other than the first one. This is orthogonal to MP_NUM_CPUS: it's possible to build a "SMP" kernel on a uniprocessor system or have a UP kernel on a MP system if the other cores are used for non-thread application code. CONFIG_SCHED_IPI_SUPPORTED is a platform flag telling an SMP kernel whether or not it can synchronously signal other CPUs of scheduler state changes. It should be inspected only inside the scheduler (or other code that uses the API). This should be selected in kconfig by soc layer code, or by a driver that implements the feature. CONFIG_IPM_CAVS_IDC is a driver required to implement IPI on this platform. This is what we should use as a predicate if we have dependence on the IPM driver for a platform feature. These were all being sort of borged together in code. Split them up correctly, allowing the platform MP layer to be unit tested in the absence of SMP (c.f. tests/kernel/mp), and SMP kernels with only one CPU (which is pathlogical in practice, but also a very good unit test) to be built. Also removes some dead linker code for SMP-related sections that don't exist in Zephyr. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:41:55 2020 +0100 soc: xtensa: bootloader - use linker script Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:26:18 2020 +0100 soc: xtensa: further fix headers - WIP Simplify the directory structure, WIP for cavs20 and cavs25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 12:59:30 2020 +0300 soc: cavs_v15: Remove unneeded include Remove include fixing build. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Jun 7 12:37:35 2020 +0100 soc:xtensa: adsp: remove sof specific code from soc headers TODO: v1.8+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 23:19:37 2020 -0700 intel_adsp_*/doc: fix duplicate .rst labels Quick fix purely to make the build green again. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 22:34:40 2020 -0700 samples/audio/sof: use OVERLAY_CONFIG to import apollolake_defconfig This reverts commit 21f16b5b1d29fca83d1b62b1b75683b5a1bc2935 that copied it here instead. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 5 12:34:48 2020 +0300 soc: intel_adsp: Move soc_mp to common Moving soc_mp to common SOC area, it still needs fixes for taking number of cores from Zephyr Kconfig, etc. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 16:05:06 2020 +0300 soc: intel_adsp: Move memory.h from lib/ For those files from SOF referencing platform/lib/memory.h we have include. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 15:20:09 2020 +0300 soc: intel_adsp: Rename platform.h to soc.h Rename to prevent including it from SOF. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:47:55 2020 +0300 soc: intel_adsp: Move headers Move headers to more convenient place Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:21:51 2020 +0300 soc: intel_adsp: More SOC cleaning Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Mon Jun 1 15:31:34 2020 -0700 samples/audio/sof: import sof/src/arch/xtensa/ apollolake_defconfig Import modules/audio/sof/src/arch/xtensa/configs/apollolake_defconfig into prj.conf and new boards/up_squared_adsp.conf Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:07:40 2020 +0100 soc:xtensa: adsp: let SOF configure the DSP for audio Let SOF do this for the moment. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:06:20 2020 +0100 soc: xtensa: cavs: remove headers similar to cavs15 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 15:58:38 2020 +0300 soc: intel_adsp: Move ipc header to common Remove duplicated headers from CAVS to common SOC part Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 13:02:09 2020 +0300 soc: cavs_v15: Remove unneeded headers Remove also from CAVS15. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 18:34:11 2020 +0300 Remove more headers Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:12:09 2020 +0100 soc: xtensa: remove cavs sod headers for drivers and trace. Duplicate cavs15 headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:05:12 2020 +0100 samples: move sof dai, dma and clk configs to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 17:38:45 2020 +0300 soc: intel_adsp: Remove more duplicated headers Remove more headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 2 15:50:03 2020 +0100 samples: sof: remove pm realted files. Use the SOF versions. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 16:55:40 2020 +0300 WIP: Strip lib from include path WIP, pushed for sync Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:44:33 2020 +0300 soc: intel_adsp: Remove more headers Remove even more common headers Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:00:47 2020 +0300 soc: intel_adsp: Remove SOF headers The headers would be used by audio/sof app directly from SOF module. Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat May 30 11:01:26 2020 -0700 soc/intel_adsp: Alternative log reading script This script speaks the same protocol and works with the same firmware, but: * Is a single file with no dependencies outside the python3 standard library and can be run out-of-tree (i.e. with setups where the firmware is not built on the device under test) * Operates in "tail" mode, where it will continue polling for more output, making it easier to watch a running process and acting more like a conventional console device. * Has no dependence on the diag_driver kernel module (it reads the DSP SRAM memory directly from the BAR mapping in the PCI device) * Is MUCH smaller than the existing tool. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 28 16:17:51 2020 +0300 Decrease HEP pool size to 192000 Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:27:00 2020 +0100 soc: xtensa: cavs25: complete support for cavs25 Builds, not tested on qmeu due to missing SOF ROM (TODO) Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:24:26 2020 +0100 soc: xtensa: cavs20: complete cavs20 support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:22:13 2020 +0100 soc: xtensa: cavs18: complete boot support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:19:23 2020 +0100 soc: xtensa: cavs15: use cavs15 instead of apl as linker soc name Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:16:06 2020 +0100 TODO: samples: sof: work around missing trace symbols. Disable local trace. Needs trace updates finished before this can be removed. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:57:19 2020 +0100 dts: xtensa: rename apl to cavs15 DTS This DTS is used by more than APL SOC. i.e. all CAVS15 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:52:20 2020 +0100 west: commands: sign: Add signing support for other CAVS targets Sign for CAVS15, CAVS18, CAVS20 and CAVS25 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:50:07 2020 +0100 boards: xtensa: cavs: used Zephyr mask macro Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:49:46 2020 +0100 soc: xtensa: move code to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 26 11:40:36 2020 +0100 soc: xtensa: use SOF versions of clk Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:38:45 2020 +0300 soc: intel_adsp: Send FW ready for non SOF configuration Configure windows and send FW ready when used without SOF, should be loaded with fw_loader script. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:02:22 2020 +0300 soc: intel_adsp: Use SOF version of the file Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:47:27 2020 +0300 soc: intel_adsp: Clean up include headers Remove SOF mentions from the SOC headers. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:43:05 2020 +0300 soc: intel_adsp: Move SOF specific code to samples/audio/sof Move SOF specific code to the SOF sample. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:39:42 2020 +0300 soc: intel_adsp: Use SOF module's version of mem_window.c Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:36:41 2020 +0300 soc: intel_adsp: Use exact copy from SOF module Use SOF module verion of the clk.c Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 14:03:35 2020 +0300 soc: xtensa: Add {SOC_FAMILY}/common/include path Add ${SOC_DIR}/${ARCH}/${SOC_FAMILY}/common/include path if exist. Fixes issues for xtensa SOCs. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:18:50 2020 +0100 soc: xtensa: cavs common: fix headers for build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:10:57 2020 +0100 soc: xtensa: adsp: add so_inthandlers.h for Intel platforms Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:08:26 2020 +0100 cmake: xtensa: select correct compiler per CAVS target. TODO: what about XCC ? Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue May 19 14:59:26 2020 +0300 boards: up_squared_adsp: Move SOF configuration to samples Move SOF-specific configuration to samples/audio/sof prj. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 15 15:29:50 2020 +0300 soc: intel_adsp: Move SOF code to modules/audio/sof Move SOF dependent code out of SOC area. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 14 17:30:38 2020 +0300 Move task_main_start() to audio/sof sample Start task_main_start() from main of audio/sof sample. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed May 13 15:37:20 2020 +0300 Rename up_xtreme_adsp to intel_adsp_cavs18 Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Apr 27 14:12:59 2020 +0300 Add sample audio/sof for SOF initialization Add dedicated sample where we put SOF specific initialization. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 18:49:36 2020 +0300 WIP: soc: cavs_v18: Cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:44:06 2020 +0300 soc: cavs_v15: Move soc init to common part Moving SOC init to the right place. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:02:28 2020 +0300 soc: intel_adsp: Move common part to special dir Moving common part to common/adsp.c Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 8 14:37:50 2020 +0300 boards: up_xtreme_adsp: Add initial up_xtreme_adsp board Add initial board copying existing up_squared_adsp board and using CAVS1.8 SOC family. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 7 15:30:51 2020 +0300 soc: intel_adsp: Generalize bootloader Move bootloader to soc/xtensa/intel_adsp making it available for other boards. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:31:00 2020 +0100 boards: xtensa: up_squared: Add support for all CAVS Add boot support for all CAVS versions. TODO: needs to be made common Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:25:34 2020 +0100 soc: xtensa: intel_adsp: Manage cache for DMA descriptors Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 21:10:50 2020 +0100 soc: xtensa: adsp: use 24M567 clock Use audio clock Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 10:04:01 2020 +0100 xtensa: soc: adsp: enable system agent Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:03:07 2020 +0100 soc: xtensa: intel_adsp: increase mem pool to 192k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:02:31 2020 +0100 soc: xtensa: intel_adsp: re-enable DMA trace Buffer will be empty (as trace items sent to Zephyr LOG) but logic is running. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 11:18:55 2020 +0100 soc: xtensa: intel: dont use uncache region yet. Some code was still using this region. Use later. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 10:07:28 2020 +0100 soc: xtensa: intel_adsp: fix notifier init Topology now loads. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:18:38 2020 +0100 boards: up2: Need to use sof config for bootloader This will need uncoupled at some point. For testing today. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:16:38 2020 +0100 boards: up2: increase heap to 128k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:35:19 2020 +0300 boards: up_squared_adsp: Use bigger HEAP Use HEAP from old demo. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 16:06:32 2020 +0100 soc: xtensa: intel_adsp: Fix config.h naming collisions Rename sof version to sof-config.h Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:22:42 2020 +0300 Small cleanups Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 22:00:44 2020 +0300 tests: sof/audio: Test ll scheduler Add more tests for scheduler. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 18:38:35 2020 +0300 tests: Add first schedule test Add initial test for testing scheduling. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 29 13:36:23 2020 +0100 soc: xtensa: rmeove build warnings Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 18:04:33 2020 +0300 soc/intel_adsp: Register sof logging Register sof logging for tracing Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 14:16:55 2020 +0300 boards: up_squared_adsp: Define HEAP_MEM_POOL_SIZE Define HEAP_MEM_POOL_SIZE when SOF enabled. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 10:09:20 2020 +0300 tests: audio/sof: Add interrupt API for testing Add initial interrupt API for testing. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 15:54:28 2020 +0100 soc: xtensa: adsp: Update linker script for SOF sections. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 11:20:01 2020 +0100 soc: xtensa: adsp: send SOF FW metadata as boot message Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 26 21:47:20 2020 +0100 soc: xtensa: adsp: re-enable all SOF IP init. Do all SOF IP init. TODO: ATOMCTL, WFI on LX6 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sat Apr 25 15:30:40 2020 +0100 soc: xtensa: irq: Make sure IPC IRQ is registered. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 20:56:09 2020 +0300 tests: sof: Enable console Enable console for the test. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 17:57:22 2020 +0300 soc: cavs_v15: Fix XTENSA_KERNEL_CPU_PTR_SR Use correct value for XTENSA_KERNEL_CPU_PTR_SR. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 14:48:31 2020 +0300 tests: audio/sof: Add tests for alloc API testing Add initial tests for allocation API testing. Can be extended for other later. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 17:49:32 2020 +0300 logging: Enable xtensa simulator backend for ADSP Enable xtensa simulator backend for SOC_FAMILY_INTEL_ADSP. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 20:58:30 2020 +0100 soc: xtensa: add common cpu logic Support for additional cores. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 10:11:07 2020 +0300 Update west.yaml to point to the latest repo Update west.yaml Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:17:01 2020 +0100 soc: xtensa: cavs: Fix build for clk.c on cavs18+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:31 2020 +0100 soc: xtensa: cavs15: removed unused headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:09 2020 +0100 soc: xtensa: cavs25: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:52 2020 +0100 soc: xtensa: cavs20: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:09 2020 +0100 soc: xtensa: cavs18: Align with SOF headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 11:42:39 2020 +0100 west: sof: Updated to latest version. Now builds, links and runs SOF code (but not to FW ready). Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 19 13:28:53 2020 +0100 xtensa: intel adsp: build in SOF symbols if CONFIG_SOF Code now fully links against SOF. Needs to be run tested. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:19:28 2020 -0700 DO NOT MERGE: temporarily add thesoftproject as remote for sof module Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:33:40 2020 -0700 ipm: cavs_idc: use the IPC/IDC definitions in SoC The SoC definitions have the necessary IPC/IDC bits so there is no need to define them separately. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 14:30:20 2020 +0100 TODO: config: Use static config for SOF module. TODO: needs to be generated as part of SOF kconfig Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri Apr 10 21:56:07 2020 +0100 HACK: Add SOF into build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:55:15 2020 +0100 west: modules: Add SOF audio module. Add support for building SOF as a Zephyr module. This is the starting point for add SOF audio into Zephyr. Currently builds but does not use any symbols yet. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:48:48 2020 +0100 WIP soc: adsp-cavs15: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:43:44 2020 +0100 WIP soc: adsp-common: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:36:32 2020 +0000 WIP: soc: adsp-common: cache is common across all Intel ADSP platforms De-duplicate soc.h cache definitions. TODO: this needs done for other common functions. TODO: need to fix include path Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:43 2020 -0700 WIP: soc: cavs25: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:12 2020 -0700 WIP: soc: cavs20: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:06:40 2020 -0700 WIP: soc: cavs18: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 12:37:17 2020 -0700 soc: intel_adsp: use main_entry.S in common for cavs_v15 The files are identical anyway. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:38:14 2020 -0700 soc: intel_adsp/cavs_v15: link common code Let cavs_v15 link against the code compiled under common/. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 13:08:28 2020 +0000 WIP: soc: common: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:37:32 2020 +0000 WIP soc: adsp-cavs15: build power down support Build the power down support for CAVS1.5 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 12:40:17 2020 +0000 WIP: soc: cavs15: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:30:08 2020 +0000 soc: cavs15: Add missing SHIM registers. SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 9 15:43:01 2020 +0000 xtensa: intel_adsp/cavs_v15: fix usage of LP SRAM power gating Remove LSPGCTL as it can cause confusion, use SHIM_LSPGCTL instead. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Feb 26 15:28:48 2020 +0000 boards: up_squared_adsp: Use local xtensa HAL instead of SDK HAL SDK HAL is deprecated for Intel ADSP SoCs so fix and use local HAL module. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 10:45:15 2020 -0700 soc: add Intel Audio DSP SoC family This creates a SoC family for the audio DSPs on various Intel CPUs. The intel_apl_adsp is being moved into this family as well, since it is part of the CAVS v1.5 series of DSPs. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:29:02 2020 -0700 soc: xtensa: add CMakeLists.txt Add CMakeLists.txt under soc/xtensa so that CMakeLists.txt inside each SoC directory will be included, similar to what ARM and RISCV have. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:43 2020 -0700 Revert "boards: up_squared_adsp: Add flasher script" This reverts commit 80f295a9dd259f75f201c09abee849f1780efaff. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:32 2020 -0700 Revert "boards: up_squared_adsp: Update logtool tool" This reverts commit 7770d182c15b8173cade5804a0889b69291354d4. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:23 2020 -0700 Revert "soc: intel_adsp: Generalize bootloader" This reverts commit d6a33ef4677dddd7c76d4672ebec82352448c1d2. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> soc: xtensa; intel: remove sof-config.h - SQUASH No longer used. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-06-25 17:42:51 -07:00
* change interrupt vectors at runtime).
*/
ie = 0;
__asm__ volatile("wsr.INTENABLE %0" : : "r"(ie));
__asm__ volatile("wsr.VECBASE %0" : : "r"(start_rec.vecbase));
__asm__ volatile("rsync");
/* Set up the CPU pointer. */
_cpu_t *cpu = &_kernel.cpus[start_rec.cpu];
__asm__ volatile(
"wsr." CONFIG_XTENSA_KERNEL_CPU_PTR_SR " %0" : : "r"(cpu));
/* We got here via an IDC interrupt. Clear the TFC high bit
* (by writing a one!) to acknowledge and clear the latched
* hardware interrupt (so we don't have to service it as a
* spurious IPI when we enter user code). Remember: this
* could have come from any core, clear all of them.
*/
for (int i = 0; i < CONFIG_MP_NUM_CPUS; i++) {
IDC[start_rec.cpu].core[i].tfc = BIT(31);
}
/* Interrupt must be enabled while running on current core */
irq_enable(DT_IRQN(DT_INST(0, intel_cavs_idc)));
#ifdef CONFIG_SMP_BOOT_DELAY
cavs_idc_smp_init(NULL);
#endif
cpus_active[start_rec.cpu] = true;
start_rec.alive = 1;
start_rec.fn(start_rec.arg);
#if CONFIG_MP_NUM_CPUS == 1
/* CPU#1 can be under manual control running custom functions
* instead of participating in general thread execution.
* Put the CPU into idle after those functions return
* so this won't return.
*/
for (;;) {
k_cpu_idle();
}
#endif
}
bool arch_cpu_active(int cpu_num)
{
return !!(cpu_mask & BIT(cpu_num));
}
static ALWAYS_INLINE uint32_t prid(void)
{
uint32_t prid;
__asm__ volatile("rsr %0, PRID" : "=r"(prid));
return prid;
}
void arch_start_cpu(int cpu_num, k_thread_stack_t *stack, int sz,
arch_cpustart_t fn, void *arg)
{
uint32_t vecbase, curr_cpu;
__asm__ volatile("rsr %0, PRID" : "=r"(curr_cpu));
#ifdef CONFIG_SOC_SERIES_INTEL_CAVS_V25
/* On cAVS v2.5, MP startup works differently. The core has
* no ROM, and starts running immediately upon receipt of an
* IDC interrupt at the start of LPSRAM at 0xbe800000. Note
* that means we don't need to bother constructing a "message"
* below, it will be ignored. But it's left in place for
* simplicity and compatibility.
*
* All we need to do is place a single jump at that address to
* our existing MP entry point. Unfortunately Xtensa makes
* this difficult, as the region is beyond the range of a
* relative jump instruction, so we need an immediate, which
* can only be backwards-referenced. So we hand-assemble a
* tiny trampoline here ("jump over the immediate address,
* load it, jump to it").
*
* Long term we want to have this in linkable LP-SRAM memory
* such that the standard system bootstrap out of IMR can
* place it there. But this is fine for now.
*/
void **lpsram = z_soc_uncached_ptr((void *)LP_SRAM_BASE);
uint8_t tramp[] = {
0x06, 0x01, 0x00, /* J <PC+8> (jump to L32R) */
0, /* (padding to align entry_addr) */
0, 0, 0, 0, /* (entry_addr goes here) */
0x01, 0xff, 0xff, /* L32R a0, <entry_addr> */
0xa0, 0x00, 0x00, /* JX a0 */
};
memcpy(lpsram, tramp, ARRAY_SIZE(tramp));
lpsram[1] = z_soc_mp_asm_entry;
#endif
__asm__ volatile("rsr.VECBASE %0\n\t" : "=r"(vecbase));
start_rec.cpu = cpu_num;
start_rec.fn = fn;
start_rec.arg = arg;
start_rec.vecbase = vecbase;
start_rec.alive = 0;
z_mp_stack_top = Z_THREAD_STACK_BUFFER(stack) + sz;
/* Send power up message to the other core */
uint32_t ietc = IDC_MSG_POWER_UP_EXT((long) z_soc_mp_asm_entry);
IDC[curr_cpu].core[cpu_num].ietc = ietc;
IDC[curr_cpu].core[cpu_num].itc = IDC_MSG_POWER_UP | IPC_IDCITC_BUSY;
#ifndef CONFIG_SOC_SERIES_INTEL_CAVS_V25
/* Early DSPs have a ROM that actually receives the startup
* IDC as an interrupt, and we don't want that to be confused
* by IPIs sent by the OS elsewhere. Mask the IDC interrupt
* on other core so IPI won't cause them to jump to ISR until
* the core is fully initialized.
*/
uint32_t idc_reg = idc_read(IPC_IDCCTL, cpu_num);
soc/xtensa/intel_adsp: Upstream updates Significant rework of the Intel Audio DSP SoC/board layers. Includes code from the following upstream commits: Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 25 16:34:36 2020 +0100 xtesna: adsp: use 50k ticks per sec for audio Audio needs high resolution scheduling so schedule to nearest 20uS. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 24 13:59:01 2020 -0700 soc/xtensa/intel_adsp: Remove sof-config.h includes This header isn't used any more, and in any case shouldn't be included by SoC-layer Zephyr headers that need to be able to build without SOF. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat Jun 20 15:42:58 2020 -0700 soc/intel_adsp: Leave interrupts disabled at MP startup This had some code that was pasted in from esp32 that was inexplicably enabling interrupts when starting an auxiliary CPU. The original intent was that the resulting key would be passed down to the OS, but that's a legacy SMP mechanism and unused. What it actually did was SET the resulting value in PS.INTLEVEL, enabling interrupts globally before the CPU is ready to handle them. Just remove. The system doesn't need to enable interrupts until the entrance to the first user thread on this CPU, which will do it automatically as part of the context switch. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 13:57:54 2020 +0300 dts: intel_cavs: Add required label Add required label fixing build for CAVS15, 20, 25. Fixes following errors: ... devicetree error: 'label' is marked as required in 'properties:' in bindings/interrupt-controller/intel,cavs-intc.yaml, but does not appear in ... Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:19:56 2020 +0300 soc: cavs_v18: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 15:12:25 2020 +0300 soc: cavs_v20: Remove dts_fixup and fix build Remove unused now dts_fixup.h and fix build with the recent code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 23 14:59:23 2020 +0300 soc: cavs_v25: Remove dts_fixup fix build Remove unused now dts_fixup and fix build with the latest code base. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:29:06 2020 +0300 soc: intel_adsp: Remove unused functions Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:53:58 2020 +0300 soc: intel_adsp: Clean up soc.h Remove unused or duplicated definitions. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 17:02:23 2020 +0300 soc: intel_adsp: De-duplicate soc.h Move soc.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:54:19 2020 +0300 soc: intel_adsp: Remove duplicated io.h Move duplicated io.h to common SOC area. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:46 2020 +0300 cmake: Correct SOC_SERIES name for byt and bdw Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 12 12:39:02 2020 +0300 soc: intel_adsp: Build bootloader only for specific SOCs Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Thu Jun 11 13:46:25 2020 +0100 boards: xtensa: adsp: add byt and bdw boards WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 10 10:01:29 2020 -0700 soc/intel_adsp: Make the HDA timer the default always The CAVS_TIMER was originally written because the CCOUNT values are skewed between SMP CPUs, so it's the default when SMP=y. But really it should be the default always, the 19.2 MHz timer is plenty fast enough to be the Zephyr cycle timer, and it's rate is synchronized across the whole system (including the host CPU), making it a better choice for timing-sensitive applications. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:21:43 2020 +0300 soc: cavs_v25: Enable general samples build Enables general samples build for SOC cavs_v25. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 15:13:53 2020 +0300 soc: cavs_v20: Enable general samples build Enable general sample build. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:35:13 2020 +0300 soc: cavs_v18: Fix build general samples Fix building general samples for CAVS18. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 14:22:40 2020 +0300 soc: intel_adsp: Add support for other SOCs Support other SOCs in the "ready" message to the Host. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 10 13:25:39 2020 +0300 soc: intel_adsp: Move adsp.c to common SOC area Move adsp.c to common and clean makefiles. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 17:18:18 2020 +0300 boards: intel_adsp: Remove dependency on SOF Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 14:29:44 2020 +0100 soc: xtensa: cavs: build now good for cavs20 + 25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 15:57:01 2020 +0300 soc: cavs_v15: Fix build for hello_world Fix build for other then audio/sof targets. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:50:12 2020 +0300 sample: audio/sof: Remove old overlays Removing old overlays used to switch logging backend. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 15:02:01 2020 +0300 soc: intel_adsp: Correct TEXT area Correct HEADER_SPACE and put TEXT to: (HP_SRAM_WIN0_BASE + HP_SRAM_WIN0_SIZE + VECTOR_TBL_SIZE) Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:44:47 2020 +0300 soc: intel_adsp: Trivial syntax cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 14:41:07 2020 +0300 soc: intel_adsp: Fix bootloader script path Make it possible to find linker script if build is done not inside ZEPHYR_BASE. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 12:10:17 2020 +0100 soc: xtensa: cavs20/25: fix build with new headers - WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 9 13:35:38 2020 +0300 soc: intel_adsp: Fix include headers Fixes include headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 9 10:38:50 2020 +0100 soc: xtensa: cav18: updated headers- WIP Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Fri May 1 15:29:26 2020 -0700 soc/xtensa/intel_adsp: Clean up MP config logic CONFIG_MP_NUM_CPUS is a platform value, indicating the number of CPUs for which the Zephyr image is built. This is the value kernel and device code should use to predicate questions like "is there more than one CPU?" CONFIG_SMP is an application tunable, controlling whether or not the kernel schedules threads on CPUs other than the first one. This is orthogonal to MP_NUM_CPUS: it's possible to build a "SMP" kernel on a uniprocessor system or have a UP kernel on a MP system if the other cores are used for non-thread application code. CONFIG_SCHED_IPI_SUPPORTED is a platform flag telling an SMP kernel whether or not it can synchronously signal other CPUs of scheduler state changes. It should be inspected only inside the scheduler (or other code that uses the API). This should be selected in kconfig by soc layer code, or by a driver that implements the feature. CONFIG_IPM_CAVS_IDC is a driver required to implement IPI on this platform. This is what we should use as a predicate if we have dependence on the IPM driver for a platform feature. These were all being sort of borged together in code. Split them up correctly, allowing the platform MP layer to be unit tested in the absence of SMP (c.f. tests/kernel/mp), and SMP kernels with only one CPU (which is pathlogical in practice, but also a very good unit test) to be built. Also removes some dead linker code for SMP-related sections that don't exist in Zephyr. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:41:55 2020 +0100 soc: xtensa: bootloader - use linker script Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Jun 8 16:26:18 2020 +0100 soc: xtensa: further fix headers - WIP Simplify the directory structure, WIP for cavs20 and cavs25 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Jun 8 12:59:30 2020 +0300 soc: cavs_v15: Remove unneeded include Remove include fixing build. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Jun 7 12:37:35 2020 +0100 soc:xtensa: adsp: remove sof specific code from soc headers TODO: v1.8+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 23:19:37 2020 -0700 intel_adsp_*/doc: fix duplicate .rst labels Quick fix purely to make the build green again. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Thu Jun 4 22:34:40 2020 -0700 samples/audio/sof: use OVERLAY_CONFIG to import apollolake_defconfig This reverts commit 21f16b5b1d29fca83d1b62b1b75683b5a1bc2935 that copied it here instead. Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri Jun 5 12:34:48 2020 +0300 soc: intel_adsp: Move soc_mp to common Moving soc_mp to common SOC area, it still needs fixes for taking number of cores from Zephyr Kconfig, etc. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 16:05:06 2020 +0300 soc: intel_adsp: Move memory.h from lib/ For those files from SOF referencing platform/lib/memory.h we have include. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 15:20:09 2020 +0300 soc: intel_adsp: Rename platform.h to soc.h Rename to prevent including it from SOF. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:47:55 2020 +0300 soc: intel_adsp: Move headers Move headers to more convenient place Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Jun 4 11:21:51 2020 +0300 soc: intel_adsp: More SOC cleaning Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Marc Herbert <marc.herbert@intel.com> Date: Mon Jun 1 15:31:34 2020 -0700 samples/audio/sof: import sof/src/arch/xtensa/ apollolake_defconfig Import modules/audio/sof/src/arch/xtensa/configs/apollolake_defconfig into prj.conf and new boards/up_squared_adsp.conf Signed-off-by: Marc Herbert <marc.herbert@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:07:40 2020 +0100 soc:xtensa: adsp: let SOF configure the DSP for audio Let SOF do this for the moment. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 15:06:20 2020 +0100 soc: xtensa: cavs: remove headers similar to cavs15 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 15:58:38 2020 +0300 soc: intel_adsp: Move ipc header to common Remove duplicated headers from CAVS to common SOC part Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Jun 3 13:02:09 2020 +0300 soc: cavs_v15: Remove unneeded headers Remove also from CAVS15. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 18:34:11 2020 +0300 Remove more headers Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:12:09 2020 +0100 soc: xtensa: remove cavs sod headers for drivers and trace. Duplicate cavs15 headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Jun 3 14:05:12 2020 +0100 samples: move sof dai, dma and clk configs to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 17:38:45 2020 +0300 soc: intel_adsp: Remove more duplicated headers Remove more headers Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue Jun 2 15:50:03 2020 +0100 samples: sof: remove pm realted files. Use the SOF versions. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 16:55:40 2020 +0300 WIP: Strip lib from include path WIP, pushed for sync Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:44:33 2020 +0300 soc: intel_adsp: Remove more headers Remove even more common headers Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Jun 2 14:00:47 2020 +0300 soc: intel_adsp: Remove SOF headers The headers would be used by audio/sof app directly from SOF module. Author: Andy Ross <andrew.j.ross@intel.com> Date: Sat May 30 11:01:26 2020 -0700 soc/intel_adsp: Alternative log reading script This script speaks the same protocol and works with the same firmware, but: * Is a single file with no dependencies outside the python3 standard library and can be run out-of-tree (i.e. with setups where the firmware is not built on the device under test) * Operates in "tail" mode, where it will continue polling for more output, making it easier to watch a running process and acting more like a conventional console device. * Has no dependence on the diag_driver kernel module (it reads the DSP SRAM memory directly from the BAR mapping in the PCI device) * Is MUCH smaller than the existing tool. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 28 16:17:51 2020 +0300 Decrease HEP pool size to 192000 Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:27:00 2020 +0100 soc: xtensa: cavs25: complete support for cavs25 Builds, not tested on qmeu due to missing SOF ROM (TODO) Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:24:26 2020 +0100 soc: xtensa: cavs20: complete cavs20 support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:22:13 2020 +0100 soc: xtensa: cavs18: complete boot support Now boots on qemu. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:19:23 2020 +0100 soc: xtensa: cavs15: use cavs15 instead of apl as linker soc name Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 29 10:16:06 2020 +0100 TODO: samples: sof: work around missing trace symbols. Disable local trace. Needs trace updates finished before this can be removed. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:57:19 2020 +0100 dts: xtensa: rename apl to cavs15 DTS This DTS is used by more than APL SOC. i.e. all CAVS15 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:52:20 2020 +0100 west: commands: sign: Add signing support for other CAVS targets Sign for CAVS15, CAVS18, CAVS20 and CAVS25 SOCs Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:50:07 2020 +0100 boards: xtensa: cavs: used Zephyr mask macro Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed May 27 15:49:46 2020 +0100 soc: xtensa: move code to SOF Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 26 11:40:36 2020 +0100 soc: xtensa: use SOF versions of clk Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:38:45 2020 +0300 soc: intel_adsp: Send FW ready for non SOF configuration Configure windows and send FW ready when used without SOF, should be loaded with fw_loader script. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 18:02:22 2020 +0300 soc: intel_adsp: Use SOF version of the file Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:47:27 2020 +0300 soc: intel_adsp: Clean up include headers Remove SOF mentions from the SOC headers. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:43:05 2020 +0300 soc: intel_adsp: Move SOF specific code to samples/audio/sof Move SOF specific code to the SOF sample. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:39:42 2020 +0300 soc: intel_adsp: Use SOF module's version of mem_window.c Use exact copy from SOF module. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 17:36:41 2020 +0300 soc: intel_adsp: Use exact copy from SOF module Use SOF module verion of the clk.c Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 25 14:03:35 2020 +0300 soc: xtensa: Add {SOC_FAMILY}/common/include path Add ${SOC_DIR}/${ARCH}/${SOC_FAMILY}/common/include path if exist. Fixes issues for xtensa SOCs. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:18:50 2020 +0100 soc: xtensa: cavs common: fix headers for build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:10:57 2020 +0100 soc: xtensa: adsp: add so_inthandlers.h for Intel platforms Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 25 16:08:26 2020 +0100 cmake: xtensa: select correct compiler per CAVS target. TODO: what about XCC ? Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue May 19 14:59:26 2020 +0300 boards: up_squared_adsp: Move SOF configuration to samples Move SOF-specific configuration to samples/audio/sof prj. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 15 15:29:50 2020 +0300 soc: intel_adsp: Move SOF code to modules/audio/sof Move SOF dependent code out of SOC area. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 14 17:30:38 2020 +0300 Move task_main_start() to audio/sof sample Start task_main_start() from main of audio/sof sample. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed May 13 15:37:20 2020 +0300 Rename up_xtreme_adsp to intel_adsp_cavs18 Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon Apr 27 14:12:59 2020 +0300 Add sample audio/sof for SOF initialization Add dedicated sample where we put SOF specific initialization. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 18:49:36 2020 +0300 WIP: soc: cavs_v18: Cleanup Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:44:06 2020 +0300 soc: cavs_v15: Move soc init to common part Moving SOC init to the right place. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Mon May 11 15:02:28 2020 +0300 soc: intel_adsp: Move common part to special dir Moving common part to common/adsp.c Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Fri May 8 14:37:50 2020 +0300 boards: up_xtreme_adsp: Add initial up_xtreme_adsp board Add initial board copying existing up_squared_adsp board and using CAVS1.8 SOC family. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu May 7 15:30:51 2020 +0300 soc: intel_adsp: Generalize bootloader Move bootloader to soc/xtensa/intel_adsp making it available for other boards. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:31:00 2020 +0100 boards: xtensa: up_squared: Add support for all CAVS Add boot support for all CAVS versions. TODO: needs to be made common Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Tue May 5 21:25:34 2020 +0100 soc: xtensa: intel_adsp: Manage cache for DMA descriptors Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 21:10:50 2020 +0100 soc: xtensa: adsp: use 24M567 clock Use audio clock Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon May 4 10:04:01 2020 +0100 xtensa: soc: adsp: enable system agent Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:03:07 2020 +0100 soc: xtensa: intel_adsp: increase mem pool to 192k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 15:02:31 2020 +0100 soc: xtensa: intel_adsp: re-enable DMA trace Buffer will be empty (as trace items sent to Zephyr LOG) but logic is running. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 11:18:55 2020 +0100 soc: xtensa: intel: dont use uncache region yet. Some code was still using this region. Use later. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun May 3 10:07:28 2020 +0100 soc: xtensa: intel_adsp: fix notifier init Topology now loads. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:18:38 2020 +0100 boards: up2: Need to use sof config for bootloader This will need uncoupled at some point. For testing today. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 21:16:38 2020 +0100 boards: up2: increase heap to 128k Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:35:19 2020 +0300 boards: up_squared_adsp: Use bigger HEAP Use HEAP from old demo. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri May 1 16:06:32 2020 +0100 soc: xtensa: intel_adsp: Fix config.h naming collisions Rename sof version to sof-config.h Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Thu Apr 30 11:22:42 2020 +0300 Small cleanups Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 22:00:44 2020 +0300 tests: sof/audio: Test ll scheduler Add more tests for scheduler. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 29 18:38:35 2020 +0300 tests: Add first schedule test Add initial test for testing scheduling. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 29 13:36:23 2020 +0100 soc: xtensa: rmeove build warnings Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 18:04:33 2020 +0300 soc/intel_adsp: Register sof logging Register sof logging for tracing Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 14:16:55 2020 +0300 boards: up_squared_adsp: Define HEAP_MEM_POOL_SIZE Define HEAP_MEM_POOL_SIZE when SOF enabled. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 28 10:09:20 2020 +0300 tests: audio/sof: Add interrupt API for testing Add initial interrupt API for testing. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 15:54:28 2020 +0100 soc: xtensa: adsp: Update linker script for SOF sections. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 27 11:20:01 2020 +0100 soc: xtensa: adsp: send SOF FW metadata as boot message Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 26 21:47:20 2020 +0100 soc: xtensa: adsp: re-enable all SOF IP init. Do all SOF IP init. TODO: ATOMCTL, WFI on LX6 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sat Apr 25 15:30:40 2020 +0100 soc: xtensa: irq: Make sure IPC IRQ is registered. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 20:56:09 2020 +0300 tests: sof: Enable console Enable console for the test. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 17:57:22 2020 +0300 soc: cavs_v15: Fix XTENSA_KERNEL_CPU_PTR_SR Use correct value for XTENSA_KERNEL_CPU_PTR_SR. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Wed Apr 22 14:48:31 2020 +0300 tests: audio/sof: Add tests for alloc API testing Add initial tests for allocation API testing. Can be extended for other later. Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 17:49:32 2020 +0300 logging: Enable xtensa simulator backend for ADSP Enable xtensa simulator backend for SOC_FAMILY_INTEL_ADSP. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 20:58:30 2020 +0100 soc: xtensa: add common cpu logic Support for additional cores. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Date: Tue Apr 21 10:11:07 2020 +0300 Update west.yaml to point to the latest repo Update west.yaml Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:17:01 2020 +0100 soc: xtensa: cavs: Fix build for clk.c on cavs18+ Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:31 2020 +0100 soc: xtensa: cavs15: removed unused headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:05:09 2020 +0100 soc: xtensa: cavs25: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:52 2020 +0100 soc: xtensa: cavs20: align with SOF headers Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 16:03:09 2020 +0100 soc: xtensa: cavs18: Align with SOF headers. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Apr 20 11:42:39 2020 +0100 west: sof: Updated to latest version. Now builds, links and runs SOF code (but not to FW ready). Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Sun Apr 19 13:28:53 2020 +0100 xtensa: intel adsp: build in SOF symbols if CONFIG_SOF Code now fully links against SOF. Needs to be run tested. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:19:28 2020 -0700 DO NOT MERGE: temporarily add thesoftproject as remote for sof module Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Wed Apr 15 10:33:40 2020 -0700 ipm: cavs_idc: use the IPC/IDC definitions in SoC The SoC definitions have the necessary IPC/IDC bits so there is no need to define them separately. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 14:30:20 2020 +0100 TODO: config: Use static config for SOF module. TODO: needs to be generated as part of SOF kconfig Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Fri Apr 10 21:56:07 2020 +0100 HACK: Add SOF into build Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:55:15 2020 +0100 west: modules: Add SOF audio module. Add support for building SOF as a Zephyr module. This is the starting point for add SOF audio into Zephyr. Currently builds but does not use any symbols yet. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:48:48 2020 +0100 WIP soc: adsp-cavs15: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Apr 15 13:43:44 2020 +0100 WIP soc: adsp-common: Use same include directory structure as SOF Use the same directory structure as SOF to simplify porting and allow SOF to build without Zephyr until porting work is complete. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:36:32 2020 +0000 WIP: soc: adsp-common: cache is common across all Intel ADSP platforms De-duplicate soc.h cache definitions. TODO: this needs done for other common functions. TODO: need to fix include path Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:43 2020 -0700 WIP: soc: cavs25: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:07:12 2020 -0700 WIP: soc: cavs20: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 30 11:06:40 2020 -0700 WIP: soc: cavs18: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 12:37:17 2020 -0700 soc: intel_adsp: use main_entry.S in common for cavs_v15 The files are identical anyway. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:38:14 2020 -0700 soc: intel_adsp/cavs_v15: link common code Let cavs_v15 link against the code compiled under common/. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 13:08:28 2020 +0000 WIP: soc: common: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:37:32 2020 +0000 WIP soc: adsp-cavs15: build power down support Build the power down support for CAVS1.5 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 12:40:17 2020 +0000 WIP: soc: cavs15: Import SOF SoC support SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 16 14:30:08 2020 +0000 soc: cavs15: Add missing SHIM registers. SOF commit 2746df76b98f21d3e0b2c5cd4fe405c9a42014a4 Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Mon Mar 9 15:43:01 2020 +0000 xtensa: intel_adsp/cavs_v15: fix usage of LP SRAM power gating Remove LSPGCTL as it can cause confusion, use SHIM_LSPGCTL instead. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> Date: Wed Feb 26 15:28:48 2020 +0000 boards: up_squared_adsp: Use local xtensa HAL instead of SDK HAL SDK HAL is deprecated for Intel ADSP SoCs so fix and use local HAL module. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 10:45:15 2020 -0700 soc: add Intel Audio DSP SoC family This creates a SoC family for the audio DSPs on various Intel CPUs. The intel_apl_adsp is being moved into this family as well, since it is part of the CAVS v1.5 series of DSPs. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Daniel Leung <daniel.leung@intel.com> Date: Mon Mar 30 11:29:02 2020 -0700 soc: xtensa: add CMakeLists.txt Add CMakeLists.txt under soc/xtensa so that CMakeLists.txt inside each SoC directory will be included, similar to what ARM and RISCV have. Signed-off-by: Daniel Leung <daniel.leung@intel.com> Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:43 2020 -0700 Revert "boards: up_squared_adsp: Add flasher script" This reverts commit 80f295a9dd259f75f201c09abee849f1780efaff. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:32 2020 -0700 Revert "boards: up_squared_adsp: Update logtool tool" This reverts commit 7770d182c15b8173cade5804a0889b69291354d4. Author: Andy Ross <andrew.j.ross@intel.com> Date: Wed Jun 17 12:30:23 2020 -0700 Revert "soc: intel_adsp: Generalize bootloader" This reverts commit d6a33ef4677dddd7c76d4672ebec82352448c1d2. Author: Liam Girdwood <liam.r.girdwood@linux.intel.com> soc: xtensa; intel: remove sof-config.h - SQUASH No longer used. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-06-25 17:42:51 -07:00
idc_reg &= ~IPC_IDCCTL_IDCTBIE(0);
idc_write(IPC_IDCCTL, cpu_num, idc_reg);
sys_set_bit(DT_REG_ADDR(DT_NODELABEL(cavs0)) + 0x00 +
CAVS_ICTL_INT_CPU_OFFSET(cpu_num), 8);
k_busy_wait(100);
#ifdef CONFIG_SMP_BOOT_DELAY
cavs_idc_smp_init(NULL);
#endif
#endif
while (!start_rec.alive)
;
/*
* No locking needed as long as CPUs can only be powered on by the main
* CPU and cannot be powered off
*/
cpu_mask |= BIT(cpu_num);
}
void arch_sched_ipi(void)
{
#ifdef CONFIG_SOC_SERIES_INTEL_CAVS_V25
uint32_t curr = prid();
for (int c = 0; c < CONFIG_MP_NUM_CPUS; c++) {
if (c != curr && cpus_active[c]) {
IDC[curr].core[c].itc = BIT(31);
}
}
#else
/* Legacy implementation for cavs15 based on the 2-core-only
* IPM driver. To be replaced with the general one when
* validated.
*/
const struct device *idcdev =
device_get_binding(DT_LABEL(DT_INST(0, intel_cavs_idc)));
ipm_send(idcdev, 0, IPM_CAVS_IDC_MSG_SCHED_IPI_ID,
IPM_CAVS_IDC_MSG_SCHED_IPI_DATA, 0);
#endif
}
void idc_isr(void *param)
{
ARG_UNUSED(param);
#ifdef CONFIG_SMP
/* Right now this interrupt is only used for IPIs */
z_sched_ipi();
#endif
/* ACK the interrupt to all the possible sources. This is a
* level-sensitive interrupt triggered by a logical OR of each
* of the ITC/TFC high bits, INCLUDING the one "from this
* CPU".
*/
for (int i = 0; i < CONFIG_MP_NUM_CPUS; i++) {
IDC[start_rec.cpu].core[i].tfc = BIT(31);
}
}
#ifndef CONFIG_IPM_CAVS_IDC
/* Fallback stub for external SOF code */
int cavs_idc_smp_init(const struct device *dev)
{
ARG_UNUSED(dev);
return 0;
}
#endif
void soc_idc_init(void)
{
#ifndef CONFIG_IPM_CAVS_IDC
IRQ_CONNECT(DT_IRQN(DT_NODELABEL(idc)), 0, idc_isr, NULL, 0);
#endif
/* Every CPU should be able to receive an IDC interrupt from
* every other CPU, but not to be back-interrupted when the
* target core clears the busy bit.
*/
for (int core = 0; core < CONFIG_MP_NUM_CPUS; core++) {
uint32_t coremask = BIT(CONFIG_MP_NUM_CPUS) - 1;
IDC[core].busy_int |= coremask;
IDC[core].done_int &= ~coremask;
/* Also unmask the interrupt for every core in the L2
* mask register. Really this should have an API
* exposed out of the interrupt controller layer...
*/
sys_set_bit(DT_REG_ADDR(DT_NODELABEL(cavs0)) + 0x04 +
CAVS_ICTL_INT_CPU_OFFSET(core), 8);
}
}