Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
No Audio Output
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Tue Jun 12, 2018 3:11 pm    Post subject: No Audio Output Reply with quote

Hello Community,

a while ago I used vfio-pci for vga-passthrough, for this it was necessary to blacklist snd_hda_intel driver for audio. My longterm goal is to activate snd_hda_intel only for the onboard sound card and not for my graphics card to use the graphics card for passthrough, but currently I cannot get my audio working on my host anymore. (it is whitelisted again) As you can see snd_hda_intel is active. What might be the issue? :(

Code:

lspci -k
00:00.0 Host bridge: Intel Corporation 4th Gen Core Processor DRAM Controller (rev 06)
   Subsystem: ASUSTeK Computer Inc. 4th Gen Core Processor DRAM Controller
   Kernel driver in use: hsw_uncore
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
   Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller (rev 06)
   Subsystem: ASUSTeK Computer Inc. Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller
   Kernel driver in use: i915
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
   Subsystem: ASUSTeK Computer Inc. Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller
   Kernel driver in use: snd_hda_intel
   Kernel modules: snd_hda_intel
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
   Subsystem: ASUSTeK Computer Inc. 8 Series/C220 Series Chipset Family USB xHCI
   Kernel driver in use: xhci_hcd
   Kernel modules: xhci_pci
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
   Subsystem: ASUSTeK Computer Inc. 8 Series/C220 Series Chipset Family MEI Controller
   Kernel driver in use: mei_me
   Kernel modules: mei_me
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I217-V (rev 05)
   Subsystem: ASUSTeK Computer Inc. Ethernet Connection I217-V
   Kernel driver in use: e1000e
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
   Subsystem: ASUSTeK Computer Inc. 8 Series/C220 Series Chipset Family USB EHCI
   Kernel driver in use: ehci-pci
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
   Subsystem: ASUSTeK Computer Inc. 8 Series/C220 Series Chipset High Definition Audio Controller
   Kernel driver in use: snd_hda_intel
   Kernel modules: snd_hda_intel
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
   Kernel driver in use: pcieport
00:1c.1 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #2 (rev d5)
   Kernel driver in use: pcieport
00:1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 (rev d5)
   Kernel driver in use: pcieport
00:1c.5 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #6 (rev d5)
   Kernel driver in use: pcieport
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
   Subsystem: ASUSTeK Computer Inc. 8 Series/C220 Series Chipset Family USB EHCI
   Kernel driver in use: ehci-pci
00:1f.0 ISA bridge: Intel Corporation Z87 Express LPC Controller (rev 05)
   Subsystem: ASUSTeK Computer Inc. Z87 Express LPC Controller
   Kernel driver in use: lpc_ich
   Kernel modules: lpc_ich
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
   Subsystem: ASUSTeK Computer Inc. 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]
   Kernel driver in use: ahci
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
   Subsystem: ASUSTeK Computer Inc. 8 Series/C220 Series Chipset Family SMBus Controller
   Kernel driver in use: i801_smbus
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X]
   Subsystem: Tul Corporation / PowerColor Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X]
   Kernel driver in use: vfio-pci
   Kernel modules: radeon
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti HDMI Audio [Radeon HD 7870 XT / 7950/7970]
   Subsystem: Tul Corporation / PowerColor Tahiti HDMI Audio [Radeon HD 7870 XT / 7950/7970]
   Kernel driver in use: snd_hda_intel
   Kernel modules: snd_hda_intel
03:00.0 Network controller: Qualcomm Atheros AR9462 Wireless Network Adapter (rev 01)
   Subsystem: ASUSTeK Computer Inc. AR9462 Wireless Network Adapter
   Kernel driver in use: ath9k
   Kernel modules: ath9k
04:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller (rev 11)
   Subsystem: Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller
   Kernel driver in use: ahci
05:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 01)
   Subsystem: ASUSTeK Computer Inc. ASM1062 Serial ATA Controller
   Kernel driver in use: ahci

