> I have a Problem with my specific ad1981b "Intel 82801DB AC97"
> Soundcard in my Sony Vaio Tr2/B. Sometimes xmms does start to play
> but there is no sound sometimes it does not even start.

here is dmesg from similar box with similar problem: no sound at all.
note "auich0: measured ac97 link rate at 48004 Hz, will use 48000 Hz".

strange, but "link rate at 48004 Hz" always shows different frequency.

this box is currently out of my access, but i have tried this diff derived
from NetBSD, but it didn't fix the problem for me (maybe due no VRA).

your box seems to have VRA (ac97: ext id 601<vra,amap,rev0>). try
this diff...

--- sys/dev/ic/ac97.c.orig
+++ sys/dev/ic/ac97.c
@@ -706,7 +706,7 @@
 ac97_attach(struct ac97_host_if *host_if)
 {
        struct ac97_softc *as;
-       u_int16_t id1, id2;
+       u_int16_t id1, id2, rate;
        u_int32_t id;
        mixer_ctrl_t ctl;
        int error, i;
@@ -794,6 +794,20 @@
                if (as->ext_id & AC97_EXT_AUDIO_VRM)
                        id1 |= AC97_EXT_AUDIO_VRM;
                ac97_write(as, AC97_REG_EXT_AUDIO_CTRL, id1);
+       }
+       if (as->ext_id & AC97_EXT_AUDIO_VRA) {
+               /* VRA should be enabled. */
+               /* codec claims to do variable rate, let's make sure */
+               ac97_write(as, AC97_REG_FRONT_DAC_RATE, 44100);
+               ac97_read(as, AC97_REG_FRONT_DAC_RATE, &rate);
+               if (rate != 44100) {
+                       /* We can't believe ext_id */
+                       as->ext_id = 0;
+                       printf("ac97: ignoring extended capabilities.\n");
+               }
+               /* restore the default value */
+               ac97_write(as, AC97_REG_FRONT_DAC_RATE,
+                       AC97_SINGLERATE);
        }
 
        ac97_setup_source_info(as);

OpenBSD 3.9 (faka) #0: Tue May  9 05:12:42 EEST 2006
    [EMAIL PROTECTED]:/usr/src/sys/arch/i386/compile/faka
