You are not logged in.
SOLVED EDIT: Check your BIOS settings...!
Original Post:
Fresh install of Arch tonight, with Gnome 3 as the only desktop environment. My platform is an old AMD APU (A10-7860K, specifically) and an RX 480. I'm attempting to play audio through the GPU's DisplayPort.
What I gather from the following is that the onboard HDMI from the APU is detected, though the onboard analog audio output is not. The chassis' front panel audio also doesn't appear to be detected. Similarly, the HDMI and DisplayPort outputs from the GPU are detected. However, while PulseAudio does appear to have permission to hijack the various audio sources, it doesn't assign any sinks to them.
[patrick@redbox ~]$ sudo fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: gdm 571 F.... pulseaudio
patrick 814 F.... pulseaudio
/dev/snd/controlC1: gdm 571 F.... pulseaudio
patrick 814 F.... pulseaudio
[patrick@redbox ~]$ pacmd list-cards
2 card(s) available.
index: 0
name: <alsa_card.pci-0000_00_01.1>
driver: <module-alsa-card.c>
owner module: 6
properties:
alsa.card = "0"
alsa.card_name = "HDA ATI HDMI"
alsa.long_card_name = "HDA ATI HDMI at 0xfeb60000 irq 41"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:00:01.1"
sysfs.path = "/devices/pci0000:00/0000:00:01.1/sound/card0"
device.bus = "pci"
device.vendor.id = "1002"
device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
device.product.id = "1308"
device.product.name = "Kaveri HDMI/DP Audio Controller"
device.form_factor = "internal"
device.string = "0"
device.description = "Built-in Audio"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
profiles:
output:hdmi-stereo: Digital Stereo (HDMI) Output (priority 5400, available: no)
output:hdmi-surround: Digital Surround 5.1 (HDMI) Output (priority 300, available: no)
output:hdmi-surround71: Digital Surround 7.1 (HDMI) Output (priority 300, available: no)
off: Off (priority 0, available: unknown)
active profile: <off>
ports:
hdmi-output-0: HDMI / DisplayPort (priority 5900, latency offset 0 usec, available: no)
properties:
device.icon_name = "video-display"
index: 1
name: <alsa_card.pci-0000_01_00.1>
driver: <module-alsa-card.c>
owner module: 7
properties:
alsa.card = "1"
alsa.card_name = "HDA ATI HDMI"
alsa.long_card_name = "HDA ATI HDMI at 0xfea60000 irq 43"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:01:00.1"
sysfs.path = "/devices/pci0000:00/0000:00:02.1/0000:01:00.1/sound/card1"
device.bus = "pci"
device.vendor.id = "1002"
device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
device.product.id = "aaf0"
device.product.name = "Ellesmere [Radeon RX 580]"
device.string = "1"
device.description = "Ellesmere [Radeon RX 580]"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
profiles:
output:hdmi-stereo: Digital Stereo (HDMI) Output (priority 5400, available: no)
output:hdmi-surround: Digital Surround 5.1 (HDMI) Output (priority 300, available: no)
output:hdmi-surround71: Digital Surround 7.1 (HDMI) Output (priority 300, available: no)
output:hdmi-stereo-extra1: Digital Stereo (HDMI 2) Output (priority 5200, available: no)
output:hdmi-surround-extra1: Digital Surround 5.1 (HDMI 2) Output (priority 100, available: no)
output:hdmi-surround71-extra1: Digital Surround 7.1 (HDMI 2) Output (priority 100, available: no)
output:hdmi-stereo-extra2: Digital Stereo (HDMI 3) Output (priority 5200, available: no)
output:hdmi-surround-extra2: Digital Surround 5.1 (HDMI 3) Output (priority 100, available: no)
output:hdmi-surround71-extra2: Digital Surround 7.1 (HDMI 3) Output (priority 100, available: no)
output:hdmi-stereo-extra3: Digital Stereo (HDMI 4) Output (priority 5200, available: no)
output:hdmi-surround-extra3: Digital Surround 5.1 (HDMI 4) Output (priority 100, available: no)
output:hdmi-surround71-extra3: Digital Surround 7.1 (HDMI 4) Output (priority 100, available: no)
output:hdmi-stereo-extra4: Digital Stereo (HDMI 5) Output (priority 5200, available: no)
output:hdmi-surround-extra4: Digital Surround 5.1 (HDMI 5) Output (priority 100, available: no)
output:hdmi-surround71-extra4: Digital Surround 7.1 (HDMI 5) Output (priority 100, available: no)
output:hdmi-stereo-extra5: Digital Stereo (HDMI 6) Output (priority 5200, available: no)
output:hdmi-surround-extra5: Digital Surround 5.1 (HDMI 6) Output (priority 100, available: no)
output:hdmi-surround71-extra5: Digital Surround 7.1 (HDMI 6) Output (priority 100, available: no)
off: Off (priority 0, available: unknown)
active profile: <off>
ports:
hdmi-output-0: HDMI / DisplayPort (priority 5900, latency offset 0 usec, available: no)
properties:
device.icon_name = "video-display"
hdmi-output-1: HDMI / DisplayPort 2 (priority 5800, latency offset 0 usec, available: no)
properties:
device.icon_name = "video-display"
hdmi-output-2: HDMI / DisplayPort 3 (priority 5700, latency offset 0 usec, available: no)
properties:
device.icon_name = "video-display"
hdmi-output-3: HDMI / DisplayPort 4 (priority 5600, latency offset 0 usec, available: no)
properties:
device.icon_name = "video-display"
hdmi-output-4: HDMI / DisplayPort 5 (priority 5500, latency offset 0 usec, available: no)
properties:
device.icon_name = "video-display"
hdmi-output-5: HDMI / DisplayPort 6 (priority 5400, latency offset 0 usec, available: no)
properties:
device.icon_name = "video-display"
[patrick@redbox ~]$ pacmd list-sinks
1 sink(s) available.
* index: 0
name: <auto_null>
driver: <module-null-sink.c>
flags: DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: SUSPENDED
suspend cause: IDLE
priority: 1000
volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB
balance 0.00
base volume: 65536 / 100% / 0.00 dB
volume steps: 65537
muted: no
current latency: 0.00 ms
max request: 344 KiB
max rewind: 344 KiB
monitor source: 0
sample spec: s16le 2ch 44100Hz
channel map: front-left,front-right
Stereo
used by: 0
linked by: 0
configured latency: 0.00 ms; range is 0.50 .. 2000.00 ms
module: 16
properties:
device.description = "Dummy Output"
device.class = "abstract"
device.icon_name = "audio-card"
dmesg for good measure
[patrick@redbox ~]$ dmesg | grep -ni hda
736:[ 1.573467] snd_hda_intel 0000:00:01.1: enabling device (0000 -> 0002)
737:[ 1.573572] snd_hda_intel 0000:00:01.1: Force to non-snoop mode
738:[ 1.573776] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
739:[ 1.573777] snd_hda_intel 0000:01:00.1: Force to non-snoop mode
741:[ 1.598576] input: HDA ATI HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.1/sound/card0/input5
742:[ 1.598720] input: HDA ATI HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:02.1/0000:01:00.1/sound/card1/input6
743:[ 1.598759] input: HDA ATI HDMI HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:02.1/0000:01:00.1/sound/card1/input7
744:[ 1.598795] input: HDA ATI HDMI HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:02.1/0000:01:00.1/sound/card1/input8
745:[ 1.598816] input: HDA ATI HDMI HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:02.1/0000:01:00.1/sound/card1/input9
746:[ 1.598835] input: HDA ATI HDMI HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:02.1/0000:01:00.1/sound/card1/input10
747:[ 1.598858] input: HDA ATI HDMI HDMI/DP,pcm=11 as /devices/pci0000:00/0000:00:02.1/0000:01:00.1/sound/card1/input11
And when I set PulseAudio's log level to debug and captured that from boot:
[patrick@redbox ~]$ cat /etc/pulse/client.conf
(...)
extra-arguments = --log-level=debug --log-target=/home/patrick/pulseverbose.log --log-time=1
I got this:
[patrick@redbox ~]$ nano pulseverbose.log
[patrick@redbox ~]$ cat pulseverbose.log
( 0.000| 0.000) I: [pulseaudio] main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted
( 0.000| 0.000) D: [pulseaudio] core-rtclock.c: Timer slack is set to 50 us.
( 0.003| 0.003) D: [pulseaudio] core-util.c: RealtimeKit worked.
( 0.003| 0.000) I: [pulseaudio] core-util.c: Successfully gained nice level -11.
( 0.003| 0.000) I: [pulseaudio] main.c: This is PulseAudio 11.1
( 0.003| 0.000) D: [pulseaudio] main.c: Compilation host: x86_64-pc-linux-gnu
( 0.003| 0.000) D: [pulseaudio] main.c: Compilation CFLAGS: -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -Wall -W -Wextra -Wno-long-long -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing -Wwrite-strings -Wno-unused-parameter -ffast-math -fno-common -fdiagnostics-show-option -fdiagnostics-color=auto
( 0.003| 0.000) D: [pulseaudio] main.c: Running on host: Linux x86_64 4.14.9-1-ARCH #1 SMP PREEMPT Tue Dec 26 00:18:37 UTC 2017
( 0.003| 0.000) D: [pulseaudio] main.c: Found 4 CPUs.
( 0.003| 0.000) I: [pulseaudio] main.c: Page size is 4096 bytes
( 0.003| 0.000) D: [pulseaudio] main.c: Compiled with Valgrind support: no
( 0.003| 0.000) D: [pulseaudio] main.c: Running in valgrind mode: no
( 0.003| 0.000) D: [pulseaudio] main.c: Running in VM: no
( 0.003| 0.000) D: [pulseaudio] main.c: Optimized build: yes
( 0.003| 0.000) D: [pulseaudio] main.c: FASTPATH defined, only fast path asserts disabled.
( 0.003| 0.000) I: [pulseaudio] main.c: Machine ID is d88bbae2cabe46119c8172bf29e4c987.
( 0.003| 0.000) I: [pulseaudio] main.c: Session ID is c3.
( 0.003| 0.000) I: [pulseaudio] main.c: Using runtime directory /run/user/1000/pulse.
( 0.003| 0.000) I: [pulseaudio] main.c: Using state directory /home/patrick/.config/pulse.
( 0.003| 0.000) I: [pulseaudio] main.c: Using modules directory /usr/lib/pulse-11.1/modules.
( 0.003| 0.000) I: [pulseaudio] main.c: Running in system mode: no
( 0.003| 0.000) E: [pulseaudio] pid.c: Daemon already running.
( 0.003| 0.000) E: [pulseaudio] main.c: pa_pid_file_create() failed.
But, I can see things started up:
[patrick@redbox ~]$ ps aux | grep pulse
gdm 580 0.3 0.1 1073332 10512 ? Ssl 20:21 0:00 /usr/bin/pulseaudio --daemonize=no
patrick 829 0.4 0.1 1083792 11172 ? S<sl 20:21 0:00 /usr/bin/pulseaudio --daemonize=no
[patrick@redbox ~]$ systemctl --user status pulseaudio
● pulseaudio.service - Sound Service
Loaded: loaded (/usr/lib/systemd/user/pulseaudio.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2017-12-31 20:21:31 CST; 2min 35s ago
Main PID: 829 (pulseaudio)
CGroup: /user.slice/user-1000.slice/user@1000.service/pulseaudio.service
└─829 /usr/bin/pulseaudio --daemonize=no
Dec 31 20:21:31 redbox systemd[708]: Starting Sound Service...
Dec 31 20:21:31 redbox systemd[708]: Started Sound Service.
Dec 31 20:21:31 redbox pulseaudio[829]: E: [pulseaudio] backend-ofono.c: Failed to register as a handsfree audio agent with ofono: org.freedesktop.DBus.Error.ServiceUnknown: The name org.ofono was not provided by any .service files
That error for "backend-ofono.c" shows up on my laptop, too, where audio works just fine.
I'm really at a loss for what else to investigate, here. Any help would be appreciated.
Last edited by musasabi (2018-01-01 07:30:23)
Offline
Kernel support for AMDs DC (which is necessary for HDMI/DP output) has only landed in 4.15, so if you can't wait, giving the linux-mainline package from the AUR a whirl might help you out.
Offline
Hot damn, really? So when I was doing audio over DisplayPort with my Vega 64 on Debian, that was only working because of the closed source drivers? (I bought it on launch day and fought with it for a good many hours just to get 3440x1440@100hz working on this display, but audio never gave me any issues.)
Offline
Actually... Ok, so that's DP/HDMI explained, but what about the analog HD audio stuff? I'm still only showing the APU and GPU's sound cards:
[patrick@redbox amdgpu-pro-fans]$ lspci | grep -ni audio
3:00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Kaveri HDMI/DP Audio Controller
28:01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 580]
Offline
Well, derp. This mobo/CPU/RAM is an old HTPC repurposed to a desktop. That said, I had disabled the onboard audio to force the then-installed OpenELEC to provide audio over the HDMI connection. But, does that means that audio over HDMI existed in the kernel a year or two ago for Kaveri-based APU's but has only just now come around for Polaris-based GPU's? Not complaining about my free software or anything, just wondering.
But for all intents and purposes, I'll mark this solved. Haha.
Offline
Well yeah amdgpu is an entirely new driver stack and the necessary parts for DP/HDMI output was only upstreamed now. They made an attempt at that way earlier, but the patch was rejected due to not being up to the kernel maintainers standards. So it took a while, see here as well: https://wiki.archlinux.org/index.php/AM … Vega_cards
Also for the future, if you are the only one posting in between, please append new information to your last post rather than bumping.
Offline