_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Tue Jun 12, 2018 3:23 pm    Post subject: Reply with quote

You have 3 cards using snd_hda_intel, this make the following problems:
1 depending on the order, default card may not be the one using your speakers
2 to not use the video card audio for the graphic only, you have to blacklist it.

You could re-order cards in order to achieve goal #1
And blacklist all cards except one in use to achieve goal #2 (this will also met goal #1, if only one card is in use, and it is the one with the speaker, then all is good).

You can see an example here about re-ordering your cards: https://wiki.gentoo.org/wiki/ALSA#Laptops_with_HDMI_audio_output
You will also see there's a options snd cards_limit=2, which if you guess good, would be forcing it to 1 to achieve goal #2
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Tue Jun 12, 2018 4:31 pm    Post subject: Reply with quote

Thanks for fast reply!

My sound cards are
Code:

cat /proc/asound/cards
 0 [HDMI_1         ]: HDA-Intel - HDA Intel HDMI
                      HDA Intel HDMI at 0xf7c34000 irq 35
 1 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xf7c30000 irq 33
 2 [HDMI           ]: HDA-Intel - HDA ATI HDMI
                      HDA ATI HDMI at 0xf7b60000 irq 34


According to the wiki I have set
Code:
  File: /etc/modprobe.d/alsa.conf

# Set this to the correct number of cards.
options snd cards_limit=1
options snd-hda-intel id=HDMI index=0


Gnome-settings still show 2 cards and still snd_hda_intel are active as drivers shown with lspci -k.
No sound output possible. Any further ideas? :)

ADD: In alsamixer my HDA Intel HDMI shows for every channel (4 S/PDIF) a green 00. I use displayport to connect my onboard card with my monitor.
I compiled my kernel options as a module since I needed to blacklist snd_hda_intel formerly.

Code:

lsmod | grep '^snd' | column -t
snd_hda_codec_realtek  81920   1   
snd_hda_codec_generic  77824   1   snd_hda_codec_realtek
snd_hda_codec_hdmi     57344   2   
snd_hda_intel          36864   12 
snd_hda_codec          126976  4   snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_hwdep              16384   1   snd_hda_codec
snd_hda_core           73728   5   snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_pcm                98304   4   snd_hda_intel,snd_hda_codec,snd_hda_core,snd_hda_codec_hdmi
snd_timer              32768   1   snd_pcm
snd                    77824   32  snd_hda_intel,snd_hwdep,snd_hda_codec,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek,snd_pcm

_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Wed Jun 20, 2018 8:12 pm    Post subject: Reply with quote

If someone has a clue I will be very grateful - some months already without sound...

ADD: Recompiled my sound modules as *, doesn't fix the issue as thought...
ADD: Gnome realises 2 outputs cards, both no sound
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Mon Jun 25, 2018 5:22 pm    Post subject: Reply with quote

Spargeltarzan,

What does /proc/asound/devices show?

What does
Code:
grep DYNAMIC_MI /usr/src/linux/.config
show?
Code:
CONFIG_SND_DYNAMIC_MINORS=y
is important with some devices and lots of sound cards.

My video card has five HDMI outputs, which won't fit in /dev/snd without CONFIG_SND_DYNAMIC_MINORS=y.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Mon Jun 25, 2018 5:33 pm    Post subject: Reply with quote

Thanks for help :-)
NeddySeagoon wrote:


What does /proc/asound/devices show?

Code:

cat /proc/asound/devices
  1:        : sequencer
  2: [ 2]   : control
  3: [ 2- 3]: digital audio playback
  4: [ 2- 7]: digital audio playback
  5: [ 2- 8]: digital audio playback
  6: [ 2- 9]: digital audio playback
  7: [ 2-10]: digital audio playback
  8: [ 2-11]: digital audio playback
  9: [ 2- 0]: hardware dependent
 10: [ 0]   : control
 11: [ 0- 3]: digital audio playback
 12: [ 0- 7]: digital audio playback
 13: [ 0- 8]: digital audio playback
 14: [ 0- 9]: digital audio playback
 15: [ 0- 0]: hardware dependent
 16: [ 1]   : control
 17: [ 1- 0]: digital audio playback
 18: [ 1- 0]: digital audio capture
 19: [ 1- 1]: digital audio playback
 20: [ 1- 2]: digital audio capture
 21: [ 1- 0]: hardware dependent
 33:        : timer



