From 801893975a0134139c051a4f8674e07ce5f7090c Mon Sep 17 00:00:00 2001 From: Karol Trzcinski Date: Tue, 20 Oct 2020 13:23:47 +0200 Subject: [PATCH 1/4] logger: filtering: Add note about verbose firmware build Logger can't show trace removed during compilation time, add note with this information. Signed-off-by: Karol Trzcinski --- developer_guides/debugability/logger/index.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/developer_guides/debugability/logger/index.rst b/developer_guides/debugability/logger/index.rst index db19d11f..1d6c1fa5 100644 --- a/developer_guides/debugability/logger/index.rst +++ b/developer_guides/debugability/logger/index.rst @@ -190,6 +190,9 @@ A similar example may be prepared for components on a particular pipeline: sof-loggerr -l ldc_file -t -Fc=* -Fv=*1.* +.. note:: + To track verbose message use firmware build with selected "Trace verbose" + option under "Trace" menu. Detailed description -------------------- From e8d3b38900f91498e920d764855715f9776a1b92 Mon Sep 17 00:00:00 2001 From: Karol Trzcinski Date: Tue, 20 Oct 2020 13:25:30 +0200 Subject: [PATCH 2/4] logger: filter: Warn about power gating and filter reset This may be not obvious for filter user, that keeping settings in firmware runtime memory is related with settings reset after firmware reboot on power gating. Signed-off-by: Karol Trzcinski --- developer_guides/debugability/logger/index.rst | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/developer_guides/debugability/logger/index.rst b/developer_guides/debugability/logger/index.rst index 1d6c1fa5..090824ca 100644 --- a/developer_guides/debugability/logger/index.rst +++ b/developer_guides/debugability/logger/index.rst @@ -194,6 +194,23 @@ A similar example may be prepared for components on a particular pipeline: To track verbose message use firmware build with selected "Trace verbose" option under "Trace" menu. +Active trace filters are stored in firmware runtime memory, so after firmware +restart (eg. after power gating in sleep mode) filters settings will be reset. +Consider disabling power gating during your debug session. +It may be done by: + +.. code:: bash + + sudo su + echo on >/sys/devices/pci0000\:00/0000\:$(lspci -nn | grep "audio contoller" | awk '{print $1;}')/power/control + +.. note:: + Current device power status may be read by this command: + + .. code:: bash + + cat /sys/devices/pci0000\:00/0000\:$(lspci -nn | grep "audio controller" | awk '{print $1;}')/power/runtime_status + Detailed description -------------------- From 3ace09980603e2d110b848a8d0a4edc563437520 Mon Sep 17 00:00:00 2001 From: Karol Trzcinski Date: Tue, 20 Oct 2020 13:30:48 +0200 Subject: [PATCH 3/4] logger: filter: Add note that already sent traces won't be filtered. Filtering mechanism works mainly on firmware side, so only upcoming traces will be affected new filtering settings. Signed-off-by: Karol Trzcinski --- developer_guides/debugability/logger/index.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/developer_guides/debugability/logger/index.rst b/developer_guides/debugability/logger/index.rst index 090824ca..8caabd3a 100644 --- a/developer_guides/debugability/logger/index.rst +++ b/developer_guides/debugability/logger/index.rst @@ -211,6 +211,9 @@ It may be done by: cat /sys/devices/pci0000\:00/0000\:$(lspci -nn | grep "audio controller" | awk '{print $1;}')/power/runtime_status +Logger trace filtration affect only traces sent after filter setup, so traces +already stored on kernel side will not be affected. + Detailed description -------------------- From d68fe27bc7d5ad1fee46b208aa26be13bd432de7 Mon Sep 17 00:00:00 2001 From: Karol Trzcinski Date: Thu, 22 Oct 2020 10:00:19 +0200 Subject: [PATCH 4/4] logerer: filter: Describe filters behavior for multiple logger runs Noticeable consequence of keeping active filter state in firmware, is keeping old setup during logger reset. Signed-off-by: Karol Trzcinski --- developer_guides/debugability/logger/index.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/developer_guides/debugability/logger/index.rst b/developer_guides/debugability/logger/index.rst index 8caabd3a..68ac83a2 100644 --- a/developer_guides/debugability/logger/index.rst +++ b/developer_guides/debugability/logger/index.rst @@ -214,6 +214,11 @@ It may be done by: Logger trace filtration affect only traces sent after filter setup, so traces already stored on kernel side will not be affected. +Filters are setup incrementally, so when logger will be run-up twice with +different settings, then filters from first run will not be restored to default +state but can be replaced by new one. +To reset filters to default state, firmware reset is needed. + Detailed description --------------------