J'avais précédemment installer des distributions mandriva sur ce fameux portable (Pentium III avec 256Mio de RAM). Le son avait toujours marché correctement.
J'installe la debian testing squeeeze, et je vois dans les traces du noyau au démarrage, que le noyau n'a pas pu chargé le firmware pour mon chip audio CS46xx.
Je lance un vieux live cd mandriva, je regarde avec dmesg les messages du noyaux, le driver CS46 se charge sans problème, et aucune histoire de ce fameux firmware.
Je jette un coup d'oeil sur les sources d'une version de noyau que j'utilise pour mon linux embarqué (en version 2.6.28.6, version que je ne touche pas vu que j'ai codé les tables d'interruptions en dur). Je vois qu'effectivement, il y a un blob dans le source du noyau linux (/sound/pci/cs46xx/cs46xx_image.h).
Je cherche mon firmware dans un paquet debian, impossible de le trouver (celui-ci n'est pas présent dans le paquet firmware-linux-nonfree).
Je n'ai pas poussé plus loin mes investigations, car comme je retournais le lendemain au travail, la solution me serait donné sur Internet. (Je n'ai pas Internet chez moi, ma femme, a trop peur de ne plus me voir décoller de mes ordinateurs!)
Je pensais que Linus Torvald avait décidé de virer tous ses affreux BLOB binaires du noyau.
Mais ce matin en regardant la page du wiki debian:
http://wiki.debian.org/snd-cs46xx
et la page du kernel concernant le fichier cs46xx_image.h
http://git.kernel.org/?p=linux/kernel/git/next/linux-next.gi(...)
j'ai alors compris que Debian modifiait le noyau pour en retirer des fonctionnalités.
La solution donnée sur la page du wiki debian ne me plait pas vraiment, si jamais, je veux réinstallé la distribution debian plus tard, je serai obligé de refaire la même bidouille (dans le meilleur cas, recopié le fichier cs46xx.fw que j'aurai rangé sur mon disque externe) ou de recompiler le noyau en reprenant le driver CS46xx venant du kernel linux officiel.
Par ailleurs, je croyais comprendre que le firmware était pris d'abord dans l'image de l'initRAMfs (en effet quand j'ai installé le paquet firmware-linux-nonfree, j'ai eu l'impression qu'il modifiait l'initRAMfs). Peut-être qu'un deuxième chargement de firmware est tenté après le pivot root (ce qui me semblerai probable puis que je crois que j'ai deux fois la trace sur la non présence du firmware au boot)?
En tout cas, ce n'est pas une Debian que je conseillerais comme distribution pour un débutant (du moins si il ne possède pas du matériel compatible debian!)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.