NeddySeagoon wrote:

What does
Code:
grep DYNAMIC_MI /usr/src/linux/.config
show?
Code:
CONFIG_SND_DYNAMIC_MINORS=y
is important with some devices and lots of sound cards.



Code:

grep DYNAMIC_MI /usr/src/linux/.config
CONFIG_SND_DYNAMIC_MINORS=y
# CONFIG_USB_DYNAMIC_MINORS is not set


NeddySeagoon wrote:

My video card has five HDMI outputs, which won't fit in /dev/snd without CONFIG_SND_DYNAMIC_MINORS=y.


I have set my max number of sound cards to 32.

"grep SND /usr/src/linux/.config":
https://paste.pound-python.org/show/nPsyizLWiXs0AjnJw1oI/
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Mon Jun 25, 2018 6:27 pm    Post subject: Reply with quote

Spargeltarzan,

You have three sound cards there. Sound card 1 is your real analogue sound card as its the only one with digital audio capture, that means an input.

If you play a 48kHz sample rate source with say
Code:
mplayer -ao alsa:device=hw=1.0 /path/to/dvd/
it should work.
You will need to unmute Master, PCM and Front using
Code:
alsamixer -c 1
.
Also set Master, PCM and Front sliders to about 70%
Beware CDs and their rips use a 44.1kHz sample rate and are not suitable for this test.

If pulseaudio gets in the way, rip it out meanwhile, I've never used it so can't help with it.

Once it works, we can reorder your sound cards.

You may need to remove
Code:
options snd cards_limit=1
options snd-hda-intel id=HDMI index=0

as that only allows the use of sound card 0.

For testing lets have all three sound cards working, then we can address them by their device numbers.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Mon Jun 25, 2018 6:56 pm    Post subject: Reply with quote

NeddySeagoon wrote:


You have three sound cards there. Sound card 1 is your real analogue sound card as its the only one with digital audio capture, that means an input.

If you play a 48kHz sample rate source with say
Code:
mplayer -ao alsa:device=hw=1.0 /path/to/dvd/
it should work.
You will need to unmute Master, PCM and Front using
Code:
alsamixer -c 1
.
Also set Master, PCM and Front sliders to about 70%
Beware CDs and their rips use a 44.1kHz sample rate and are not suitable for this test.

I successfully played a .mp3 file on my analogues sound card! Any idea, why Gnome doesn't realize my speaker?


NeddySeagoon wrote:

Once it works, we can reorder your sound cards.

You may need to remove
Code:
options snd cards_limit=1
options snd-hda-intel id=HDMI index=0

as that only allows the use of sound card 0.

For testing lets have all three sound cards working, then we can address them by their device numbers.


I have already removed those two options previously. What could we do next?
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Mon Jun 25, 2018 7:26 pm    Post subject: Reply with quote

Spargeltarzan,

That proves that it works. That's the first step. I suspect that GNOME is trying to use sound card 0.
It will work but you can't hear it. :)

Now we need to know a little more about how you made your kernel and initrd, if you have one.
You need to pass the index option to snd-hda-intel when the module loads.
The enable option may be useful too.

If snd-hda-intel is built in, you pass options on the kernel command line.
If snd-hda-intel is in the initrd, you need to pass options there - tricky.
If snd-hda-intel is a module and not in the initrd then /etc/modprobe.d/alsa.conf should work.

The problem with it being in the initrd is that you need /etc/modprobe.d/alsa.conf in the intrd too.

