I just looked through all my computers and found two Intel Haswell systems that behave different:
System "A" does not have HDMI audio settings in BIOS. A HDMI audio device shows up in
cat /dev/sndstat
Code:
% cat /dev/sndstat
Installed devices:
pcm0: <Intel Haswell (HDMI/DP 8ch)> (play)
System "B" also has the "SPDIF out type" in the BIOS. but setting it to HDMI, still does not make any HDMI audio device show up in
cat /dev/sndstat
.
Below I post both machine's output of
sysctl dev.hdaa.0
for comparison.
System "A"
with HDMI showing up:
Code:
% sysctl dev.hdaa.0
dev.hdaa.0.reconfig: 0
dev.hdaa.0.gpo_config:
dev.hdaa.0.gpo_state:
dev.hdaa.0.gpio_config:
dev.hdaa.0.gpio_state:
dev.hdaa.0.gpi_state:
dev.hdaa.0.config: forcestereo,ivref50,ivref80,ivref100,ivref,vref
dev.hdaa.0.nid3_original: 0x18560010 as=1 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid3_config: 0x18560010 as=1 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid3: pin: Digital-out (Jack)
Widget cap: 0x0040778d PWR DIGITAL UNSOL 8CH
Association: 0 (0x0001)
Pin cap: 0x09000094 PDC OUT HDMI DP HBR
Pin config: 0x18560010 as=1 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
Pin control: 0x00000040 OUT
Output amp: 0x80000000 mute=1 step=0 size=0 offset=0 (0/0dB)
Connections: 1
+ <- nid=2 [audio output]
dev.hdaa.0.nid2: audio output
Widget cap: 0x00006611 PWR DIGITAL 8CH
Association: 0 (0x0001)
OSS: pcm (pcm)
Stream cap: 0x00000005 AC3 PCM
PCM cap: 0x001e07f0 16 20 24 32 bits, 32 44 48 88 96 176 192 KHz
dev.hdaa.0.%parent: hdacc0
dev.hdaa.0.%pnpinfo: type=0x01 subsystem=0x80860101
dev.hdaa.0.%location: nid=1
dev.hdaa.0.%driver: hdaa
dev.hdaa.0.%desc: Intel Haswell Audio Function Group
System "B"
without HDMI showing up:
Code:
sysctl dev.hdaa.0
dev.hdaa.0.reconfig: 0
dev.hdaa.0.gpo_config:
dev.hdaa.0.gpo_state:
dev.hdaa.0.gpio_config:
dev.hdaa.0.gpio_state:
dev.hdaa.0.gpi_state:
dev.hdaa.0.config: forcestereo,ivref50,ivref80,ivref100,ivref,vref
dev.hdaa.0.nid3_original: 0x58560010 as=1 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid3_config: 0x58560010 as=1 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid3: pin: Digital-out (None) [DISABLED]
Widget cap: 0x0040778d PWR DIGITAL UNSOL 8CH
Pin cap: 0x09000094 PDC OUT HDMI DP HBR
Pin config: 0x58560010 as=1 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
Pin control: 0x00000000
Output amp: 0x80000000 mute=1 step=0 size=0 offset=0 (0/0dB)
Connections: 1
+ [DISABLED] <- nid=2 [audio output] [DISABLED]
dev.hdaa.0.nid2: audio output [DISABLED]
Widget cap: 0x00006611 PWR DIGITAL 8CH
Stream cap: 0x00000005 AC3 PCM
PCM cap: 0x001e07f0 16 20 24 32 bits, 32 44 48 88 96 176 192 KHz
dev.hdaa.0.%parent: hdacc0
dev.hdaa.0.%pnpinfo: type=0x01 subsystem=0x80860101
dev.hdaa.0.%location: nid=1
dev.hdaa.0.%driver: hdaa
dev.hdaa.0.%desc: Intel Haswell Audio Function Group
Take a look at
dev.hdaa.0.nid3 and
dev.hdaa.0.nid3_config, they are different, as on the machine with no HDMI device, there is "conn=none", which means disabled.
As
dev.hdaa.0.nid3 is read-only I'd try something like the following in
/boot/device.hints
hint.hdaa.0.nid3.config="conn=jack"
I'm not sure if that would associate the pin with the HDMI connector when it's set to HDMI in BIOS, but it's worth a try.
snd_hda(4) has explains the hints and for the "as", "seq" stuff.
If it should require editing the seqences and association of pins, just search the forum for "sound" and you'll find some good threads with examples.
I can't do any further testing on my machine, as said computer is a server, I heavily use for other things right now.
Still I hope this helps you, getting it to work.