[alsa-devel] [PATCH] Re: iec958 switch uneffective while playing ac3 stream

Dominique Dumont domi.dumont at free.fr
Tue Apr 10 20:00:29 CEST 2007


Takashi Iwai <tiwai at suse.de> writes:

>> These traces were invaluable to figure out what was going on when I
>> hunted for the spdif bug. I believe it will also be valuable if people
>> have to look for other hda bugs.
>
> I think snd_printdd() isn't appropriate for this because you cannot
> choose it at runtime but only at build time.  My preference is to add 
> a debug module option (with ifdef CONFIG_SND_DEBUG) and check the
> option value there.

Something like this ?

Signed off by: Dominique Dumont <domi.dumont at free.fr>

diff -r 42321871a7dc pci/hda/hda_codec.c
--- a/pci/hda/hda_codec.c	Thu Apr 05 17:08:57 2007 +0200
+++ b/pci/hda/hda_codec.c	Tue Apr 10 19:52:01 2007 +0200
@@ -38,6 +38,12 @@ MODULE_DESCRIPTION("Universal interface 
 MODULE_DESCRIPTION("Universal interface for High Definition Audio Codec");
 MODULE_LICENSE("GPL");
 
+static int trace_codec_commands = 0 ;
+
+#ifdef CONFIG_SND_DEBUG
+module_param(trace_codec_commands, bool, 0444);
+MODULE_PARM_DESC(trace_codec_commands, "Trace communication with hda codec (for debugging only).");
+#endif   /* CONFIG_SND_DEBUG */
 
 /*
  * vendor / preset table
@@ -87,6 +93,12 @@ unsigned int snd_hda_codec_read(struct h
 	else
 		res = (unsigned int)-1;
 	mutex_unlock(&codec->bus->cmd_mutex);
+
+	if (trace_codec_commands)
+	  snd_printk(KERN_INFO
+		     "hda_intel codec read: nid %x direct %x verb %x parm %x -> %x\n",
+		     nid, direct, verb, parm, res) ;
+
 	return res;
 }
 
@@ -108,6 +120,12 @@ int snd_hda_codec_write(struct hda_codec
 			 unsigned int verb, unsigned int parm)
 {
 	int err;
+
+	if (trace_codec_commands)
+	  snd_printk(KERN_INFO
+		     "hda_intel codec write: nid %x direct %x verb %x parm %x\n",
+		     nid, direct, verb, parm) ;
+
 	mutex_lock(&codec->bus->cmd_mutex);
 	err = codec->bus->ops.command(codec, nid, direct, verb, parm);
 	mutex_unlock(&codec->bus->cmd_mutex);


More information about the Alsa-devel mailing list