cpu0: Intel(R) Pentium(R) M processor 1000MHz ("GenuineIntel" 686-class) 595 
MHz
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,CFLUSH,ACPI,MMX,FXSR,SSE,SSE2,TM,SBF,EST,TM2
cpu0: Enhanced SpeedStep 600 MHz (844 mV): speeds: 1000, 900, 800, 600 MHz
real mem  = 531079168 (518632K)
avail mem = 477130752 (465948K)
using 4278 buffers containing 26656768 bytes (26032K) of memory
mainbus0 (root)
bios0 at mainbus0: AT/286+(6f) BIOS, date 07/29/03, BIOS32 rev. 0 @ 0xfd750
apm0 at bios0: Power Management spec V1.2
apm0: AC on, battery charge unknown
apm0: flags 30102 dobusy 0 doidle 1
pcibios0 at bios0: rev 2.1 @ 0xfd750/0x8b0
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdf30/176 (9 entries)
pcibios0: PCI Interrupt Router at 000:31:0 ("Intel 82371FB ISA" rev 0x00)
pcibios0: PCI bus #2 is the last bus
bios0: ROM list: 0xc0000/0x10000 0xd8000/0x4000! 0xdc000/0x4000!
cpu0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "Intel 82852GM Hub-PCI" rev 0x02
"Intel 82852GM Memory" rev 0x02 at pci0 dev 0 function 1 not configured
"Intel 82852GM Configuration" rev 0x02 at pci0 dev 0 function 3 not configured
vga1 at pci0 dev 2 function 0 "Intel 82852GM AGP" rev 0x02: aperture at 
0xe8000000, size 0x8000000
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
"Intel 82852GM AGP" rev 0x02 at pci0 dev 2 function 1 not configured
uhci0 at pci0 dev 29 function 0 "Intel 82801DB USB" rev 0x03: irq 9
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: Intel UHCI root hub, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1 at pci0 dev 29 function 1 "Intel 82801DB USB" rev 0x03: irq 9
usb1 at uhci1: USB revision 1.0
uhub1 at usb1
uhub1: Intel UHCI root hub, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
uhci2 at pci0 dev 29 function 2 "Intel 82801DB USB" rev 0x03pci_intr_map: no 
mapping for pin C
: couldn't map interrupt
ehci0 at pci0 dev 29 function 7 "Intel 82801DB USB" rev 0x03pci_intr_map: no 
mapping for pin D
: couldn't map interrupt
ppb0 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0x83
pci1 at ppb0 bus 1
cbb0 at pci1 dev 5 function 0 "Ricoh 5C475 CardBus" rev 0xb8: irq 3
"Ricoh 5C551 Firewire" rev 0x00 at pci1 dev 5 function 1 not configured
fxp0 at pci1 dev 8 function 0 "Intel PRO/100 VE" rev 0x83, i82562: irq 9, 
address 08:00:46:cb:91:d6
inphy0 at fxp0 phy 1: i82562ET 10/100 PHY, rev. 0
ipw0 at pci1 dev 11 function 0 "Intel PRO/Wireless 2100" rev 0x04: irq 9, 
address 00:04:23:8c:a7:86
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 2 device 0 cacheline 0x0, lattimer 0x40
pcmcia0 at cardslot0
ichpcib0 at pci0 dev 31 function 0 "Intel 82801DBM LPC" rev 0x03
pciide0 at pci0 dev 31 function 1 "Intel 82801DBM IDE" rev 0x03: DMA, channel 
0 configured to compatibility, channel 1 configured to compatibility
wd0 at pciide0 channel 0 drive 0: <TOSHIBA MK4004GAH>
wd0: 16-sector PIO, LBA, 38147MB, 78126048 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5
atapiscsi0 at pciide0 channel 1 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: <MATSHITA, UJDA745 DVD/CDRW, 1.04> SCSI0 5/cdrom 
removable
cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
ichiic0 at pci0 dev 31 function 3 "Intel 82801DB SMBus" rev 0x03pci_intr_map: 
no mapping for pin B
: polling
iic0 at ichiic0
auich0 at pci0 dev 31 function 5 "Intel 82801DB AC97" rev 0x03: irq 9, ICH4 
AC97
ac97: codec id 0x41445374 (Analog Devices AD1981B)
ac97: codec features headphone, 20 bit DAC, No 3D Stereo
audio0 at auich0
"Intel 82801DB Modem" rev 0x03 at pci0 dev 31 function 6 not configured
isa0 at ichpcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
npx0 at isa0 port 0xf0/16: using exception 16
biomask effd netmask effd ttymask ffff
pctr: 686-class user-level performance counters enabled
mtrr: Pentium Pro MTRR support
ugen0 at uhub1 port 1
ugen0: Sony product 0x0107, rev 1.10/0.00, addr 2
uhidev0 at uhub0 port 1 configuration 1 interface 0
uhidev0: Logitech USB-PS/2 Optical Mouse, rev 2.00/20.00, addr 2, iclass 3/1
ums0 at uhidev0: 3 buttons and Z dir.
wsmouse1 at ums0 mux 0
umodem0 at uhub0 port 2 configuration 1 interface 1
umodem0: Nokia Nokia 6230, rev 1.10/5.24, addr 3, iclass 2/2
umodem0: data interface 2, has CM over data, has break
umodem0: status change notification available
ucom0 at umodem0
dkcsum: wd0 matches BIOS drive 0x80
root on wd0a
rootdev=0x0 rrootdev=0x300 rawdev=0x302
auich0: measured ac97 link rate at 48004 Hz, will use 48000 Hz

Reply via email to