Can you
Code:
modprobe -r snd-hda-intel
you will need to modprobe -r all modules that use it too.
Look in lsmod.
If that works, eventually,
Code:
modprobe snd-hda-intel index=1,0,2
will swap cards 0 and 1 and leave 2 alone.
You may be able to blacklist it, then load it manually with
Code:
modprobe snd-hda-intel index=1,0,2
just for testing.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Mon Jun 25, 2018 8:24 pm    Post subject: Reply with quote

NeddySeagoon wrote:

If snd-hda-intel is a module and not in the initrd then /etc/modprobe.d/alsa.conf should work.

I do not use an initrd (only intel-microcode) and I recompiled sound options in the kernel again as a module (https://paste.pound-python.org/show/eY7fqIkwaShsI8WuUwoW/
) to work with it easier.

NeddySeagoon wrote:

Can you
Code:
modprobe -r snd-hda-intel
you will need to modprobe -r all modules that use it too.
Look in lsmod.

Unfortunately no. Also when I try to modprobe -r what it uses, it fails. However, I passed it through in alsa.conf and restarted my computer:
Code:

options snd-hda-intel index=1,0,2



NeddySeagoon wrote:

If that works, eventually,
Code:
modprobe snd-hda-intel index=1,0,2
will swap cards 0 and 1 and leave 2 alone.
You may be able to blacklist it, then load it manually with
Code:
modprobe snd-hda-intel index=1,0,2
just for testing.


Code:

modprobe --show-depends snd-hda-intel
insmod /lib/modules/4.14.51-gentoo/kernel/sound/core/snd.ko
insmod /lib/modules/4.14.51-gentoo/kernel/sound/core/snd-timer.ko
insmod /lib/modules/4.14.51-gentoo/kernel/sound/core/snd-pcm.ko
insmod /lib/modules/4.14.51-gentoo/kernel/sound/hda/snd-hda-core.ko
insmod /lib/modules/4.14.51-gentoo/kernel/sound/core/snd-hwdep.ko
insmod /lib/modules/4.14.51-gentoo/kernel/sound/pci/hda/snd-hda-codec.ko
insmod /lib/modules/4.14.51-gentoo/kernel/sound/pci/hda/snd-hda-intel.ko index=1,0,2

snd-hda-intel is loaded with index=1,0,2. My devices look like:

Code:

cat /proc/asound/devices
  2: [ 2]   : control
  3: [ 2- 3]: digital audio playback
  4: [ 2- 7]: digital audio playback
  5: [ 2- 8]: digital audio playback
  6: [ 2- 9]: digital audio playback
  7: [ 2-10]: digital audio playback
  8: [ 2-11]: digital audio playback
  9: [ 2- 0]: hardware dependent
 10: [ 1]   : control
 11: [ 1- 3]: digital audio playback
 12: [ 1- 7]: digital audio playback
 13: [ 1- 8]: digital audio playback
 14: [ 1- 9]: digital audio playback
 15: [ 1- 0]: hardware dependent
 16: [ 0]   : control
 17: [ 0- 0]: digital audio playback
 18: [ 0- 0]: digital audio capture
 19: [ 0- 1]: digital audio playback
 20: [ 0- 2]: digital audio capture
 21: [ 0- 0]: hardware dependent
 33:        : timer

I am not sure how to read this output correctly, but it doesn't look like the swap worked? I cannot see any difference elsewhere in my system too
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Mon Jun 25, 2018 10:28 pm    Post subject: Reply with quote

Spargeltarzan,

Maybe I misread/understood /proc/asound/devices.
Cards 0 and 1 were swapped but that's not what's needed.

The original order was 2, 0, 1.
Its now 2, 1, 0. but card 2 is the default. Sorry about that.

We need them ordered 0,1,2 from the top down.
index=0,1,2 is probably better.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Tue Jun 26, 2018 12:00 am    Post subject: Reply with quote

Yes that changed 0 to be the first and with index=0,2,1 we have order 0,1,2.

