Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 Dec 2004 00:01:26 +0200
From:      Erik Udo <erik.u@dnainternet.net>
To:        freebsd-multimedia@freebsd.org
Subject:   Audio problems.
Message-ID:  <41D47AB6.8050804@dnainternet.net>

next in thread | raw e-mail | index | archive | help
I have the latest FreeBSD 5.3-STABLE on Asus a7v880.
It has integrated AD1888 AC97. I almost got it working
using snd_via8233, but no sound came out.
I got the audio working with the following patch:

--- sys/dev/sound/pcm/ac97.c.orig       Tue Nov 11 23:15:17 2003
+++ sys/dev/sound/pcm/ac97.c    Tue Aug 10 23:58:11 2004
@@ -124,6 +124,7 @@
         { 0x41445360, 0x00, 0, "AD1885",        0 },
         { 0x41445361, 0x00, 0, "AD1886",        ad1886_patch },
         { 0x41445362, 0x00, 0, "AD1887",        0 },
+       { 0x41445368, 0x00, 0, "AD1888",        ad198x_patch },
         { 0x41445363, 0x00, 0, "AD1886A",       0 },
         { 0x41445370, 0x00, 0, "AD1980",        ad198x_patch },
         { 0x41445372, 0x00, 0, "AD1981A",       0 },

The patch made my sound working but it goes too fast.
I once had that kind of problems but i solved it by
changing the hw,snd.pcm0.vchans and ac97rate. Now i dont
have sysctl hw.snd.pcm0.ac97rate! So if only i could
get the sound going at the normal speed i'd be very happy :)

Here is some info:
pcm0: <VIA VT8237> port 0xe400-0xe4ff irq 22 at device 17.5 on pci0
pcm0: [GIANT-LOCKED]
pcm0: <Analog Devices AD1888 AC97 Codec>
pcm0: <VIA VT8237> port 0xe400-0xe4ff irq 22 at device 17.5 on pci0
pcm0: Reserved 0x100 bytes for rid 0x10 type 4 at 0xe400
pcm0: [GIANT-LOCKED]
pcm0: <Analog Devices AD1888 AC97 Codec (id = 0x41445368)>
pcm0: Codec features headphone, 20 bit DAC, 5 bit master volume, no 3D 
Stereo Enhancement
pcm0: Primary codec extended features variable rate PCM, double rate 
PCM, reserved 1, center DAC, surround DAC, LFE DAC, AMAP
pcm0: sndbuf_setmap 2bb000, 1000; 0xc16a7000 -> 2bb000
pcm0: sndbuf_setmap 2d2000, 1000; 0xc16be000 -> 2d2000
pcm0: sndbuf_setmap 2f0000, 1000; 0xc16bc000 -> 2f0000
pcm0: sndbuf_setmap 2ce000, 1000; 0xc16ba000 -> 2ce000
pcm0: sndbuf_setmap 2ec000, 1000; 0xc16b8000 -> 2ec000
pcm0: sndbuf_setmap 2ea000, 1000; 0xc16b6000 -> 2ea000


FreeBSD Audio Driver (newpcm)
Installed devices:
pcm0: <VIA VT8237> at io 0xe400 irq 22  (5p/1r/6v channels duplex default)
         [pcm0:play:0]: spd 44100/48000, fmt 0x10000010, flags 
0x00001000, 0x00000010
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_vchan_s16(0x10000010) -> feeder_rate(44100 
-> 48000) -> {hardware}
         [pcm0:play:1]: spd 0, fmt 0x00000000/0x00000008, flags 
0x00000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         [pcm0:play:2]: spd 0, fmt 0x00000000/0x00000008, flags 
0x00000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         [pcm0:play:3]: spd 0, fmt 0x00000000/0x00000008, flags 
0x00000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         [pcm0:play:4]: spd 0, fmt 0x00000000/0x00000008, flags 
0x00000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         [pcm0:record:0]: spd 0, fmt 0x00000000/0x00000008, flags 
0x00000000, 0x00000000
         interrupts 0, overruns 0, hfree 4096, sfree 0
         {hardware} -> feeder_root(0x00000000) -> {userland}
         pcm0:play:0[pcm0:virtual:0]: spd 0, fmt 0x00000000/0x00000008, 
flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         pcm0:play:0[pcm0:virtual:1]: spd 0, fmt 0x00000000/0x00000008, 
flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         pcm0:play:0[pcm0:virtual:2]: spd 0, fmt 0x00000000/0x00000008, 
flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         pcm0:play:0[pcm0:virtual:3]: spd 0, fmt 0x00000000/0x00000008, 
flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         pcm0:play:0[pcm0:virtual:4]: spd 0, fmt 0x00000000/0x00000008, 
flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}
         pcm0:play:0[pcm0:virtual:5]: spd 0, fmt 0x00000000/0x00000008, 
flags 0x10000000, 0x00000000
         interrupts 0, underruns 0, ready 0
         {userland} -> feeder_root(0x00000000) -> {hardware}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41D47AB6.8050804>