zephyr/subsys/logging/Kconfig

556 lines
17 KiB
Text
Raw Normal View History

# Copyright (c) 2016 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
menuconfig LOG
bool "Logging"
select PRINTK if USERSPACE
help
Global switch for the logger, when turned off log calls will not be
compiled in.
if LOG
config LOG_MINIMAL
bool "Enable minimal-footprint logging"
imply PRINTK
help
Enable minimal logging implementation. This has very little footprint
overhead on top of the printk() implementation for standard
logging macros. Hexdump macros are also supported, with a small
amount of code pulled in if used. Build time filtering is supported,
but not runtime filtering. There are no timestamps, prefixes,
colors, or asynchronous logging, and all messages are simply
sent to printk().
config LOG_RUNTIME_FILTERING
bool "Enable runtime reconfiguration of the logger"
depends on !LOG_FRONTEND && !LOG_MINIMAL
help
Allow runtime configuration of maximal, independent severity
level for instance.
config LOG_DEFAULT_LEVEL
int "Default log level"
default 3
range 0 4
help
Sets log level for modules which don't specify it explicitly. When
set to 0 it means log will not be activated for those modules.
Levels are:
- 0 OFF, do not write by default
- 1 ERROR, default to only write LOG_LEVEL_ERR
- 2 WARNING, default to write LOG_LEVEL_WRN
- 3 INFO, default to write LOG_LEVEL_INFO
- 4 DEBUG, default to write LOG_LEVEL_DBG
config LOG_OVERRIDE_LEVEL
int "Override lowest log level"
default 0
range 0 4
help
Forces a minimum log level for all modules. Modules use their
specified level if it is greater than this option, otherwise they use
the level specified by this option instead of their default or
whatever was manually set.
Levels are:
- 0 OFF, do not override
- 1 ERROR, override to write LOG_LEVEL_ERR
- 2 WARNING, override to write LOG_LEVEL_WRN
- 3 INFO, override to write LOG_LEVEL_INFO
- 4 DEBUG, override to write LOG_LEVEL_DBG
config LOG_MAX_LEVEL
int "Maximal log level compiled in the system"
default 4
range 0 4
help
Forces a maximal log level for all modules. Modules saturates their
specified level if it is greater than this option, otherwise they use
the level specified by this option instead of their default or
whatever was manually set.
Levels are:
- 0 OFF, logging is turned off
- 1 ERROR, maximal level set to LOG_LEVEL_ERR
- 2 WARNING, maximal level set to LOG_LEVEL_WRN
- 3 INFO, maximal level set to LOG_LEVEL_INFO
- 4 DEBUG, maximal level set to LOG_LEVEL_DBG
config LOG_MIPI_SYST_ENABLE
bool "Enable mipi syst format output"
select MIPI_SYST_LIB
help
Enable mipi syst format output for the logger system.
if !LOG_MINIMAL
menu "Prepend non-hexdump log message with function name"
depends on !LOG_FRONTEND
config LOG_FUNC_NAME_PREFIX_ERR
bool "Error messages prepended"
config LOG_FUNC_NAME_PREFIX_WRN
bool "Warning messages prepended"
config LOG_FUNC_NAME_PREFIX_INF
bool "Info messages prepended"
config LOG_FUNC_NAME_PREFIX_DBG
bool "Debug messages prepended"
default y
endmenu
config LOG_PRINTK
bool "Enable processing of printk messages."
help
LOG_PRINTK messages are formatted in place and logged unconditionally.
config LOG_PRINTK_MAX_STRING_LENGTH
int "Maximum string length supported by LOG_PRINTK"
depends on LOG_PRINTK
depends on (!LOG_IMMEDIATE || USERSPACE)
default 128
help
Array is allocated on the stack.
config LOG_IMMEDIATE
bool "Enable synchronous processing"
help
When enabled log is processed in the context of the call. It impacts
performance of the system since time consuming operations are
performed in the context of the log entry (e.g. high priority
interrupt).Logger backends must support exclusive access to work
flawlessly in that mode because one log operation can be interrupted
by another one in the higher priority context.
config LOG_IMMEDIATE_CLEAN_OUTPUT
bool "Enable clean log output"
kconfig: Replace some single-symbol 'if's with 'depends on' I think people might be reading differences into 'if' and 'depends on' that aren't there, like maybe 'if' being needed to "hide" a symbol, while 'depends on' just adds a dependency. There are no differences between 'if' and 'depends on'. 'if' is just a shorthand for 'depends on'. They work the same when it comes to creating implicit menus too. The way symbols get "hidden" is through their dependencies not being satisfied ('if'/'depends on' get copied up as a dependency on the prompt). Since 'if' and 'depends on' are the same, an 'if' with just a single symbol in it can be replaced with a 'depends on'. IMO, it's best to avoid 'if' there as a style choice too, because it confuses people into thinking there's deep Kconfig magic going on that requires 'if'. Going for 'depends on' can also remove some nested 'if's, which generates nicer symbol information and docs, because nested 'if's really are so simple/dumb that they just add the dependencies from both 'if's to all symbols within. Replace a bunch of single-symbol 'if's with 'depends on' to despam the Kconfig files a bit and make it clearer how things work. Also do some other minor related dependency refactoring. The replacement isn't complete. Will fix up the rest later. Splitting it a bit to make it more manageable. (Everything above is true for choices, menus, and comments as well.) Detected by tweaking the Kconfiglib parsing code. It's impossible to detect after parsing, because 'if' turns into 'depends on'. Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2020-02-08 03:45:50 +01:00
depends on LOG_IMMEDIATE
help
If enabled, interrupts are locked during whole log message processing.
As a result, processing on one log message cannot be interrupted by
another one and output is clean, not interleaved. However, enabling
this option is causing interrupts locking for significant amount of
time (up to multiple milliseconds).
config LOG_ENABLE_FANCY_OUTPUT_FORMATTING
depends on MINIMAL_LIBC
bool "Format strings with minimal libc _prf() instead of _vprintk()"
help
Selecting this option will choose more robust _prf() function from
minimal libc for handling format strings instead of the _vprintk()
function. Choosing this option adds around ~3K flash and ~250 bytes on
stack.
if !LOG_IMMEDIATE
choice
prompt "Log full strategy"
config LOG_MODE_OVERFLOW
bool "Oldest logs are discarded"
config LOG_MODE_NO_OVERFLOW
bool "New logs are dropped"
endchoice
config LOG_BLOCK_IN_THREAD
bool "On log full block in thread context"
help
When enabled logger will block (if in the thread context) when
internal logger buffer is full and new message cannot be allocated.
config LOG_BLOCK_IN_THREAD_TIMEOUT_MS
int "Maximum time (in milliseconds) thread can be blocked"
default 1000
range -1 10000
kconfig: Replace some single-symbol 'if's with 'depends on' I think people might be reading differences into 'if' and 'depends on' that aren't there, like maybe 'if' being needed to "hide" a symbol, while 'depends on' just adds a dependency. There are no differences between 'if' and 'depends on'. 'if' is just a shorthand for 'depends on'. They work the same when it comes to creating implicit menus too. The way symbols get "hidden" is through their dependencies not being satisfied ('if'/'depends on' get copied up as a dependency on the prompt). Since 'if' and 'depends on' are the same, an 'if' with just a single symbol in it can be replaced with a 'depends on'. IMO, it's best to avoid 'if' there as a style choice too, because it confuses people into thinking there's deep Kconfig magic going on that requires 'if'. Going for 'depends on' can also remove some nested 'if's, which generates nicer symbol information and docs, because nested 'if's really are so simple/dumb that they just add the dependencies from both 'if's to all symbols within. Replace a bunch of single-symbol 'if's with 'depends on' to despam the Kconfig files a bit and make it clearer how things work. Also do some other minor related dependency refactoring. The replacement isn't complete. Will fix up the rest later. Splitting it a bit to make it more manageable. (Everything above is true for choices, menus, and comments as well.) Detected by tweaking the Kconfiglib parsing code. It's impossible to detect after parsing, because 'if' turns into 'depends on'. Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2020-02-08 03:45:50 +01:00
depends on LOG_BLOCK_IN_THREAD
help
If new buffer for a log message cannot be allocated in that time, log
message is dropped. Forever blocking (-1) is possible however may lead
to the logger deadlock if logging is enabled in threads used for
logging (e.g. logger or shell thread).
config LOG_PROCESS_TRIGGER_THRESHOLD
int "Amount of buffered logs which triggers processing thread."
default 10
help
When number of buffered messages reaches the threshold thread is waken
up. Log processing thread ID is provided during log initialization.
Set 0 to disable the feature. If LOG_PROCESS_THREAD is enabled then
this threshold is used by the internal thread.
config LOG_PROCESS_THREAD
bool "Enable internal thread for log processing"
depends on MULTITHREADING
default y
help
When enabled thread is created by the logger subsystem. Thread is
waken up periodically (see LOG_PROCESS_THREAD_SLEEP_MS) and whenever
number of buffered messages exceeds the threshold (see
LOG_PROCESS_TRIGGER_THR).
if LOG_PROCESS_THREAD
config LOG_PROCESS_THREAD_SLEEP_MS
int "Set internal log processing thread sleep period"
default 1000
help
Log processing thread sleeps for requested period given in
milliseconds. When waken up, thread process any buffered messages.
config LOG_PROCESS_THREAD_STACK_SIZE
int "Stack size for the internal log processing thread"
default 2048 if COVERAGE_GCOV
default 1024 if NO_OPTIMIZATIONS
default 1024 if XTENSA
default 4096 if (X86 && X86_64)
default 4096 if ARM64
default 4096 if SPARC
default 768
help
Set the internal stack size for log processing thread.
endif # LOG_PROCESS_THREAD
config LOG_BUFFER_SIZE
int "Number of bytes dedicated for the logger internal buffer."
default 1024
range 128 65536
help
Number of bytes dedicated for the logger internal buffer.
config LOG_DETECT_MISSED_STRDUP
bool "Detect missed handling of transient strings"
default y if !LOG_IMMEDIATE
help
If enabled, logger will assert and log error message is it detects
that string format specifier (%s) and string address which is not from
read only memory section and not from pool used for string duplicates.
String argument must be duplicated in that case using log_strdup().
Detection is performed during log processing thus it does not impact
logging timing.
config LOG_STRDUP_MAX_STRING
int "Longest string that can be duplicated using log_strdup()"
default 46 if NETWORKING
default 32
help
Longer strings are truncated.
config LOG_STRDUP_BUF_COUNT
int "Number of buffers in the pool used by log_strdup()"
default 4
help
Number of calls to log_strdup() which can be pending before flushed
to output. If "<log_strdup alloc failed>" message is seen in the log
output, it means this value is too small and should be increased.
Each entry takes CONFIG_LOG_STRDUP_MAX_STRING bytes of memory plus
some additional fixed overhead.
config LOG_STRDUP_POOL_PROFILING
bool "Enable profiling of pool used for log_strdup()"
help
When enabled, maximal utilization of the pool is tracked. It can
be read out using shell command.
endif # !LOG_IMMEDIATE
config LOG_DOMAIN_ID
int "Domain ID"
default 0
range 0 7
help
In multicore system each application/core must have unique domain ID.
config LOG_CMDS
bool "Enable shell commands"
depends on SHELL
default y if SHELL
config LOG_FRONTEND
bool "Enable frontend"
select LOG_IMMEDIATE
help
When enabled, logs are redirected to a custom frontend instead
of being processed by the logger.
config LOG_BACKEND_UART
bool "Enable UART backend"
depends on UART_CONSOLE
default y if !SHELL_BACKEND_SERIAL
help
When enabled backend is using UART to output logs.
config LOG_BACKEND_UART_SYST_ENABLE
bool "Enable UART syst backend"
depends on LOG_BACKEND_UART
depends on LOG_MIPI_SYST_ENABLE
help
When enabled backend is using UART to output syst format logs.
config LOG_BACKEND_SWO
bool "Enable Serial Wire Output (SWO) backend"
depends on HAS_SWO
help
When enabled, backend will use SWO for logging.
if LOG_BACKEND_SWO
config LOG_BACKEND_SWO_FREQ_HZ
int "Set SWO output frequency"
default 0
help
Set SWO output frequency. Value 0 will select maximum frequency
supported by the given MCU. Not all debug probes support high
frequency SWO operation. In this case the frequency has to be set
manually.
SWO value defined by this option will be configured at boot. Most SWO
viewer programs will configure SWO frequency when attached to the
debug probe. Such configuration will persist only until the device
reset. To ensure flawless operation the frequency configured here and
by the SWO viewer program has to match.
config LOG_BACKEND_SWO_SYST_ENABLE
bool "Enable SWO syst backend"
depends on LOG_MIPI_SYST_ENABLE
help
When enabled backend is using SWO to output syst format logs.
endif # LOG_BACKEND_SWO
config LOG_BACKEND_RTT
bool "Enable Segger J-Link RTT backend"
depends on USE_SEGGER_RTT
default y if !SHELL_BACKEND_RTT
help
When enabled, backend will use RTT for logging. This backend works on a per
message basis. Only a whole message (terminated with a carriage return: '\r')
is transferred to up-buffer at once depending on available space and
selected mode.
In panic mode backend always blocks and waits until there is space
in up-buffer for a message and message is transferred to host.
if LOG_BACKEND_RTT
choice
prompt "Logger behavior"
default LOG_BACKEND_RTT_MODE_BLOCK
config LOG_BACKEND_RTT_MODE_DROP
bool "Drop messages that do not fit in up-buffer."
help
If there is not enough space in up-buffer for a message, drop it.
Number of dropped messages will be logged.
Increase up-buffer size helps to reduce dropping of messages.
config LOG_BACKEND_RTT_MODE_BLOCK
bool "Block until message is transferred to host."
help
Waits until there is enough space in the up-buffer for a message.
config LOG_BACKEND_RTT_SYST_ENABLE
bool "Enable RTT syst backend"
depends on LOG_MIPI_SYST_ENABLE
help
When enabled backend is using RTT to output syst format logs.
endchoice
config LOG_BACKEND_RTT_MESSAGE_SIZE
int "Size of internal buffer for storing messages."
range 32 256
default 128
kconfig: Replace some single-symbol 'if's with 'depends on' I think people might be reading differences into 'if' and 'depends on' that aren't there, like maybe 'if' being needed to "hide" a symbol, while 'depends on' just adds a dependency. There are no differences between 'if' and 'depends on'. 'if' is just a shorthand for 'depends on'. They work the same when it comes to creating implicit menus too. The way symbols get "hidden" is through their dependencies not being satisfied ('if'/'depends on' get copied up as a dependency on the prompt). Since 'if' and 'depends on' are the same, an 'if' with just a single symbol in it can be replaced with a 'depends on'. IMO, it's best to avoid 'if' there as a style choice too, because it confuses people into thinking there's deep Kconfig magic going on that requires 'if'. Going for 'depends on' can also remove some nested 'if's, which generates nicer symbol information and docs, because nested 'if's really are so simple/dumb that they just add the dependencies from both 'if's to all symbols within. Replace a bunch of single-symbol 'if's with 'depends on' to despam the Kconfig files a bit and make it clearer how things work. Also do some other minor related dependency refactoring. The replacement isn't complete. Will fix up the rest later. Splitting it a bit to make it more manageable. (Everything above is true for choices, menus, and comments as well.) Detected by tweaking the Kconfiglib parsing code. It's impossible to detect after parsing, because 'if' turns into 'depends on'. Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2020-02-08 03:45:50 +01:00
depends on LOG_BACKEND_RTT_MODE_DROP
help
This option defines maximum message size transferable to up-buffer.
if LOG_BACKEND_RTT_MODE_BLOCK
config LOG_BACKEND_RTT_OUTPUT_BUFFER_SIZE
int "Size of the output buffer"
default 16
help
Buffer is used by log_output module for preparing output data (e.g.
string formatting).
config LOG_BACKEND_RTT_RETRY_CNT
int "Number of retries"
default 4
help
Number of TX retries before dropping the data and assuming that
RTT session is inactive.
config LOG_BACKEND_RTT_RETRY_DELAY_MS
int "Delay between TX retries in milliseconds"
default 5
help
Sleep period between TX retry attempts. During RTT session, host pulls
data periodically. Period starts from 1-2 milliseconds and can be
increased if traffic on RTT increases (also from host to device). In
case of heavy traffic data can be lost and it may be necessary to
increase delay or number of retries.
endif # LOG_BACKEND_RTT_MODE_BLOCK
config LOG_BACKEND_RTT_BUFFER
int "Buffer number used for logger output."
range 0 SEGGER_RTT_MAX_NUM_UP_BUFFERS
default 0
help
Select index of up-buffer used for logger output, by default it uses
terminal up-buffer and its settings.
config LOG_BACKEND_RTT_BUFFER_SIZE
int "Size of reserved up-buffer for logger output."
default 1024
kconfig: Replace some single-symbol 'if's with 'depends on' I think people might be reading differences into 'if' and 'depends on' that aren't there, like maybe 'if' being needed to "hide" a symbol, while 'depends on' just adds a dependency. There are no differences between 'if' and 'depends on'. 'if' is just a shorthand for 'depends on'. They work the same when it comes to creating implicit menus too. The way symbols get "hidden" is through their dependencies not being satisfied ('if'/'depends on' get copied up as a dependency on the prompt). Since 'if' and 'depends on' are the same, an 'if' with just a single symbol in it can be replaced with a 'depends on'. IMO, it's best to avoid 'if' there as a style choice too, because it confuses people into thinking there's deep Kconfig magic going on that requires 'if'. Going for 'depends on' can also remove some nested 'if's, which generates nicer symbol information and docs, because nested 'if's really are so simple/dumb that they just add the dependencies from both 'if's to all symbols within. Replace a bunch of single-symbol 'if's with 'depends on' to despam the Kconfig files a bit and make it clearer how things work. Also do some other minor related dependency refactoring. The replacement isn't complete. Will fix up the rest later. Splitting it a bit to make it more manageable. (Everything above is true for choices, menus, and comments as well.) Detected by tweaking the Kconfiglib parsing code. It's impossible to detect after parsing, because 'if' turns into 'depends on'. Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2020-02-08 03:45:50 +01:00
depends on LOG_BACKEND_RTT_BUFFER > 0
help
Specify reserved size of up-buffer used for logger output.
# Enable processing of printk calls using log if terminal buffer is used.
# Same buffer is used by RTT console. If printk would go through RTT console
# that will lead to corruption of RTT data which is not protected against being
# interrupted by an interrupt.
config LOG_BACKEND_RTT_FORCE_PRINTK
bool
default y if LOG_BACKEND_RTT_BUFFER = 0 && RTT_CONSOLE
select LOG_PRINTK
endif # LOG_BACKEND_RTT
config LOG_BACKEND_SPINEL
bool "Enable OpenThread dedicated Spinel protocol backend"
depends on (OPENTHREAD_NCP_SPINEL_ON_UART_DEV_NAME!=UART_CONSOLE_ON_DEV_NAME || !LOG_BACKEND_UART)
depends on NET_L2_OPENTHREAD
help
When enabled, backend will use OpenThread dedicated SPINEL protocol for logging.
This protocol is byte oriented and wrapps given messages into serial frames.
Backend should be enabled only to OpenThread purposes and when UART backend is disabled
or works on antoher UART device to avoid interference.
if LOG_BACKEND_SPINEL
config LOG_BACKEND_SPINEL_BUFFER_SIZE
int "Size of reserved up-buffer for logger output."
default 64
help
Specify reserved size of up-buffer used for logger output.
endif # LOG_BACKEND_SPINEL
config LOG_BACKEND_NATIVE_POSIX
bool "Enable native backend"
depends on ARCH_POSIX
help
Enable backend in native_posix
config LOG_BACKEND_XTENSA_SIM
bool "Enable xtensa simulator backend"
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
depends on SOC_XTENSA_SAMPLE_CONTROLLER || SOC_FAMILY_INTEL_ADSP
help
Enable backend in xtensa simulator
config LOG_BACKEND_XTENSA_OUTPUT_BUFFER_SIZE
int "Size of the output buffer"
default 16
depends on LOG_BACKEND_XTENSA_SIM
help
Buffer is used by log_output module for preparing output data (e.g.
string formatting).
config LOG_BACKEND_NET
bool "Enable networking backend"
depends on NETWORKING
select NET_CONTEXT_NET_PKT_POOL
help
Send syslog messages to network server.
See RFC 5424 (syslog protocol) and RFC 5426 (syslog over UDP)
specifications for details.
if LOG_BACKEND_NET
config LOG_BACKEND_NET_SERVER
string "Syslog server IP address"
help
This can be either IPv4 or IPv6 address.
Server listen UDP port number can be configured here too.
Following syntax is supported:
192.0.2.1:514
192.0.2.42
[2001:db8::1]:514
[2001:db8::2]
2001:db::42
config LOG_BACKEND_NET_MAX_BUF
int "How many network buffers to allocate for sending messages"
range 3 256
default 3
help
Each syslog message should fit into a network packet that will be
sent to server. This number tells how many syslog messages can be
in transit to the server.
config LOG_BACKEND_NET_MAX_BUF_SIZE
int "Max syslog message size"
range 64 1180
default 1180 if NET_IPV6
default 480 if NET_IPV4
default 256
help
As each syslog message needs to fit to UDP packet, set this value
so that messages are not truncated.
The RFC 5426 recommends that for IPv4 the size is 480 octets and for
IPv6 the size is 1180 octets. As each buffer will use RAM, the value
should be selected so that typical messages will fit the buffer.
config LOG_BACKEND_NET_SYST_ENABLE
bool "Enable networking syst backend"
depends on LOG_MIPI_SYST_ENABLE
help
When enabled backend is using networking to output syst format logs.
config LOG_BACKEND_NET_AUTOSTART
bool "Automatically start networking backend"
default y if NET_CONFIG_NEED_IPV4 || NET_CONFIG_NEED_IPV6
help
When enabled automatically start the networking backend on
application start. If no routes to the logging server are available
on application startup, this must be set to n and the backend must be
started by the application later on. Otherwise the logging
thread might block.
endif # LOG_BACKEND_NET
config LOG_BACKEND_ADSP
bool "Enable Intel ADSP buffer backend"
depends on SOC_FAMILY_INTEL_ADSP
help
Enable backend for the host trace protocol of the Intel ADSP
family of audio processors
config LOG_BACKEND_SHOW_COLOR
bool "Enable colors in the backend"
depends on LOG_BACKEND_UART || LOG_BACKEND_NATIVE_POSIX || LOG_BACKEND_RTT \
|| LOG_BACKEND_SWO || LOG_BACKEND_XTENSA_SIM
default y
help
When enabled selected backend prints errors in red and warning in yellow.
config LOG_BACKEND_FORMAT_TIMESTAMP
bool "Enable timestamp formatting in the backend"
depends on LOG_BACKEND_UART || LOG_BACKEND_NATIVE_POSIX || LOG_BACKEND_RTT \
|| LOG_BACKEND_SWO || LOG_BACKEND_XTENSA_SIM
default y
help
When enabled timestamp is formatted to hh:mm:ss:ms,us.
endif # LOG_MINIMAL
endif # LOG