Code:

cat /proc/asound/devices
  2: [ 0]   : control
  3: [ 0- 3]: digital audio playback
  4: [ 0- 7]: digital audio playback
  5: [ 0- 8]: digital audio playback
  6: [ 0- 9]: digital audio playback
  7: [ 1]   : control
  8: [ 1- 3]: digital audio playback
  9: [ 0- 0]: hardware dependent
 10: [ 1- 7]: digital audio playback
 11: [ 1- 8]: digital audio playback
 12: [ 1- 9]: digital audio playback
 13: [ 1-10]: digital audio playback
 14: [ 1-11]: digital audio playback
 15: [ 1- 0]: hardware dependent
 16: [ 2]   : control
 17: [ 2- 0]: digital audio playback
 18: [ 2- 0]: digital audio capture
 19: [ 2- 1]: digital audio playback
 20: [ 2- 2]: digital audio capture
 21: [ 2- 0]: hardware dependent
 33:        : timer

Why do we actually need to reorder cards in alsa? Normally GNOME shows all the cards including analogous and I can decide where to play graphically.
Also with this order, no sound is working
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Tue Jun 26, 2018 10:02 am    Post subject: Reply with quote

Spargeltarzan,

You need the sound card at card 2 to be at card 0.
I'm making a meal of this, sorry.
That sounds like index=2,1,0

You read /proc/asound/devices as follows.

Code:
  3: [ 0- 3]: digital audio playback

Code:
  3:
device minor number in /dev/snd
Code:
 [ 0- 3]:
card number and function on the card.
Code:
digital audio playback
text description of the device.

Card 0 is the default sound card. Many prograrmes will only use the default.

We need thet card that currently has
Code:
18: [ 2- 0]: digital audio capture
to be at card 0, thats card 2 just now,
hence index=2 ... Put sound card 2 first.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Tue Jun 26, 2018 3:02 pm    Post subject: Reply with quote

NeddySeagoon wrote:
Spargeltarzan,

You need the sound card at card 2 to be at card 0.


I guess we had this already once in my post above; however, with index=2,1,0 it didn't went to position 0, but with index=1,0,2 my last sound card with the capture device moves to 0.
Code:

cat /proc/asound/devices
  2: [ 1]   : control
  3: [ 1- 3]: digital audio playback
  4: [ 1- 7]: digital audio playback
  5: [ 1- 8]: digital audio playback
  6: [ 1- 9]: digital audio playback
  7: [ 1- 0]: hardware dependent
  8: [ 2]   : control
  9: [ 2- 3]: digital audio playback
 10: [ 2- 7]: digital audio playback
 11: [ 2- 8]: digital audio playback
 12: [ 2- 9]: digital audio playback
 13: [ 2-10]: digital audio playback
 14: [ 2-11]: digital audio playback
 15: [ 2- 0]: hardware dependent
 16: [ 0]   : control
 17: [ 0- 0]: digital audio playback
 18: [ 0- 0]: digital audio capture
 19: [ 0- 1]: digital audio playback
 20: [ 0- 2]: digital audio capture
 21: [ 0- 0]: hardware dependent
 33:        : timer


--> looks good I guess:
17: [ 0- 0]: digital audio playback
18: [ 0- 0]: digital audio capture

It does not make sound still :(

ADD: I tried to play with mplayer on all sound cards without success ....

ADD: I bootet my system on kernel grub options "iommu=off and intel_iommu=off" and now the displayport sound works no matter the order of the sound cards.

-) The sound works only in gnome-settings and firefox. NOT in vlc or other media players.
-) My analogous sound speaker is still not realized by GNOME.
-) As a next step I would like to setup iommu with working sound...
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Tue Jun 26, 2018 4:18 pm    Post subject: Reply with quote

Spargeltarzan,

Code:
 16: [ 0]   : control
 17: [ 0- 0]: digital audio playback
 18: [ 0- 0]: digital audio capture
 19: [ 0- 1]: digital audio playback
 20: [ 0- 2]: digital audio capture
 21: [ 0- 0]: hardware dependent
