Bug 66081
Summary: | No sound on Asus W7J laptop | ||
---|---|---|---|
Product: | Drivers | Reporter: | Andrey Lipaev (lipaev) |
Component: | Sound(ALSA) | Assignee: | Jaroslav Kysela (perex) |
Status: | RESOLVED CODE_FIX | ||
Severity: | normal | CC: | tiwai |
Priority: | P1 | ||
Hardware: | i386 | ||
OS: | Linux | ||
Kernel Version: | 3.2.45 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
output of alsa_utils_alsa-info.sh for 3.2.45 kernel
the output from alsa_utils_alsa-info.sh for 3.12 Test fix patch The output of alsa_utils_alsa-info.sh Old nice 3.0.85 sings greate both speakers and phones. The output from alsa_utils_alsa-info.sh after all hda... commands executed Fix patch for outputs Fixed fix patch something still wrong after the second patch Corrected patch |
Description
Andrey Lipaev
2013-11-28 16:45:24 UTC
Too old kernel. Please try 3.12. Created attachment 116591 [details]
the output from alsa_utils_alsa-info.sh for 3.12
kernel 3.12.0 - no sound still I can try 3.12.1 if you think it will help Thanks. Could you try to run the following and retest? hda-verb /dev/snd/hwC0D0 0x0f SET_PIN_WID 0x45 hda-verb should be included in the recent alsa-utils. Or it can be taken from the URL found in Documentation/sound/alsa/HD-Audio.txt. Also, which output did you test? From the headphone or from the built-in speaker? If the hda-verb command above works, the patch below should fix the issue permanently. Created attachment 116601 [details]
Test fix patch
Thanks, but it doesn't help. I found myself easy to rebuild the kernel with the patch proposed. The headphone and the built-in speaker are both quiet (no sound). The output of alsa_utils_alsa-info.sh for patched 3.12 attached. Created attachment 116651 [details]
The output of alsa_utils_alsa-info.sh
I found hda-verb. Actually it sits in alsa-tools. I can try it as well, but now it seems no sense? Next try? :) Should I revert to original stock 3.12? Do you still have the old working kernel (3.0 or 3.1)? If you can run such a kernel and confirm that the sound is working on them, please test it and take alsa-info.sh output again while you're listening. It'd be helpful for comparing with the latest results. Created attachment 116661 [details]
Old nice 3.0.85 sings greate both speakers and phones.
Thanks for a quick action! Maybe we should tackle from a different direction, as long as you have a good running kernel. Try the following on 3.0.x kernel. Test playback for each command until you hit the silence: - hda-verb /dev/snd/hwC0D0 0x04 SET_AMP 0xb080 - hda-verb /dev/snd/hwC0D0 0x05 SET_AMP 0xb080 - hda-verb /dev/snd/hwC0D0 0x06 SET_AMP 0xb080 - hda-verb /dev/snd/hwC0D0 0x1a SET_AMP 0x7380 - hda-verb /dev/snd/hwC0D0 0x0b SET_PIN_WID 0x40 - hda-verb /dev/snd/hwC0D0 0x0d SET_PIN_WID 0x24 - hda-verb /dev/snd/hwC0D0 0x10 SET_PIN_WID 0x24 - hda-verb /dev/snd/hwC0D0 0x17 SET_AMP 0x7080 - hda-verb /dev/snd/hwC0D0 0x18 SET_AMP 0x7080 - hda-verb /dev/snd/hwC0D0 0x19 SET_AMP 0x7080 - hda-verb /dev/snd/hwC0D0 0x1c SET_AMP 0x7180 It sings still after all commands given :( Interesting. Could you take alsa-info.sh output again after all commands applied? Created attachment 116671 [details]
The output from alsa_utils_alsa-info.sh after all hda... commands executed
Sorry, there were typos in SET_PIN_WID values. Try the following: hda-verb /dev/snd/hwC0D0 0x0b SET_PIN_WID 0xc0 hda-verb /dev/snd/hwC0D0 0x0d SET_PIN_WID 0x21 hda-verb /dev/snd/hwC0D0 0x10 SET_PIN_WID 0x20 hda-verb /dev/snd/hwC0D0 0x0f SET_PIN_WID 0x00 In addition, performing below should put the completely same state: hda-verb /dev/snd/hwC0D0 0x14 SET_AMP 0x7180 hda-verb /dev/snd/hwC0D0 0x15 SET_AMP 0x7080 hda-verb /dev/snd/hwC0D0 0x17 SET_AMP 0x7180 hda-verb /dev/snd/hwC0D0 0x18 SET_AMP 0x7180 hda-verb /dev/snd/hwC0D0 0x19 SET_AMP 0x7180 hda-verb /dev/snd/hwC0D0 0x1a SET_AMP 0x7280 "hda-verb /dev/snd/hwC0D0 0x10 SET_PIN_WID 0x20" - killed sound on 3.0.85 after the second commands set it's still silent. Great, finally nailed down! (I wonder what did ASUS engineers smoke :) Putting 0x24 instead of 0x20 should recover the sound. Please test it. Also, please check whether the hack for NID 0x0f is still needed. That is, hda-verb /dev/snd/hwC0D0 0x0f SET_PIN_WID 0x00 does it break sound output on 3.0.x? If this has no influence, throw away my previous patch. The next step will be to boot 3.12 (no matter whether patched for NID 0x0f), and run: hda-verb /dev/snd/hwC0D0 0x10 SET_PIN_WID 0x24 and check whether the sound works now. Great! :) in 3.12 execution of "hda-verb /dev/snd/hwC0D0 0x10 SET_PIN_WID 0x24" gives voice. After that i run "hda-verb /dev/snd/hwC0D0 0x0f SET_PIN_WID 0x00" and it still sings. Thanks! Can you prepare patch for kernel? I hope it should work for my distro kernel as well? My distro slack 14.1 runs 3.10.17. Sorry! but seems micro also connected wrong? (In reply to lipaev from comment #21) > Sorry! but seems micro also connected wrong? What do you mean? The microphone input doesn't work? Created attachment 116691 [details]
Fix patch for outputs
(In reply to Takashi Iwai from comment #22) > (In reply to lipaev from comment #21) > > Sorry! but seems micro also connected wrong? > > What do you mean? The microphone input doesn't work? looks like, trying to check more careful. what would be the correct testing way from your pov? (In reply to lipaev from comment #24) > (In reply to Takashi Iwai from comment #22) > > (In reply to lipaev from comment #21) > > > Sorry! but seems micro also connected wrong? > > > > What do you mean? The microphone input doesn't work? > > looks like, trying to check more careful. > what would be the correct testing way from your pov? Sorry micro works. mistyping :( At best, use bare arecord and amixer commands: - amixer -c0 set Capture cap 12dB - amixer -c0 set Mic cap - arecord -Dhw -fdat -vv foo.wav Are you testing with the built-in mic, or a mic jack? (In reply to lipaev from comment #25) > (In reply to lipaev from comment #24) > > (In reply to Takashi Iwai from comment #22) > > > (In reply to lipaev from comment #21) > > > > Sorry! but seems micro also connected wrong? > > > > > > What do you mean? The microphone input doesn't work? > > > > looks like, trying to check more careful. > > what would be the correct testing way from your pov? > > Sorry micro works. mistyping :( OK, it's fine as long as it's working :) If everything is OK, I'm going to merge the patch in comment 23 to the upstream. (In reply to Takashi Iwai from comment #27) > (In reply to lipaev from comment #25) > > (In reply to lipaev from comment #24) > > > (In reply to Takashi Iwai from comment #22) > > > > (In reply to lipaev from comment #21) > > > > > Sorry! but seems micro also connected wrong? > > > > > > > > What do you mean? The microphone input doesn't work? > > > > > > looks like, trying to check more careful. > > > what would be the correct testing way from your pov? > > > > Sorry micro works. mistyping :( > > OK, it's fine as long as it's working :) > If everything is OK, I'm going to merge the patch in comment 23 to the > upstream. Shell i test the patch first? It would be great. Also, you can give you credit as tested-by tag, Reported-and-tested-by: Foo Bar <your@mail.com> in the patch changelog. CC [M] sound/pci/hda/patch_realtek.o sound/pci/hda/patch_realtek.c:4230:3: error: ‘ALC660_FIXUP_ASUS_W7J’ undeclared here (not in a function) [ALC660_FIXUP_ASUS_W7J] = { ^ sound/pci/hda/patch_realtek.c:4230:2: error: array index in initializer not of integer type [ALC660_FIXUP_ASUS_W7J] = { ^ sound/pci/hda/patch_realtek.c:4230:2: error: (near initialization for ‘alc861_fixups’) make[3]: *** [sound/pci/hda/patch_realtek.o] Error 1 make[2]: *** [sound/pci/hda] Error 2 make[1]: *** [sound/pci] Error 2 make: *** [sound] Error 2 seems ALC660_FIXUP_ASUS_W7J forgotten to put in: -------------------------------- /* Pin config fixes */ enum { ALC861_FIXUP_FSC_AMILO_PI1505, ALC861_FIXUP_AMP_VREF_0F, ALC861_FIXUP_NO_JACK_DETECT, ALC861_FIXUP_ASUS_A6RP, ALC660_FIXUP_ASUS_W7J, }; ----------------------------------- Oops, yes, I attached the version before I refreshed. The fixed one is below. (It's exactly as same as what you added in comment 31.) Created attachment 116711 [details]
Fixed fix patch
Created attachment 116751 [details]
something still wrong after the second patch
Sorry, but something is going wrong still :(
I applied your patch to vanilla 3.12.0,
recompile it and install modules and kernel itself.
Boot... no sound :(
After
hda-verb /dev/snd/hwC0D0 0x10 SET_PIN_WID 0x24
sound came back. ???
alsa-info i did run afterward (output included).
Should i reboot and run "alsa-info" before "hda-verb"?
My bad, there was one line missing in the fixup code. The corrected patch is attached below. Sorry for inconvenience. Created attachment 116761 [details]
Corrected patch
Thank you. It works nice now. I guess it should work as well for my distro (slack 14.1) original kernel (3.10.17)? You said it would be good to put a credit. How should i do it? Probably i should do it somewhere in bugzilla? can you please give me a hint where? Thank you once again :) If you'll find something interesting to test let me know please. Just fill a line below with real information in the bugzilla comment: Reported-and-tested-by: Your Name <your@name.com> Then I'll include the line in the patch to be merged to the upstream. Reported-and-tested-by: Andrey Lipaev lipaev@mail.ru Thanks. The patch is merged now to sound git tree. It'll be included in 3.13-rc3 (rc2 request was already sent), and will be backported to stable kernels appropriately. |