[Sound-open-firmware] sof-logger status on SOF with Zephyr
Hi Liam,
What is the plan for sof-logger with SOF-Zephyr? Is it working on Intel platforms? We are now planning on looking at it and we want to understand if it will be used in the future.
For now on i.MX the logger is disabled.
thanks, daniel.
On Mon, 2022-08-29 at 10:35 +0000, Daniel Baluta wrote:
Hi Liam,
What is the plan for sof-logger with SOF-Zephyr? Is it working on Intel platforms? We are now planning on looking at it and we want to understand if it will be used in the future.
For now on i.MX the logger is disabled.
Zephyr uses a Mipi SYS-T standards for logging and tracing and hence SOF will also use the same standard when built with Zephyr.
https://www.mipi.org/specifications/sys-t
There is already some tooling available in Zephyr and SOF should transition to this when everything is ready. PRs (e.g. mtrace) should be merging this next/week.
We will have a period of transition where we will need to manage both on main (stable branches would still use the old logger). I think Kai has a workaround in place to get the Zephyr log data out atm until all the PRs are merged.
Liam
Hi,
On Mon, 29 Aug 2022, Girdwood, Liam R wrote:
On Mon, 2022-08-29 at 10:35 +0000, Daniel Baluta wrote:
What is the plan for sof-logger with SOF-Zephyr? Is it working on Intel platforms?
we do have sof-logger working as well, but this has the big limitation in that you will only see logs from SOF. E.g. all logs in Zephyr side drivers and core OS code are not visible in sof-logger output.
So you can now also compile SOF with CONFIG_ZEPHYR_LOG=y which routes all SOF-side log statements to Zephyr logging subsystem.
For Intel HW, the simplest way to get these logs out are with CONFIG_LOG_BACKEND_ADSP=y This routes an ascii/text trace over SRAM window 2, so you can do "cat /sys/kernel/debug/sof/etrace" to get the logs out with the SOF Linux driver.
But this is still not on par with the old sof-logger, so we are working on better backends and...:
Zephyr uses a Mipi SYS-T standards for logging and tracing and hence SOF will also use the same standard when built with Zephyr.
For encoding, we are planning to use Sys-T and this is already well supported in Zephyr upstream (CONFIG_LOG_MIPI_SYST_ENABLE). We've also tested other encodings, including plain ascii and the Zephyr log dictionary.
For log transport, we've just added probes support: https://github.com/thesofproject/sof/pull/6072 (merged)
.. this should be reusable across multiple hw targets. Basicly we use the same transport as is used to transfer PCM probes, to get logs out, and the logs encoding can be anything that Zephyr supports.
The tooling will require some love still. Currently to get old sof-logger's user-experience (but with Zephyr logs included), you need to use a combination of debugfs, sof-probes and crecord, but we are planning to improve the tooling still.
Br, Kai
participants (3)
-
Daniel Baluta
-
Girdwood, Liam R
-
Kai Vehmanen