NetBSD 1.6.2 GENERIC: i82801CA AC-97 Audio Problem

chris_m

New Member
Hallo liebe NetBSD'ler,

Möchte euch alle einmal begrüssen, bin neu, habe die letzten Jahre mit AIX und Linux i386/s390(x)/ppc verbracht. Habe folgendes Problem:

Sony Vaio PCG-GRV516G mit Soundkarte(Output dmesg(verwende GENERIC Kernel von NetBSD 1.6.2 i386)

netbsd: auich0 at pci0 dev 31 function 5: i82801CA AC-97 Audio
netbsd: auich0: interrupting at irq 9
netbsd: auich0: YMH3 codec; 18 bit DAC, no 3D stereo
netbsd: auich0: warning, fixed rate codec
netbsd: audio0 at auich0: full duplex, mmap, independent

Kann auf /dev/audio was reinschieben(z.B. cat /netbsd > /dev/audio) und kann den Kernel hören :) Jetzt kommst:

Raw, Wav, mp3, ... klingen bei mir sehr apgehackt. In /var/log/messages sehe ich in regelmäßigen Abständen die Meldung:
auich0: fifo underrun #<number>
auich0: fifo underrun #<number+1>
auich0: fifo underrun #<number+2>...

Kernel Sources: Die Meldung kommt von /sys/dev/pci/auich.c(habe ich mit weiterer printf verifiziert)

888 if (sts & ICH_FIFOE) {
889 printf("%s: fifo underrun # %u\n",
890 sc->sc_dev.dv_xname, ++sc->pcmo_fifoe);
891 }

Jetzt wird's aber noch besser:

Wenn ich im X über xterm ein mpg123(oder irgendwas anderes) auf ein *.mp3 file mache höre ich die Nummer nur dann abgehackt, wenn ich die Maus nicht bewege(verwende USB Mouse im Xfree86). (???) Wirklich! Es scheint so, um so schneller ich die Maus einfach nur bewege, um so besser wird es mit dem Sound. (???).

Hatte vor NetBSD Linux im Einsatz und auch dieses Problem, konnte mir aber durch debuggen und verdrehen einiger Values das Problem lösen. (Habe Linux gekübelt und mit NetBSD ersetzt und mir die Kernelsources vom Linux nicht aufgehoben...). Aber wie's in der NetBSD Philosophie so ist, würde ich diesmal eine saubere Lösung haben(und auch verstehen) und keinen Hack reinfetzten.

Wo kann ich ansetzten? Doku zu dieser Hardware habe ich nicht gefunden und beim Kernel schauts noch nicht so gut aus bei mir.

Danke,

Christian(chris_m)
 
re: Vaio und Sound

Versuch's mal mit dem current Kernel.


chris_m schrieb:
Hallo liebe NetBSD'ler,

Möchte euch alle einmal begrüssen, bin neu, habe die letzten Jahre mit AIX und Linux i386/s390(x)/ppc verbracht. Habe folgendes Problem:

Sony Vaio PCG-GRV516G mit Soundkarte(Output dmesg(verwende GENERIC Kernel von NetBSD 1.6.2 i386)

netbsd: auich0 at pci0 dev 31 function 5: i82801CA AC-97 Audio
netbsd: auich0: interrupting at irq 9
netbsd: auich0: YMH3 codec; 18 bit DAC, no 3D stereo
netbsd: auich0: warning, fixed rate codec
netbsd: audio0 at auich0: full duplex, mmap, independent

Kann auf /dev/audio was reinschieben(z.B. cat /netbsd > /dev/audio) und kann den Kernel hören :) Jetzt kommst:

Raw, Wav, mp3, ... klingen bei mir sehr apgehackt. In /var/log/messages sehe ich in regelmäßigen Abständen die Meldung:
auich0: fifo underrun #<number>
auich0: fifo underrun #<number+1>
auich0: fifo underrun #<number+2>...

Kernel Sources: Die Meldung kommt von /sys/dev/pci/auich.c(habe ich mit weiterer printf verifiziert)

888 if (sts & ICH_FIFOE) {
889 printf("%s: fifo underrun # %u\n",
890 sc->sc_dev.dv_xname, ++sc->pcmo_fifoe);
891 }

Jetzt wird's aber noch besser:

Wenn ich im X über xterm ein mpg123(oder irgendwas anderes) auf ein *.mp3 file mache höre ich die Nummer nur dann abgehackt, wenn ich die Maus nicht bewege(verwende USB Mouse im Xfree86). (???) Wirklich! Es scheint so, um so schneller ich die Maus einfach nur bewege, um so besser wird es mit dem Sound. (???).

Hatte vor NetBSD Linux im Einsatz und auch dieses Problem, konnte mir aber durch debuggen und verdrehen einiger Values das Problem lösen. (Habe Linux gekübelt und mit NetBSD ersetzt und mir die Kernelsources vom Linux nicht aufgehoben...). Aber wie's in der NetBSD Philosophie so ist, würde ich diesmal eine saubere Lösung haben(und auch verstehen) und keinen Hack reinfetzten.

Wo kann ich ansetzten? Doku zu dieser Hardware habe ich nicht gefunden und beim Kernel schauts noch nicht so gut aus bei mir.

Danke,

Christian(chris_m)
 
Zurück
Oben