summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch')
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch132
1 files changed, 132 insertions, 0 deletions
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch b/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch
new file mode 100644
index 0000000000..6ea10ffc91
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch
@@ -0,0 +1,132 @@
1From d8379ec6365a925db33cae94fb6783cdbdb6a922 Mon Sep 17 00:00:00 2001
2From: Kienan Stewart <kstewart@efficios.com>
3Date: Mon, 25 Mar 2024 09:40:29 -0400
4Subject: [PATCH 2/4] Fix: ASoC add component to set_bias_level events in linux
5 6.9-rc1
6
7See upstream commit:
8
9 commit 6ef46a69ec32fe1cf56de67742fcd01af4bf48af
10 Author: Luca Ceresoli <luca.ceresoli@bootlin.com>
11 Date: Wed Mar 6 10:30:00 2024 +0100
12
13 ASoC: trace: add component to set_bias_level trace events
14
15 The snd_soc_bias_level_start and snd_soc_bias_level_done trace events
16 currently look like:
17
18 aplay-229 [000] 1250.140778: snd_soc_bias_level_start: card=vscn-2046 val=1
19 aplay-229 [000] 1250.140784: snd_soc_bias_level_done: card=vscn-2046 val=1
20 aplay-229 [000] 1250.140786: snd_soc_bias_level_start: card=vscn-2046 val=2
21 aplay-229 [000] 1250.140788: snd_soc_bias_level_done: card=vscn-2046 val=2
22 kworker/u8:1-21 [000] 1250.140871: snd_soc_bias_level_start: card=vscn-2046 val=1
23 kworker/u8:0-11 [000] 1250.140951: snd_soc_bias_level_start: card=vscn-2046 val=1
24 kworker/u8:0-11 [000] 1250.140956: snd_soc_bias_level_done: card=vscn-2046 val=1
25 kworker/u8:0-11 [000] 1250.140959: snd_soc_bias_level_start: card=vscn-2046 val=2
26 kworker/u8:0-11 [000] 1250.140961: snd_soc_bias_level_done: card=vscn-2046 val=2
27 kworker/u8:1-21 [000] 1250.167219: snd_soc_bias_level_done: card=vscn-2046 val=1
28 kworker/u8:1-21 [000] 1250.167222: snd_soc_bias_level_start: card=vscn-2046 val=2
29 kworker/u8:1-21 [000] 1250.167232: snd_soc_bias_level_done: card=vscn-2046 val=2
30 kworker/u8:0-11 [000] 1250.167440: snd_soc_bias_level_start: card=vscn-2046 val=3
31 kworker/u8:0-11 [000] 1250.167444: snd_soc_bias_level_done: card=vscn-2046 val=3
32 kworker/u8:1-21 [000] 1250.167497: snd_soc_bias_level_start: card=vscn-2046 val=3
33 kworker/u8:1-21 [000] 1250.167506: snd_soc_bias_level_done: card=vscn-2046 val=3
34
35 There are clearly multiple calls, one per component, but they cannot be
36 discriminated from each other.
37
38 Change the ftrace events to also print the component name, to make it clear
39 which part of the code is involved. This requires changing the passed value
40 from a struct snd_soc_card, where the DAPM context is not kwown, to a
41 struct snd_soc_dapm_context where it is obviously known but the a card
42 pointer is also available.
43
44 With this change, the resulting trace becomes:
45
46 aplay-247 [000] 1436.357332: snd_soc_bias_level_start: card=vscn-2046 component=(none) val=1
47 aplay-247 [000] 1436.357338: snd_soc_bias_level_done: card=vscn-2046 component=(none) val=1
48 aplay-247 [000] 1436.357340: snd_soc_bias_level_start: card=vscn-2046 component=(none) val=2
49 aplay-247 [000] 1436.357343: snd_soc_bias_level_done: card=vscn-2046 component=(none) val=2
50 kworker/u8:4-215 [000] 1436.357437: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=1
51 kworker/u8:5-231 [000] 1436.357518: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=1
52 kworker/u8:5-231 [000] 1436.357523: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=1
53 kworker/u8:5-231 [000] 1436.357526: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=2
54 kworker/u8:5-231 [000] 1436.357528: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=2
55 kworker/u8:4-215 [000] 1436.383217: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=1
56 kworker/u8:4-215 [000] 1436.383221: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=2
57 kworker/u8:4-215 [000] 1436.383231: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=2
58 kworker/u8:5-231 [000] 1436.383468: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=3
59 kworker/u8:5-231 [000] 1436.383472: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=3
60 kworker/u8:4-215 [000] 1436.383503: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=3
61 kworker/u8:4-215 [000] 1436.383513: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=3
62
63Upstream-Status: Backport [303434ab Fix: ASoC add component to set_bias_level events in linux 6.9-rc1]
64
65Change-Id: I959f1680c002acdf29828b968d3975247f5433d8
66Signed-off-by: Kienan Stewart <kstewart@efficios.com>
67Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
68---
69 include/instrumentation/events/asoc.h | 36 +++++++++++++++++++++++++++
70 1 file changed, 36 insertions(+)
71
72Index: lttng-modules-2.13.12/include/instrumentation/events/asoc.h
73===================================================================
74--- lttng-modules-2.13.12.orig/include/instrumentation/events/asoc.h
75+++ lttng-modules-2.13.12/include/instrumentation/events/asoc.h
76@@ -10,6 +10,7 @@
77 #include <lttng/kernel-version.h>
78
79 #define DAPM_DIRECT "(direct)"
80+#define DAPM_COMPONENT_NONE "(none)"
81
82 #ifndef _TRACE_ASOC_DEF
83 #define _TRACE_ASOC_DEF
84@@ -119,6 +120,40 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc
85 )
86 #endif
87
88+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0))
89+LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_context,
90+
91+ TP_PROTO(struct snd_soc_dapm_context *dapm, int val),
92+
93+ TP_ARGS(dapm, val),
94+
95+ TP_FIELDS(
96+ ctf_string(name, dapm->card->name)
97+ ctf_string(component, dapm->component ? dapm->component->name : DAPM_COMPONENT_NONE)
98+ ctf_integer(int, val, val)
99+ )
100+)
101+
102+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_context, snd_soc_bias_level_start,
103+
104+ asoc_snd_soc_bias_level_start,
105+
106+ TP_PROTO(struct snd_soc_dapm_context *dapm, int val),
107+
108+ TP_ARGS(dapm, val)
109+
110+)
111+
112+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_context, snd_soc_bias_level_done,
113+
114+ asoc_snd_soc_bias_level_done,
115+
116+ TP_PROTO(struct snd_soc_dapm_context *dapm, int val),
117+
118+ TP_ARGS(dapm, val)
119+
120+)
121+#else
122 LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_card,
123
124 TP_PROTO(struct snd_soc_card *card, int val),
125@@ -150,6 +185,7 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc
126 TP_ARGS(card, val)
127
128 )
129+#endif
130
131 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0))
132 LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_basic,