is your analogue sound card.
It has minor numbers 17..21 inclusive.
It needs to be at the top of the list, so you see
Code:
  2: [ 0]   : control
as the first entry.

The order of the other sound cards doesn't matter, yet.
Code:
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti HDMI Audio [Radeon HD 7870 XT / 7950/7970]


Your analogue sound card is card 1 as devices are detected in PCI bus order.
That looks like index=1,0,2, but we tried that.

I feel a dose of trial and error creaping on.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Tue Jun 26, 2018 4:45 pm    Post subject: Reply with quote

NeddySeagoon wrote:


Code:
 16: [ 0]   : control
 17: [ 0- 0]: digital audio playback
 18: [ 0- 0]: digital audio capture
 19: [ 0- 1]: digital audio playback
 20: [ 0- 2]: digital audio capture
 21: [ 0- 0]: hardware dependent
is your analogue sound card.
It has minor numbers 17..21 inclusive.
It needs to be at the top of the list, so you see
Code:
  2: [ 0]   : control
as the first entry.


et voilà, we have got it on top:
Code:

cat /proc/asound/devices
  2: [ 0]   : control
  3: [ 0- 0]: digital audio playback
  4: [ 0- 0]: digital audio capture
  5: [ 0- 1]: digital audio playback
  6: [ 0- 2]: digital audio capture
  7: [ 0- 0]: hardware dependent
  8: [ 1]   : control
  9: [ 1- 3]: digital audio playback
 10: [ 1- 7]: digital audio playback
 11: [ 1- 8]: digital audio playback
 12: [ 1- 9]: digital audio playback
 13: [ 1- 0]: hardware dependent
 14: [ 2]   : control
 15: [ 2- 3]: digital audio playback
 16: [ 2- 7]: digital audio playback
 17: [ 2- 8]: digital audio playback
 18: [ 2- 9]: digital audio playback
 19: [ 2-10]: digital audio playback
 20: [ 2-11]: digital audio playback
 21: [ 2- 0]: hardware dependent
 33:        : timer


NeddySeagoon wrote:

The order of the other sound cards doesn't matter, yet.

Unfortunately my issues persist: [UPDATE]
-) I still cannot play audio from music or videos files on Displayport Audio. Interesting, that it works in firefox, I often read about the issue being opposite. ADD: I somehow managed that files play audio now, maybe something misconfigured in VLC.

--> That would be gorgeous to fix:
-) My analogous sound card with the attached speaker still does not appear in GNOME.
-) Working Sound with iommu enabled??
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Tue Jun 26, 2018 5:18 pm    Post subject: Reply with quote

Spargeltarzan,

Good. Analogue sound should work now and all sound should be sent there.

For display port sound it gets harder.

We need to know which which display port you are using.
Is the the inbuilt one or the one on your graphics card?
Actually, we only need to know how to address it.

In alsamixier unmute all the digital outputs on all the sound cards other than the analogue card.
One has 4 outputs, the other has 6.

Run
Code:
for i in {3..11}; do speaker-test -c1 -l2 -Dplughw:1,$i; done

to test card 1, the -c1 and
Code:
for i in {3..11}; do speaker-test -c2 -l2 -Dplughw:1,$i; done

That test runs a speaker test on devices 3..11 inclusive on each card in turn. Some devices are not fitted on your cards, so you will see a harmless error.
For one of your 10 HDMI outputs you should hear the speaker-test.
If not, check your display sound is not muted and the volume is about 50%.

Make a note of the card and device that provides sound.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Tue Jun 26, 2018 7:34 pm    Post subject: Reply with quote

NeddySeagoon wrote:
Spargeltarzan,

Run
Code:
for i in {3..11}; do speaker-test -c1 -l2 -Dplughw:1,$i; done

to test card 1, the -c1 and
Code:
for i in {3..11}; do speaker-test -c2 -l2 -Dplughw:1,$i; done

