[gelöst]Kein Ton: YMF-744B [DS-1S Audio] Kernel 2.6.26-1-686

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
wckl
Beiträge: 826
Registriert: 10.08.2007 15:26:28
Lizenz eigener Beiträge: GNU General Public License
Wohnort: St. Georges de Didonne

[gelöst]Kein Ton: YMF-744B [DS-1S Audio] Kernel 2.6.26-1-686

Beitrag von wckl » 27.10.2008 11:05:26

Hallo,
nach der Installation von Testing auf meinem Notebook habe ich keinen Ton mehr. Nach einigen Tests muß ich nun feststellen, daß bei dem Kernel
  • Linux idefix 2.6.18-6-686 #1 SMP Mon Aug 18 08:42:39 UTC 2008 i686 GNU/Linux
der Ton wie vorher unter Etch funktioniert, während er unter
  • Linux idefix 2.6.26-1-686 #1 SMP Thu Oct 9 15:18:09 UTC 2008 i686 GNU/Linux
NICHT MEHR funktioniert.

Woran liegt das?

lspci | grep audio
00:0c.0 Multimedia audio controller: Yamaha Corporation YMF-744B [DS-1S Audio Controller] (rev 02)

Kernel 2.6.18-6-686
lsmod | grep snd
snd_ymfpci 57472 2
gameport 14632 1 snd_ymfpci
snd_ac97_codec 83104 1 snd_ymfpci
snd_ac97_bus 2400 1 snd_ac97_codec
snd_pcm 68676 3 snd_ymfpci,snd_ac97_codec
snd_opl3_lib 9920 1 snd_ymfpci
snd_hwdep 8836 1 snd_opl3_lib
snd_page_alloc 10184 2 snd_ymfpci,snd_pcm
snd_mpu401_uart 8064 1 snd_ymfpci
snd_seq_midi 8192 0
snd_seq_midi_event 7008 1 snd_seq_midi
snd_rawmidi 22560 2 snd_mpu401_uart,snd_seq_midi
snd_seq 45680 2 snd_seq_midi,snd_seq_midi_event
snd_timer 20996 4 snd_ymfpci,snd_pcm,snd_opl3_lib,snd_seq
snd_seq_device 7820 4 snd_opl3_lib,snd_seq_midi,snd_rawmidi,snd_seq
snd 47012 13 snd_ymfpci,snd_ac97_codec,snd_pcm,snd_opl3_lib,snd_hwdep,snd_mpu401_uart,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
soundcore 9248 1 snd

Kernel 2.6.26-1-686
lsmod | grep snd
snd_ymfpci 28224 0
gameport 10700 1 snd_ymfpci
firmware_class 6816 2 pcmcia,snd_ymfpci
snd_ac97_codec 88484 1 snd_ymfpci
ac97_bus 1728 1 snd_ac97_codec
snd_pcm 62628 2 snd_ymfpci,snd_ac97_codec
snd_opl3_lib 9344 1 snd_ymfpci
snd_hwdep 6212 1 snd_opl3_lib
snd_page_alloc 7816 2 snd_ymfpci,snd_pcm
snd_mpu401_uart 6368 1 snd_ymfpci
snd_seq_midi 5728 0
snd_seq_midi_event 6432 1 snd_seq_midi
snd_rawmidi 18560 2 snd_mpu401_uart,snd_seq_midi
snd_seq 41456 2 snd_seq_midi,snd_seq_midi_event
snd_timer 17800 4 snd_ymfpci,snd_pcm,snd_opl3_lib,snd_seq
snd_seq_device 6380 4 snd_opl3_lib,snd_seq_midi,snd_rawmidi,snd_seq
snd 45604 10 snd_ymfpci,snd_ac97_codec,snd_pcm,snd_opl3_lib,snd_hwdep,snd_mpu401_uart,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
soundcore 6368 1 snd

Kann mir jemand helfen?
Vielen Dank
wckl
Zuletzt geändert von wckl am 30.10.2008 15:17:36, insgesamt 1-mal geändert.

wckl
Beiträge: 826
Registriert: 10.08.2007 15:26:28
Lizenz eigener Beiträge: GNU General Public License
Wohnort: St. Georges de Didonne

Re: Kein Ton: YMF-744B [DS-1S Audio C.] Kernel 2.6.26-1-686

Beitrag von wckl » 30.10.2008 11:13:19

Hallo,
ich habe noch ein paar Informationen zusammengetragen.
Welche Informationen sollte ich noch sammeln?

