aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/sound
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2011-08-05 06:49:46 -0400
committerTakashi Iwai <tiwai@suse.de>2011-08-05 06:49:46 -0400
commitd11b7fa3d5b6d4b3a730f563e7b14dfc859c40c6 (patch)
treee83ed31b9e89604ecd3951aaacb4310c95988300 /Documentation/sound
parent2ae66c26550cd94b0e2606a9275eb0ab7070ad0e (diff)
ALSA: hda - Add documentation for tracepoints
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'Documentation/sound')
-rw-r--r--Documentation/sound/alsa/HD-Audio.txt47
1 files changed, 47 insertions, 0 deletions
diff --git a/Documentation/sound/alsa/HD-Audio.txt b/Documentation/sound/alsa/HD-Audio.txt
index c82beb00763..ba2a155f3a3 100644
--- a/Documentation/sound/alsa/HD-Audio.txt
+++ b/Documentation/sound/alsa/HD-Audio.txt
@@ -524,6 +524,53 @@ power-saving. See /sys/module/snd_hda_intel/parameters/power_save to
524check the current value. If it's non-zero, the feature is turned on. 524check the current value. If it's non-zero, the feature is turned on.
525 525
526 526
527Tracepoints
528~~~~~~~~~~~
529The hd-audio driver gives a few basic tracepoints.
530`hda:hda_send_cmd` traces each CORB write while `hda:hda_get_response`
531traces the response from RIRB (only when read from the codec driver).
532`hda:hda_bus_reset` traces the bus-reset due to fatal error, etc, and
533`hda:hda_power_down` and `hda:hda_power_up` trace the power down/up
534via power-saving behavior.
535
536Enabling all tracepoints can be done like
537------------------------------------------------------------------------
538 # echo 1 > /sys/kernel/debug/tracing/events/hda/enable
539------------------------------------------------------------------------
540then after some commands, you can traces from
541/sys/kernel/debug/tracing/trace file. For example, when you want to
542trace what codec command is sent, enable the tracepoint like:
543------------------------------------------------------------------------
544 # cat /sys/kernel/debug/tracing/trace
545 # tracer: nop
546 #
547 # TASK-PID CPU# TIMESTAMP FUNCTION
548 # | | | | |
549 <...>-7807 [002] 105147.774889: hda_send_cmd: [0:0] val=e3a019
550 <...>-7807 [002] 105147.774893: hda_send_cmd: [0:0] val=e39019
551 <...>-7807 [002] 105147.999542: hda_send_cmd: [0:0] val=e3a01a
552 <...>-7807 [002] 105147.999543: hda_send_cmd: [0:0] val=e3901a
553 <...>-26764 [001] 349222.837143: hda_send_cmd: [0:0] val=e3a019
554 <...>-26764 [001] 349222.837148: hda_send_cmd: [0:0] val=e39019
555 <...>-26764 [001] 349223.058539: hda_send_cmd: [0:0] val=e3a01a
556 <...>-26764 [001] 349223.058541: hda_send_cmd: [0:0] val=e3901a
557------------------------------------------------------------------------
558Here `[0:0]` indicates the card number and the codec address, and
559`val` shows the value sent to the codec, respectively. The value is
560a packed value, and you can decode it via hda-decode-verb program
561included in hda-emu package below. For example, the value e3a019 is
562to set the left output-amp value to 25.
563------------------------------------------------------------------------
564 % hda-decode-verb 0xe3a019
565 raw value = 0x00e3a019
566 cid = 0, nid = 0x0e, verb = 0x3a0, parm = 0x19
567 raw value: verb = 0x3a0, parm = 0x19
568 verbname = set_amp_gain_mute
569 amp raw val = 0xa019
570 output, left, idx=0, mute=0, val=25
571------------------------------------------------------------------------
572
573
527Development Tree 574Development Tree
528~~~~~~~~~~~~~~~~ 575~~~~~~~~~~~~~~~~
529The latest development codes for HD-audio are found on sound git tree: 576The latest development codes for HD-audio are found on sound git tree: