Subject: Sound from HDMI (pcm2) using i915kms.ko

Steven Friedrich FreeBSD at twc.com
Wed Feb 17 06:07:28 UTC 2021


Message-ID: <1772815.u6MfGjpqfb at freebsd>
Content-Type: text/plain; charset="us-ascii"

I am running FreeBSD 12.2-RELEASE-p3 FreeBSD 12.2-RELEASE-p3 r369261 FreeBSD  
amd64
I put hw.snd.default_unit=2 in /etc/sysctl.conf to make pcm2 default.
cat /dev/sndstat confirms:
Installed devices:
pcm0: <Realtek ALC671 (Rear Analog)> (play/rec)
pcm1: <Realtek ALC671 (Analog)> (play/rec)
pcm2: <Intel Kaby Lake (HDMI/DP 8ch)> (play) default
No devices installed from userspace.

But no sound is emitted from HDMI connector.

It's my understanding that this requires some support in the video driver, 
i915kms.ko

I have added WITHOUT_MODULES=i915kms
to /etc/make.conf, and built from ports, both:
drm-fbsd12.0-kmod-4.16.g20201016_1 DRM modules for the linuxkpi-based KMS 
components
gpu-firmware-kmod-g20201213    Firmware modules for the linuxkpi-based KMS 
components
Still no joy.
My processor is: Core i7-8700 (Coffee Lake), with UHD Graphics 630.

I also tried tunable: hw.snd.compat_linux_mmap=1 in /etc/sysctl.conf, to no 
avail.
I get sound under Linux Mint, KDE Neon, Kubuntu, and Windows 10 Pro.
I do get sound from pcm0(rear audio jack) or pcm1(front audio jack).
But this monitor is shared with a Windows machine and FreeBSD is the only OS 
not outputting sound on HDMI.

Any ideas?
I never tried to reply to a message I got in a digest.  Forgive me if I've 
done it wrong.

I just wanted to update this thread with dmesg and pciconf output:
hdacc0: <Realtek ALC671 HDA CODEC> at cad 0 on hdac0                                                                                                                                                                                            
hdaa0: <Realtek ALC671 Audio Function Group> at nid 1 on hdacc0                                                                                                                                                                                 
pcm0: <Realtek ALC671 (Rear Analog)> at nid 20 and 27 on hdaa0                                                                                                                                                                                  
pcm1: <Realtek ALC671 (Analog)> at nid 33 and 24 on hdaa0                                                                                                                                                                                       
hdacc1: <Intel Kaby Lake HDA CODEC> at cad 2 on hdac0                                                                                                                                                                                           
hdaa1: <Intel Kaby Lake Audio Function Group> at nid 1 on hdacc1                                                                                                                                                                                
pcm2: <Intel Kaby Lake (HDMI/DP 8ch)> at nid 3 on hdaa1

hdac0 at pci0:0:31:3:      class=0x040300 card=0x843f103c chip=0xa3488086 
rev=0x10 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Cannon Lake PCH cAVS'
    class      = multimedia
    subclass   = HDA
Note the HDMI sound is on cad 2 (and doesn't work), the sound functions on cad 
0 work.  Also note that cad 0 is a Realtek device and cad 2 is an Intel 
device.




More information about the freebsd-questions mailing list