That test runs a speaker test on devices 3..11 inclusive on each card in turn. Some devices are not fitted on your cards, so you will see a harmless error.
For one of your 10 HDMI outputs you should hear the speaker-test.

Make a note of the card and device that provides sound.


I can hear DisplayPort sound on speaker 1,3. Meanwhile, I can hear audio on firefox and media files with disabled iommu on boot. Also analogous speaker appears in GNOME when I plug it in.

I have read about sound bugs with iommu, I hope my mainboard is not permanently affected and I can find a solution.
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Tue Jun 26, 2018 8:00 pm    Post subject: Reply with quote

Spargeltarzan,

Code:
mplayer -ao alsa:device=hw=1.3 /path/to/dvd/
should work too.

I'm not aware of iommu issues with sound. Perhaps dmesg with and without iommu enabled would be useful?
They will need to go to pastebins.

Sound should work by default through the analogue card and via display port for applications that you tell to use the display port audio.

Its not quite that simple. Display port audio needs a 48kHz sample rate.
CDs and most audio only formats use a 44.1kHz sample rate, so to play such a source via display port, it needs to be converted.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Wed Jun 27, 2018 7:28 am    Post subject: Reply with quote

NeddySeagoon wrote:


Code:
mplayer -ao alsa:device=hw=1.3 /path/to/dvd/
should work too.

It works :-)

NeddySeagoon wrote:

I'm not aware of iommu issues with sound. Perhaps dmesg with and without iommu enabled would be useful?
They will need to go to pastebins.

without iommu
https://paste.pound-python.org/show/Glz134bMUAcFmha89iFi

with iommu=on and intel_iommu=on
https://paste.pound-python.org/show/AiThL2770ziIpdxU1cFy/

This Launchpad Bug makes me nervous:
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1428121
My mainboard is not the Z97, but the Z87.

Some
-) nommu_map_single
-) usb 1-1
-) udevd[2270]
-) ath
-) ath9k
errors haunt me for some monthes.

NeddySeagoon wrote:

Its not quite that simple. Display port audio needs a 48kHz sample rate.
CDs and most audio only formats use a 44.1kHz sample rate, so to play such a source via display port, it needs to be converted.

Can it be that pulseaudio or other pieces do some hidden converting for me? So far I don't find a source which doesn't play audio.
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Wed Jun 27, 2018 6:17 pm    Post subject: Reply with quote

Spargeltarzan,

Do you feel lucky ?

There is a patch on the LKML that hasn't made it into 4.17.2 that may or may not fix your problem.
The bug report cites mixed success.

I know its not in 4.17.2 because it applied for me.
Code:
patching file drivers/iommu/intel-iommu.c
Hunk #1 succeeded at 4974 (offset 698 lines).
If the patch was already there I would have got a reversed patch error.

You have a 4.14.51-gentoo kernel. It may be worth trying a more recent kernel first, in case its fixed another way.

Yes, its possible that you get sample rate conversion without asking for it.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Thu Jun 28, 2018 4:05 pm    Post subject: Reply with quote

NeddySeagoon wrote:
Spargeltarzan,

Do you feel lucky ?

Yes, mostly because I am able to hear something again and secondly because there is hope for my iommu setup.



NeddySeagoon wrote:

There is a patch on the LKML that hasn't made it into 4.17.2 that may or may not fix your problem.
The bug report cites mixed success.

You have a 4.14.51-gentoo kernel. It may be worth trying a more recent kernel first, in case its fixed another way.


I would prefer to test the patch on kernel 4.14.51 because my system has got a ZFS storage which is only compatible with kernel <= 4.16. Kernel 4.16 is marked EOL already. If the patch doesn't work I could experiment a kernel 4.17 on temporary unavailable ZFS storage.

Would you give me a hint how to apply this patch on iommu? This Patching Wiki deals only with patching ebuilds and I guess I need another approach to patch kernel iommu.
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Thu Jun 28, 2018 5:40 pm    Post subject: Reply with quote

