Bug 98809

Summary: No sound over DisplayPort with Radeon R9 380 and amdgpu
Product: xorg Reporter: Matthias Nagel <matthias.h.nagel>
Component: Driver/AMDgpuAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED NOTABUG QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Matthias Nagel 2016-11-21 18:14:23 UTC
Sound over DisplayPort with Radeon R9 380 and amdgpu does not work. The device is listed by lspci, the driver "snd_hda_intel" is loaded and the card is detected by ALSA. ALSA lists six possible devices but none of them works.

No matter what device configuration I select in PulseAudio/Phonon (HDMI 0 through HDMI 5) my monitor stays silent. If I try to by-bass PulseAudio and directly try to play an audio file with aplay I get the same negative result.

# lspci -v -s 01:00.1
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Device aad8
        Subsystem: Tul Corporation / PowerColor Device aad8
        Flags: bus master, fast devsel, latency 0, IRQ 43
        Memory at f7e60000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: [48] Vendor Specific Information: Len=08 <?>
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Legacy Endpoint, MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Capabilities: [150] Advanced Error Reporting
        Capabilities: [328] Alternative Routing-ID Interpretation (ARI)
        Kernel driver in use: snd_hda_intel

# aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
pulse
    PulseAudio Sound Server
default
    Default Audio Device
sysdefault:CARD=PCH
    HDA Intel PCH, ALC892 Analog
    Default Audio Device
front:CARD=PCH,DEV=0
    HDA Intel PCH, ALC892 Analog
    Front speakers
surround21:CARD=PCH,DEV=0
    HDA Intel PCH, ALC892 Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
    HDA Intel PCH, ALC892 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
    HDA Intel PCH, ALC892 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
    HDA Intel PCH, ALC892 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
    HDA Intel PCH, ALC892 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
    HDA Intel PCH, ALC892 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=PCH,DEV=0
    HDA Intel PCH, ALC892 Digital
    IEC958 (S/PDIF) Digital Audio Output
hdmi:CARD=HDMI,DEV=0
    HDA ATI HDMI, HDMI 0
    HDMI Audio Output
hdmi:CARD=HDMI,DEV=1
    HDA ATI HDMI, HDMI 1
    HDMI Audio Output
hdmi:CARD=HDMI,DEV=2
    HDA ATI HDMI, HDMI 2
    HDMI Audio Output
hdmi:CARD=HDMI,DEV=3
    HDA ATI HDMI, HDMI 3
    HDMI Audio Output
hdmi:CARD=HDMI,DEV=4
    HDA ATI HDMI, HDMI 4
    HDMI Audio Output
hdmi:CARD=HDMI,DEV=5
    HDA ATI HDMI, HDMI 5
    HDMI Audio Output


However, none of

# aplay -D hdmi:CARD=HDMI,DEV=0 -fS32_LE -r 48000 -c 2 "test.mp3"
...
# aplay -D hdmi:CARD=HDMI,DEV=5 -fS32_LE -r 48000 -c 2 "test.mp3"

works.
Comment 1 Alex Deucher 2016-11-21 19:21:14 UTC
Audio is only supported on amdgpu with DAL:
https://cgit.freedesktop.org/~agd5f/linux/log/?h=amd-staging-4.7
Comment 2 Matthias Nagel 2016-11-21 19:46:03 UTC
Excuse my dumb question, what does "DAL" mean? And more importantly how do I get it? I use a self-compiled kernel 4.8.9 and I did not find any configuration option that looked like DAL.
Comment 3 Alex Deucher 2016-11-21 19:49:59 UTC
(In reply to Matthias Nagel from comment #2)
> Excuse my dumb question, what does "DAL" mean? And more importantly how do I
> get it? I use a self-compiled kernel 4.8.9 and I did not find any
> configuration option that looked like DAL.

It's the new modesetting infrastructure for amdgpu.  It's not upstream yet, so you'd need to use that branch until it is.
Comment 4 Matthias Nagel 2016-11-21 19:53:54 UTC
OK, thanks. In this case I prefer to stay with the kernel provided by my distro. Now, I know that it is not a bug but just a missing feature that is hopefully coming soon and I am willing to wait.

I found some reports around that claimed that audio should be working with amdgpu since kernel 4.6 and so I thought I was missing something.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.