Hier funktioniert der Ton
Linux idefix 2.6.18-6-686 #1 SMP Mon Aug 18 08:42:39 UTC 2008 i686 GNU/Linux
cat /proc/asound/cards
0 [YMF744 ]: YMF744 - Yamaha DS-1S (YMF744)
Yamaha DS-1S (YMF744) at 0xefff8000, irq 11
cat /proc/asound/modules
0 snd_ymfpci
cat /proc/asound/devices
0: [ 0] : control
1: : sequencer
16: [ 0- 0]: digital audio playback
17: [ 0- 1]: digital audio playback
18: [ 0- 2]: digital audio playback
24: [ 0- 0]: digital audio capture
27: [ 0- 3]: digital audio capture
33: : timer
cat /proc/asound/pcm
00-03: YMFPCI - PCM2 : YMFPCI - AC'97 : capture 1
00-02: YMFPCI - Rear : YMFPCI - Rear PCM : playback 1
00-01: YMFPCI - IEC958 : YMFPCI - IEC958 : playback 1
00-00: YMFPCI : YMFPCI : playback 32 : capture 1
cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.12rc1 (Thu Jun 22 13:55:50 2006 UTC).

Hier funktioniert der Ton NICHT
Linux idefix 2.6.26-1-686 #1 SMP Thu Oct 9 15:18:09 UTC 2008 i686 GNU/Linux
cat /proc/asound/cards
--- no soundcards ---
cat /proc/asound/modules
leer !!
cat /proc/asound/devices
1: : sequencer
33: : timer
cat /proc/asound/pcm
leer !!
cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.16.

Ich hoffe dringend auf Hilfe.
Gruß wckl

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Kein Ton: YMF-744B [DS-1S Audio C.] Kernel 2.6.26-1-686

Beitrag von rendegast » 30.10.2008 11:56:31

Bei den lenny-Kerneln sind einige firmware herausgeflogen, prüfe mal auf entsprechende Meldungen mit dmesg.
Die firmware bekopmmst Du hier:
ftp://ftp.alsa-project.org/pub/firmware/
Und kopierst sie an entsprechende Stellen in /lib/firmware/, /usr/local/lib/firmware/ o.a.:

Code: Alles auswählen

modinfo snd_ymfpci
....
firmware:       yamaha/ds1e_ctrl.fw
firmware:       yamaha/ds1_ctrl.fw
firmware:       yamaha/ds1_dsp.fw
....
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

wckl
Beiträge: 826
Registriert: 10.08.2007 15:26:28
Lizenz eigener Beiträge: GNU General Public License
Wohnort: St. Georges de Didonne

Re: Kein Ton: YMF-744B [DS-1S Audio C.] Kernel 2.6.26-1-686

Beitrag von wckl » 30.10.2008 14:27:07

Hallo,
ja, wunderbar, jetzt funktioniert der Ton wieder - vielen Dank :D

Allerdings hätte ich da noch einige Anmerkungen / Bitten:
Ich verstehe, daß man Ballast abwerfen muß und deshalb ggf. Module für ältere Computersysteme aus dem Kernel entfernt werden.

Ich wünschte mir nur, daß ich davon etwas erfahre, z.B. indem aus der Kernelmeldung
Oct 30 09:17:40 idefix kernel: [ 27.803074] Yamaha DS-1 PCI: probe of 0000:00:0c.0 failed with error -2
eine für den einfachen Anwender verständliche Nachricht wird, wie z.B.:
Das Modul für Deine Soundkarte wurde aus dem Kernel entfernt; schau mal <hier>, dort findest Du eine Anleitung, wie Du das alles überprüfen und wieder einrichten kannst.
Diese Nachricht z.B. als E-Mail an root oder so etwas.
Denn erst, nachdem ich weiß wonach ich in den Kernelmeldungen suchen muß, fällt mir die obige Meldung auf.
Na ja, man darf ja noch träumen dürfen.

Nochmals vielen Dank für die Hilfe
wckl

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Kein Ton: YMF-744B [DS-1S Audio C.] Kernel 2.6.26-1-686

Beitrag von rendegast » 30.10.2008 15:13:09

Ich verstehe, daß man Ballast abwerfen muß und deshalb ggf. Module für ältere Computersysteme aus dem Kernel entfernt werden.
Kein Ballast bzw. älteres Modul, es sind binäre Blobs, aufgrund debian-policy entfernt.
"Mein" Modul hat sich aber auch so gemeldet, sinngemäß: "can't load firmware blabla/blabla".

