After upgrading to Slackware 15.0 I kept using Bluetooth for headphones and only later found out that sound through wires didn’t work if plugged into front panel. While advices on the Web immediately jump to module settings I realized that on 14.2 everything worked with Alsa and PulseAudio, so usage of PipeWire might have contributed to the issue.
Alsa devices
Since dmesg included this line:
[ 4.033864] input: HDA Intel PCH Front Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card0/input7
I looked at the output of aplay -L and found:
front:CARD=PCH,DEV=0
HDA Intel PCH, ALC887-VD Analog
Front output / input
This is where I went looking in PipeWire configuration files for ways to enable
this somehow, because pavucontrol didn’t present a corresponding entry.
PipeWire configuration for front panel
pipewire.conf copied from /usr/share/pipewire/ contains this commented-out
section:
# This creates a single PCM source device for the given
# alsa device path hw:0. You can change source to sink
# to make a sink in the same way.
#{ factory = adapter
# args = {
# factory.name = api.alsa.pcm.source
# node.name = "alsa-source"
# node.description = "PCM Source"
# media.class = "Audio/Source"
# api.alsa.path = "hw:0"
# api.alsa.period-size = 1024
# api.alsa.headroom = 0
# api.alsa.disable-mmap = false
# api.alsa.disable-batch = false
# audio.format = "S16LE"
# audio.rate = 48000
# audio.channels = 2
# audio.position = "FL,FR"
# }
#}
I just edited it as the comment suggests:
{ factory = adapter
args = {
factory.name = api.alsa.pcm.sink
node.name = "alsa-sink"
node.description = "Front Panel"
media.class = "Audio/Sink"
api.alsa.path = "front:CARD=PCH,DEV=0"
api.alsa.period-size = 1024
api.alsa.headroom = 0
api.alsa.disable-mmap = false
api.alsa.disable-batch = false
audio.format = "S16LE"
audio.rate = 48000
audio.channels = 2
audio.position = "FL,FR"
}
}
Then restarted pipewire* and was able to use front panel jacks again. It
would be nice if it just listed the device from the start, but it’s not that
hard to do manually either.