snd_hda: ALC888/1200 and mixer empty

martinko gamato at users.sf.net
Mon Jun 15 21:05:12 UTC 2009


Hallo,

I've got issues with snd_hda(4) driver.  According to Windows driver 
I've got Realtek ALC1200 but FreeBSD says it's ALC888.  mixer(8) doesn't 
show any devices and applications complain about it.  However, if I just 
cat sth.wav > /dev/dsp I can hear a sound/noise.  The listing follows.. 
  Please note that I changed default output to digital optical (Toslink).

$ uname -a
FreeBSD mc-sg03-bsd.gamato.local 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri 
May  1 07:18:07 UTC 2009 
root at driscoll.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64

$ sysctl hw.snd
hw.snd.latency_profile: 1
hw.snd.latency: 5
hw.snd.report_soft_formats: 1
hw.snd.compat_linux_mmap: 0
hw.snd.feeder_buffersize: 16384
hw.snd.feeder_rate_round: 25
hw.snd.feeder_rate_max: 2016000
hw.snd.feeder_rate_min: 1
hw.snd.verbose: 2
hw.snd.maxautovchans: 16
hw.snd.default_unit: 3
hw.snd.version: 2007061600/amd64
hw.snd.default_auto: 0

$ cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 64bit 2007061600/amd64)
Installed devices:
pcm0: <HDA ATI RS690/780 HDMI PCM #0 Digital> at cad 0 nid 1 on hdac0 
kld snd_hda [MPSAFE] (1p:1v/0r:0v channels)
         [pcm0:play:dsp0.p0]: spd 48000, fmt 0x10000010, flags 
0x00101000, 0x00000000
         interrupts 0, underruns 0, feed 0, ready 0 
[b:4096/2048/2|bs:4096/2048/2]
         {userland} -> feeder_vchan(0x10000010) -> {hardware}
         pcm0:play:dsp0.p0[pcm0:virtual:dsp0.vp0]: spd 0, fmt 
0x00000000/0x00000008, flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
         {userland} -> feeder_root(0x00000000) -> {hardware}
pcm1: <HDA Realtek ALC888 PCM #0 Analog> at cad 0 nid 1 on hdac1 kld 
snd_hda [MPSAFE] (1p:1v/1r:1v channels duplex)
         [pcm1:play:dsp1.p0]: spd 48000, fmt 0x10000010, flags 
0x00101000, 0x00000020
         interrupts 0, underruns 0, feed 0, ready 0 
[b:4096/2048/2|bs:4096/2048/2]
         {userland} -> feeder_vchan(0x10000010) -> 
feeder_volume(0x10000010) -> {hardware}
         pcm1:play:dsp1.p0[pcm1:virtual:dsp1.vp0]: spd 0, fmt 
0x00000000/0x00000008, flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
         {userland} -> feeder_root(0x00000000) -> {hardware}
         [pcm1:record:dsp1.r0]: spd 48000, fmt 0x10000010, flags 
0x00101000, 0x00000000
         interrupts 0, overruns 0, feed 0, hfree 4096, sfree 4096 
[b:4096/2048/2|bs:4096/2048/2]
         {hardware} -> feeder_root(0x10000010) -> 
feeder_vchan(0x10000010) -> {userland}
         pcm1:record:dsp1.r0[pcm1:virtual:dsp1.vr0]: spd 0, fmt 
0x00000000/0x00000008, flags 0x10000000, 0x00000000
         interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 
[b:0/0/0|bs:0/0/0]
         {hardware} -> feeder_root(0x00000000) -> {userland}
pcm2: <HDA Realtek ALC888 PCM #1 Analog> at cad 0 nid 1 on hdac1 kld 
snd_hda [MPSAFE] (1p:1v/1r:1v channels duplex)
         [pcm2:play:dsp2.p0]: spd 48000, fmt 0x10000010, flags 
0x00101000, 0x00000020
         interrupts 0, underruns 0, feed 0, ready 0 
[b:4096/2048/2|bs:4096/2048/2]
         {userland} -> feeder_vchan(0x10000010) -> 
feeder_volume(0x10000010) -> {hardware}
         pcm2:play:dsp2.p0[pcm2:virtual:dsp2.vp0]: spd 0, fmt 
0x00000000/0x00000008, flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
         {userland} -> feeder_root(0x00000000) -> {hardware}
         [pcm2:record:dsp2.r0]: spd 48000, fmt 0x10000010, flags 
0x00101000, 0x00000000
         interrupts 0, overruns 0, feed 0, hfree 4096, sfree 4096 
[b:4096/2048/2|bs:4096/2048/2]
         {hardware} -> feeder_root(0x10000010) -> 
feeder_vchan(0x10000010) -> {userland}
         pcm2:record:dsp2.r0[pcm2:virtual:dsp2.vr0]: spd 0, fmt 
0x00000000/0x00000008, flags 0x10000000, 0x00000000
         interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 
[b:0/0/0|bs:0/0/0]
         {hardware} -> feeder_root(0x00000000) -> {userland}
pcm3: <HDA Realtek ALC888 PCM #2 Digital> at cad 0 nid 1 on hdac1 kld 
snd_hda [MPSAFE] (1p:1v/0r:0v channels default)
         [pcm3:play:dsp3.p0]: spd 48000, fmt 0x10000010, flags 
0x00101000, 0x00000000
         interrupts 0, underruns 0, feed 0, ready 0 
[b:4096/2048/2|bs:4096/2048/2]
         {userland} -> feeder_vchan(0x10000010) -> {hardware}
         pcm3:play:dsp3.p0[pcm3:virtual:dsp3.vp0]: spd 0, fmt 
0x00000000/0x00000008, flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
         {userland} -> feeder_root(0x00000000) -> {hardware}
pcm4: <HDA Realtek ALC888 PCM #3 Digital> at cad 0 nid 1 on hdac1 kld 
snd_hda [MPSAFE] (1p:1v/0r:0v channels)
         [pcm4:play:dsp4.p0]: spd 48000, fmt 0x10000010, flags 
0x00101000, 0x00000000
         interrupts 0, underruns 0, feed 0, ready 0 
[b:4096/2048/2|bs:4096/2048/2]
         {userland} -> feeder_vchan(0x10000010) -> {hardware}
         pcm4:play:dsp4.p0[pcm4:virtual:dsp4.vp0]: spd 0, fmt 
0x00000000/0x00000008, flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
         {userland} -> feeder_root(0x00000000) -> {hardware}



More information about the freebsd-multimedia mailing list