alc262 streams synchronization

From: Jonathan . Klee
Date: Fri Dec 07 2012 - 11:21:52 EST


I have faced the following issue with alc262 codec on kernel 3.2.34 :

Trying to play a file through vlc (libvlc/emotion), I did not have any sound on the speakers. Having a look at my kernel logs, I have noticed 2 calls to snd_hda_codec_setup_stream() separated by a call to __snd_hda_codec_cleanup_stream().

Nevertheless, adding some debug prints, I have noticed only one call to snd_hda_codec_write() in snd_hda_codec_setup_stream() to set the stream id. It seems like the stream id of the codec was not synchronized with the flag p->active the kernel maintains for the codec.

Setting the no_sticky_stream field in patch_alc262.c solved the issue. What about setting that field ? Am I the only one who faced that issue ?

--- a/sound/pci/hda/patch_realtek.c 2012-12-04 12:46:22.000000000 +0100
+++ b/sound/pci/hda/patch_realtek.c 2012-12-04 13:52:37.000000000 +0100
@@ -4490,6 +4490,8 @@
if (spec == NULL)
return -ENOMEM;

+ codec->no_sticky_stream=1;
+ printk(KERN_INFO "hda_codec: no sticky stream set\n");
codec->spec = spec;

Jonathan Klee

Embedded Software Engineer
Zodiac IFE
Tel: +33 1 61 34 11 71
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at