http://wiki.debian.org/Firmware
http://wiki.debian.org/KernelFirmwareLicensing
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

wckl
Beiträge: 826
Registriert: 10.08.2007 15:26:28
Lizenz eigener Beiträge: GNU General Public License
Wohnort: St. Georges de Didonne

Re: Kein Ton: YMF-744B [DS-1S Audio C.] Kernel 2.6.26-1-686

Beitrag von wckl » 30.10.2008 15:16:05

Hallo,
nun versuche ich mal eine Zusammenfassung, wie meine "Tonstörung" behandelt werden sollte:

Code: Alles auswählen

cat /proc/asound/cards
zeigt mir, ob überhaupt eine Karte gefunden wurde. Wenn da steht
--- no soundcards ---
habe ich ein Problem. Mit

Code: Alles auswählen

lspci | grep -i audio
kann ich herausfinden, welche Soundkarte eingebaut ist. In meinem Fall eben
00:0c.0 Multimedia audio controller: Yamaha Corporation YMF-744B [DS-1S Audio Controller] (rev 02)
Aus den Begriffen "Yamaha" und "YMF" muß mir dann einfallen, daß ich mit

Code: Alles auswählen

lsmod | grep snd
zu einem Hinweis auf das notwendige Modul kommen kann, in meinem Fall
snd_ymfpci 57472 2
Dann kann ich mit

Code: Alles auswählen

modinfo snd_ymfpci
herausfinden, daß ich in meinem Fall die Firmware
firmware: yamaha/ds1e_ctrl.fw
firmware: yamaha/ds1_ctrl.fw
firmware: yamaha/ds1_dsp.fw
benötige.
Jetzt fällt mir ein, daß ich die firmware hier finde:
ftp://ftp.alsa-project.org/pub/firmware/
Dort entscheide ich mich für die aktuellste / neueste Version. Ich hatte damit Glück.
Nachdem ich das geladen und entpackt habe, gehe ich in das Verzeichnis der firmware und stelle die benötigten Module her:

Code: Alles auswählen

./configure
make
Zur Sicherheit habe ich dann die benötigten Dateien, siehe oben die Module, per

Code: Alles auswählen

cd ymfpci
sudo mkdir /lib/firmware/yamaha
sudo cp ds1* /lib/firmware/yamaha
selbst in das Verzeichnis kopiert.
Nachdem ich mit modprobe experimentiert hatte, habe ich die Nerven verloren und den Rechner neu gebootet - das geht bestimmt viel eleganter :?

Jedenfalls ist meine "Tonstörung" jetzt geheilt.

Nun muß das alles auf die jeweilige Umgebung des Rechners angepaßt werden, auf jeden Fall die Modulnamen.

Das geht sicher alles viel eleganter, auch die zu compilierenden Module kann man ggf. auf die tatsächlich benötigten beschränken; ebenfalls ist das Kopieren der Module in das passende Verzeichnis besser zu gestalten - insbesondere einschließlich der Kontrolle der Zugriffsrechte!
In dem Firmware-Verzeichnis ist zwar eine Datei install-sh enthalten, die das ggf. kann.
Es fehlt aber eine Datei INSTALL, die kompetent beschreibt, wie man die benötigte Firmware kompiliert und installiert.

Aber ich will nicht meckern, da meine "Tonstörung" ja mit Hilfe der vielen Helfer behoben ist.

Vielen Dank nochmals, Gruß
wckl

wckl
Beiträge: 826
Registriert: 10.08.2007 15:26:28
Lizenz eigener Beiträge: GNU General Public License
Wohnort: St. Georges de Didonne

Re: [gelöst]Kein Ton: YMF-744B [DS-1S Audio] Kernel 2.6.26-1-686

Beitrag von wckl » 30.10.2008 16:22:01

Hallo,
um herauszufinden, welche Firmware mir fehlt, hätte ich das tun sollen:

Code: Alles auswählen

grep firmware /var/log/messages
In meinem Fall hätte ich dann sofort die fehlenden Module gefunden
Oct 30 13:57:40 idefix kernel: [ 23.631901] firmware: requesting yamaha/ds1_dsp.fw
Oct 30 13:57:40 idefix kernel: [ 27.775356] firmware: requesting yamaha/ds1e_ctrl.fw
Ich muss also nach firmware in den Messages suchen, weil der Kernel es so meldet. :D

Gruß
wckl

Antworten