Bug 66521
Summary: | Differing playback devices on ASUS M3N78-VM motherboard | ||
---|---|---|---|
Product: | Drivers | Reporter: | Ray DeCampo (ray) |
Component: | Sound(ALSA) | Assignee: | Jaroslav Kysela (perex) |
Status: | NEW --- | ||
Severity: | high | CC: | superquad.vortex2, tiwai |
Priority: | P1 | ||
Hardware: | x86-64 | ||
OS: | Linux | ||
Kernel Version: | 3.11.0 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
alsa-info.sh script output for kernel 3.8.0-32
alsa-info.sh script output for kernel 3.11.0-13 |
Description
Ray DeCampo
2013-12-04 18:30:47 UTC
The device number change was unavoidable because we have now a proper support of HDMI on the VIA codec chip, too. If this is actually a dead port, it's a problem of BIOS that it leaves the pin active. You can disable the pin by a firmware "patch". But, in general, PulseAudio and others should be able to pick up the secondary digital device (hdmi:0,1), which is the Nvidia HDMI. In anyway, please give alsa-info.sh output here. Run it with --no-upload option, and attach the outut (don't paste). Created attachment 117691 [details]
alsa-info.sh script output for kernel 3.8.0-32
Created attachment 117701 [details]
alsa-info.sh script output for kernel 3.11.0-13
Do the red light in the optical spdif turn on/off when you toggle "IEC958 Playback Switch" ? Node 0x12 [Audio Output] wcaps 0x611: Stereo Digital Control: name="IEC958 Playback Con Mask", index=0, device=0 Control: name="IEC958 Playback Pro Mask", index=0, device=0 Control: name="IEC958 Playback Default", index=0, device=0 Control: name="IEC958 Playback Switch", index=0, device=0 Control: name="IEC958 Default PCM Playback Switch", index=0, device=0 Device: name="VT1708B 8-Ch Digital", type="HDMI", device=3 https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/?id=98aa34c0501f78bf7d3de82d96d27f4a2b450477 this patch only mention HDMI support with second S/PDIF ony vt1708s and vt1702 vt1708b only has one S/PDIF My gnome-alsamixer interface has checkboxes for "IEC958", "ICE958 Default PCM" and "ICE958", in that order (yes one is duplicated). By default the first two were selected. I tried all eight permutations of the checkboxes and in no case did the red light for the optical SPDIF engage. https://launchpadlibrarian.net/158568405/alsa-info.hdajackreset.txt !!ALSA Version !!------------ Driver version: k3.11.0-14-generic Library version: 1.0.25 Utilities version: 1.0.27.1 have you ask ubuntu-audio-dev how to fix alsa-lib since it should be 1.0.27 for ubuntu 13.10 ? the driver get back digital spdif device Node 0x12 [Audio Output] wcaps 0x611: Stereo Digital Control: name="IEC958 Playback Con Mask", index=0, device=0 Control: name="IEC958 Playback Pro Mask", index=0, device=0 Control: name="IEC958 Playback Default", index=0, device=0 Control: name="IEC958 Playback Switch", index=0, device=0 Control: name="IEC958 Default PCM Playback Switch", index=0, device=0 Device: name="VT1708B 8-Ch Digital", type="SPDIF", device=1 but those iec958 controls are index=1 Node 0x04 [Audio Output] wcaps 0x211: Stereo Digital Control: name="IEC958 Playback Con Mask", index=1, device=0 Control: name="IEC958 Playback Pro Mask", index=1, device=0 Control: name="IEC958 Playback Default", index=1, device=0 Control: name="IEC958 Playback Switch", index=1, device=0 Device: name="HDMI 0", type="HDMI", device=3 did you test the optical spdif only Ubuntu 13.04 Live CD (hdmi working) or Ubuntu 13.10 (hdmi not working) ? https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pci/hda/patch_via.c?id=4abdbd1c2c1832e7270e546307ffb3e56b286db2 Loss of Indepdent headphone I tested the optical SPDIF on Ubuntu 13.10. Also, just to clarify, the HDMI sound did not work when I used the 13.04 live disk. It worked when I had 13.04 installed with the extra configuration (e.g. /etc/asound.conf). since those IEC958 controls of HDMI are associated with index=1 you need to hack to use CTLINDEX=1 instead of CTLINDEX=0 HDA-Intel.pcm.hdmi.0 { @args [ CARD AES0 AES1 AES2 AES3 ] @args.CARD { type string } @args.AES0 { type integer } @args.AES1 { type integer } @args.AES2 { type integer } @args.AES3 { type integer } @func refer name { @func concat strings [ "cards.HDA-Intel.pcm.hdmi.common:" "CARD=" $CARD "," "DEVICE=3," "CTLINDEX=0," "AES0=" $AES0 "," "AES1=" $AES1 "," "AES2=" $AES2 "," "AES3=" $AES3 ] } } with latest alsa-driver, the IEC958 controls of SPDIF should be with index=16 but yours are different https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pci/hda?id=ea9b43addc4d90ca5b029f47f85ca152320a1e8d HDMI devices will be put to dev=0,index=0 as before http://git.alsa-project.org/?p=alsa-lib.git;a=commit;h=f5f45589f81c46d4ca4cbbe089441a0f7ac5e197 For avoiding this conflict, the recent kernel code (3.9 and 3.8 stable) moves the IEC958 controls of an SPDIF with index=16 once when the conflict happens. Raymond, where do I use the code/configuration from your last post? Does it belong in /etc/asound.conf or elsewhere? Raymond, according to http://packages.ubuntu.com/saucy/sound/ the packages I have are up to date. Not sure why the alsa-lib is different from what you expected. http://packages.ubuntu.com/saucy/libasound2 http://packages.ubuntu.com/saucy/all/libasound2-data/filelist https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/?id=c9a6338aecdb92f9d015ecc26d203e54250bebbb seem that you also need pin fixup of node 0x20 from HDMI to SPDIF in addition to the above patch Node 0x20 [Pin Complex] wcaps 0x400701: Stereo Digital Control: name="HDMI Phantom Jack", index=0, device=0 Pincap 0x00000010: OUT Pin Default 0x985601f0: [Fixed] Digital Out at Int HDMI Conn = Digital, Color = Unknown DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x40: OUT Power states: D0 D1 D2 D3 Power: setting=D0, actual=D0 Connection: 1 0x12 For the missing alt analog device, enable independent headphone need to change the max channels from 8 to 6 After upgrading to Ubuntu 14.4 (kernel 3.13.0-24) I am no longer experiencing the underlying issue. Let me know if you would like any additional information. does your motherboard have the internal spdif out connector ? Asus motherboards have an optional back panel S/PDIF bracket You can connect a back panel S/PDIF bracket to the onboard header or You can also connect the onboard header to an S/PDIF input header available on some graphics cards using an S/PDIF cable. This connection routes digital audio to the HDMI output of the graphics card. http://www.intel.com/support/motherboards/desktop/sb/CS-032871.htm |