Spargeltarzan,

The gentoo-sources-4.14.51.ebuild says at the top
Code:
EAPI="6"
so it will apply user patches correctly presented in /etc/portage/patches/
Your wiki page tells how to do that.

The file itself must contain at least
Code:
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -4276,7 +4276,7 @@ static int intel_iommu_attach_device(struct iommu_domain *domain,
              __func__, addr_width, dmar_domain->max_addr);
       return -EFAULT;
    }
-   dmar_domain->gaw = addr_width;
+   dmar_domain->gaw = min(addr_width, dmar_domain->gaw);
 
    /*
     * Knock out extra levels of page tables if necessary
but patch is quite happy to work with whole emails, as long as they are plain text.

When you emerge the kernel, the patch will be applied, then you rebuild your kernel in the normal way.
That's the official Gentoo way. You should learn it as its really the only way for every package except the kernel.
As emerging the kernel does not build the kernel, you can apply the patch manually.

Code:
cd /usr/src/linux
or wherever your kernel source tree is.
Code:
nano intel-iommu.patch
to create a new file.
Paste the above patch into it.
Code:
patch <  intel-iommu.patch
to feed the patch to the patch command.
Patch will fail because it can't find the file to patch.
At the question, answer
Code:
drivers/iommu/intel-iommu.c
and you should get a similar result to the one I posted.
Don't emerge your kernel again, the patch will be removed. Just do the rebuild and reinstall.

You could use
Code:
patch -pX
instead. Read
Code:
man patch

The failure is because we are working in a lower level directory than the patch was prepared from.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Spargeltarzan
Guru
Guru


Joined: 23 Jul 2017
Posts: 317

PostPosted: Thu Jun 28, 2018 6:05 pm    Post subject: Reply with quote

NeddySeagoon wrote:

That's the official Gentoo way. You should learn it as its really the only way for every package except the kernel.

Many thanks, your explanations encourage and to know how to apply patches correctly helps me also currently in my work on some gcc 8 emerge bugs where devs asked me to apply patches.

NeddySeagoon wrote:

As emerging the kernel does not build the kernel, you can apply the patch manually.

Code:
cd /usr/src/linux
or wherever your kernel source tree is.
Code:
nano intel-iommu.patch
to create a new file.
Paste the above patch into it.
Code:
patch <  intel-iommu.patch
to feed the patch to the patch command.
Patch will fail because it can't find the file to patch.
At the question, answer
Code:
drivers/iommu/intel-iommu.c
and you should get a similar result to the one I posted.

Unfortunately for me it does not, 1 hunk FAILED:
Code:

desktop /usr/src/linux # patch <  intel-iommu.patch
can't find file to patch at input line 3
Perhaps you should have used the -p or --strip option?
The text leading up to this was:
--------------------------
|--- a/drivers/iommu/intel-iommu.c
|+++ b/drivers/iommu/intel-iommu.c
--------------------------
File to patch: drivers/iommu/intel-iommu.c
patching file drivers/iommu/intel-iommu.c
Hunk #1 FAILED at 4276.
1 out of 1 hunk FAILED -- saving rejects to file drivers/iommu/intel-iommu.c.rej

Is my kernel too old?
_________________
___________________
Regards

Spargeltarzan

Notebook: Lenovo YOGA 900-13ISK: Gentoo stable amd64, GNOME systemd, KVM/QEMU
Desktop-PC: Intel Core i7-4770K, 8GB Ram, AMD Radeon R9 280X, ZFS Storage, GNOME openrc, Dantrell, Xen
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Thu Jun 28, 2018 6:11 pm    Post subject: Reply with quote

Spargeltarzan,

The patch is even older.
The
Code:
Hunk #1 FAILED at 4276.
means that the context was located but the line the patch tried to change has already been changed to something else.

I was surprised that it applied to 4.17.2 an the patch was so old.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum