On Fri, 20 Jan 2023 12:39:01 +0100, Mike FABIAN wrote:
Takashi Iwai tiwai@suse.de さんはかきました:
And, with this state, can you use the built-in mic? Also, how after restoring the module option?
Yes, I can use the microphone built into the laptop. I think I can use that always, independent on whether I use the module option or not.
Aha, then that's a different system from what I've thought. The mic is routed apparently via Intel SOF driver.
Also, maybe more fundamental question: how exactly "it didn't work"? Does the HDMI device appear on pipewire / PulseAudio, but the output results in silence? Or Is no HDMI listed there?
HDMI is listed in pavucontrol.
Actually it is listed there 3 times:
HDMI/Displayport 3 Output (unplugged) HDMI/Displayport 2 Output (unplugged) HDMI/Displayport 1 Output (plugged in)
But when I select it, I heards nothing from the monitor speakers. I tried all 3 HDMI/Displayport in pavucontrol because I was not sure which one was the right one, but I didn’t hear anything when trying to use any of them.
xrandr showed me the following outputs:
$ xrandr | grep connected eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 309mm x 174mm HDMI-1 disconnected (normal left inverted right x axis y axis) DP-1 disconnected (normal left inverted right x axis y axis) DP-2 disconnected (normal left inverted right x axis y axis) DP-3 disconnected (normal left inverted right x axis y axis) DP-4 disconnected (normal left inverted right x axis y axis) DP-3-1 disconnected (normal left inverted right x axis y axis) DP-3-2 disconnected (normal left inverted right x axis y axis) DP-3-3 connected 3840x2160+1920+0 (normal left inverted right x axis y axis) 600mm x 340mm
DP-3-3 is my external monitor which has speakers.
Please check /proc/asound/card0/eld#* (for the card number 0, as found in /proc/asound/cards as sof-hda-dsp). One of them should have a valid ELD entry. This is the first step. If no proper monitor and ELD is found in those, something wrong at the detection in the kernel.
The next is to test aplay directly with the device. "aplay -L" will show the possible option, and you can try like
% apaly -Dhdmi:CARD=xxx,DEV=x -vv foo.wav
for a WAV file in a format matching with the supported device (typically 2 channel stereo 44.1kHz or 48kHz 16 or 32bit format). If this gets a busy error, stop wireplumber once during the test: % systemctl --user stop wireplumber % aplay .... % systemctl --user start wireplumber
If the aplay test doesn't work, again, it means that there's something wrong in the kernel.
After I did set that module option with modprobe and rebooted, I could select
HDMI/Displayport 1 Output (plugged in)
in pavucontrol and hear sound from the monitor speakers. So what xrandr calls DP-3-3 seems to be HDMI/Displayport 1 (plugged in) in pavucontrol.
BTW, the lack of AMD SoC stuff might be related with the device power state. A cold boot might change the situation (or trying back to an older known kernel).
I’ll try to boot again and see whether it breaks again. Currently I booted without the module option and it still works, but there was a kernel update.
That might explain. There were a few fixes about HDMI HD-audio stuff recently.
thanks,
Takashi