VIA sound device "Operation not supported", works with kldload

Robert Backhaus robbak at robbak.com
Thu Jun 19 07:59:50 UTC 2008


On my new system, the onboard sound device works if you kldload the
module, but not at boot, whether by loader.conf, or built into the
kernel.

Here is a screen dump showing the issue.

[robbak at boffin ~]$ uname -a
FreeBSD boffin 7.0-STABLE FreeBSD 7.0-STABLE #11: Mon Jun 16 14:07:34 EST 2008
   root at boffin:/usr/obj/usr/src/sys/BOFFIN  i386
[robbak at boffin ~]$ cat /boot/loader.conf
linux_load="YES"
snd_hda_load="YES"
cpufreq_load="YES"

wlan_xauth_load="YES"
wlan_scan_sta_load="YES"
wlan_scan_ap_load="YES"
[robbak at boffin ~]$ mpg123 /home/robbak/music/mp3/comedy/stan\ freberg\ -\ the\
great\ pretender.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
Version 0.59r (1999/Jun/15). Written and copyrights by Michael Hipp.
Uses code from various people. See 'README' for more!
THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!
/dev/dsp: Operation not supported
audio: Operation not supported
[robbak at boffin ~]$ sudo kldunload snd_hda
Password:
pcm0: detached
pcm1: detached
[robbak at boffin ~]$ sudo kldload snd_hda
pcm0: <ATI SB600 High Definition Audio Controller> mem xfe024000-0xfe027fff irq
 16 at device 20.2 on pci0
pcm0: [ITHREAD]
pcm0: <HDA Codec: Realtek ALC885>
pcm0: <HDA Driver Revision: 20071129_0050>
pcm1: <ATI (Unknown) High Definition Audio Controller> mem 0xfdffc000-0xfdffffff
 irq 19 at device 5.2 on pci1
pcm1: [ITHREAD]
pcm1: <HDA Codec: Unknown Codec>
pcm1: <HDA Driver Revision: 20071129_0050>
[robbak at boffin ~]$ mpg123 /home/robbak/music/mp3/comedy/stan\ freberg\ -\ the\
great\ pretender.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
Version 0.59r (1999/Jun/15). Written and copyrights by Michael Hipp.
Uses code from various people. See 'README' for more!
THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!
Title  : Great Pretender                 Artist: Stan Freberg
Album  :                                 Year  :    0
Comment:                                 Genre : Unknown

Directory: /home/robbak/music/mp3/comedy/
Playing MPEG stream from stan freberg - the great pretender.mp3 ...
MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo

And I have sound.

Interestingly, at boot, the two pcm devices are detected in the
reverse order. This may be significant, because the first pcm device
is marked in /dev/sndstat as 'mixer only'. See the following dmesg,
and note the memory addresses.

$ dmesg |grep pcm
pcm0: <ATI (Unknown) High Definition Audio Controller> mem
0xfdffc000-0xfdffffff irq 19 at device 5.2 on pci1
pcm0: [ITHREAD]
pcm1: <ATI SB600 High Definition Audio Controller> mem
0xfe024000-0xfe027fff irq 16 at device 20.2 on pci0
pcm1: [ITHREAD]
pcm0: <HDA Codec: Unknown Codec>
pcm0: <HDA Driver Revision: 20071129_0050>
pcm1: <HDA Codec: Realtek ALC885>
pcm1: <HDA Driver Revision: 20071129_0050>
pcm0: detached
pcm1: detached
pcm0: <ATI SB600 High Definition Audio Controller> mem
0xfe024000-0xfe027fff irq 16 at device 20.2 on pci0
pcm0: [ITHREAD]
pcm0: <HDA Codec: Realtek ALC885>
pcm0: <HDA Driver Revision: 20071129_0050>
pcm1: <ATI (Unknown) High Definition Audio Controller> mem
0xfdffc000-0xfdffffff irq 19 at device 5.2 on pci1
pcm1: [ITHREAD]
pcm1: <HDA Codec: Unknown Codec>
pcm1: <HDA Driver Revision: 20071129_0050>

And /dev/sndstat, for completeness
Code:

$ cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 32bit 2007061600/i386)
Installed devices:
pcm0: <ATI SB600 High Definition Audio Controller> at memory
0xfe024000 irq 16 kld snd_hda [20071129_0050] [MPSAFE] (1p:2v/1r:1v
channels duplex default)
pcm1: <ATI (Unknown) High Definition Audio Controller> at memory
0xfdffc000 irq 19 kld snd_hda [20071129_0050] [MPSAFE] (mixer only)

Searches have located a few questions like this, but not many answers.
I'll hack it by loading the module from rc.conf, but is anything known
about this?


More information about the freebsd-multimedia mailing list