====== Pas de son lors de l'installation des pilotes Connexant avec une carte audio HDA ======
Tutoriel non-completé en entier pour le moment
Il m'est arrivé lors de l'installation des pilotes pour le modem Connexant de perdre le son, causé par le remplacement des pilotes alsa et d'une mauvaise compilation à cause de paquets manquants.
Il est facile de corriger le problème et les étapes suivantes, si elles sont suivies pas-à-pas, vous éviteront beaucoup de frustration et de temps de perdu.
Avant de continuer, assurez-vous d'avoir les paquets suivant installés ainsi que leurs dépendances : //**GNU make**// , //**autoconf**// et //**automake 1.9**//. Les paquets sont disponibles dans synaptic, en effectuant une recherche. Une fois ces paquets installés ou vérifiés, vous serez en mesure de continuer. Ignorer cette étape vous causera des problèmes lors de la compilations. Ces problèmes seront documentés au fil du document.
Une fois le tout téléchargé, nous devons nous assurer que le système détecte toujours notre carte son par la commande lspci :
oem@Studio:~$ lspci
ce qui vous donnera ensuite des détails sur votre matériel. Si vous détectez votre carte audio, vous êtes sur la bonne voie.
Allez ensuite télécharger les pilotes pour votre modem Connexant fourni par Dell ici [[http://linux.dell.com/files/ubuntu/hardy/modem-drivers/hsf/hsfmodem_7.68.00.09oem_i386.deb]]
Enregistrez le paquet dans un dossier, n'importe lequel, pourvu que vous puissiez le retrouvez facilement.
Ensuite ouvrez un terminal pour installer le paquet.
oem@Studio:/media/LINUX_prog/DRIVERS/version dell$ sudo dpkg -i hsfmodem_7.68.00.09oem_i386.deb
[sudo] password for oem:
Sélection du paquet hsfmodem précédemment désélectionné.
(Lecture de la base de données... 102309 fichiers et répertoires déjà installés.)
Dépaquetage de hsfmodem (à partir de hsfmodem_7.68.00.09oem_i386.deb) ...
Paramétrage de hsfmodem (7.68.00.09oem) ...
Conexant HSF softmodem driver, version 7.68.00.09oem
If you need assistance or more information, please go to:
http://www.linuxant.com/
When reporting a problem for the first time, please send
us the file generated by "hsfconfig --dumpdiag".
No pre-built modules for: Ubuntu-8.04 linux-2.6.24-16-generic i686-SMP
Trying to automatically build the driver modules...
(this requires a C compiler and proper kernel sources to be installed)
**WARNING: Building older built-in HDA driver; some audio/modem issues may occur.
If this is the case, please try the latest alsa-driver-linuxant package
available from http://www.linuxant.com/alsa-driver**
Building modules for kernel 2.6.24-16-generic, using source directory
/lib/modules/2.6.24-16-generic/build. Please wait...
Warning: Module snd_hda_intel is in use
done.
Automatically guessed region (using timezone): "CANADA"
Unable to unload driver to configure region; modem in use?
try configuring it manually with "AT+GCI=0020"
Setting region for modem unit 0: "CANADA"
To change, use "hsfconfig --region" or "AT+GCI="
The current region can be displayed by entering "ATI9" in a terminal program.
Note: kernel module snd-via82xx-modem overridden by hsfmc97via
Note: kernel module snd-intel8x0m overridden by hsfmc97ich hsfmc97sis
Note: kernel module snd-atiixp-modem overridden by hsfmc97ati
Current parameters: ("hsfconfig --info")
Config for modem unit 0: /dev/ttySHSF0
Device instance: 0-PCI-16ec:2f00-16ec:010b
HW revision : Basic2 2.18 Standard DAA 3VoltsIA
HW profile name: hsfpcibasic2hsfi
Current region : CANADA (T.35 code: 0020)
The /dev/modem alias (symlink) points to ttySHSF0
Regardez attentivement ceci :
No pre-built modules for: Ubuntu-8.04 linux-2.6.24-16-generic i686-SMP
Trying to automatically build the driver modules...
(this requires a C compiler and proper kernel sources to be installed)
**WARNING: Building older built-in HDA driver; some audio/modem issues may occur.
If this is the case, please try the latest alsa-driver-linuxant package
available from http://www.linuxant.com/alsa-driver**
L'avertissement suivant vous averti que le pilote sera généré sous un ancien pilote High Definition Audio, ce qui veut dire que vos compilateurs n'ont soient pas été installés, ou bien qu'il y a eu erreur lors du dépaquetage. En résumé, les pilotes seront générés à partir de ce que vous possédez déjà sur votre machine. **C'EST À CAUSE DE CETTE ERREUR QUE VOUS N'AVEZ PLUS DE SON APRÈS LE REDÉMARRAGE** Il est donc très important de vérifier à ce que cela ne se produise pas. Si ce message ne vous apparaît pas, cela veut dire que tout se passe dans l'ordre.
Vous pourrez sans problème recompiler une fois vous être assurés d'avoir tout en main. Cela ne créera aucune erreur puisque l'ancien paquet sera écrasé
Redémarrez votre machine et en principe le son devrait être revenu sans manipulations supplémentaires, tout en gardant le modem fonctionnel, bien entendu.
Si vous avez éprouvé quelques problèmes lors de la compilation et que seul le modem fonctionne, vous n'avaez qu'à continuer plus bas dans ce tutoriel :P Tout n'est pas perdu
===== Pilotes Linuxant =====
Vous pouvez vous procurez les tous derniers pilotes Linuxant ALSA à l'adresse suivante : [[http://www.linuxant.com/alsa-driver]]
==== Ne pas avoir de compilateurs fonctionnels ====
Il est tout à fait possible que vous soyez dans l'obligation d'utiliser les pilotes fournis par Linuxant. Dans ce cas, il est encore plus important d'avoir des compilateurs fonctionnels au risque de se retouver avec des instabilités systèmes après le dépaquetage et l'installation. Ce n'est pas irréparrable, par contre cela engendre un fort temps de démarrage car le système tente tout de même de compiler le reste du paquet sans en avoir la possibilité.
Voici le résultat donné sans compilateur :
admin@Studio:/media/LINUX_prog$ sudo dpkg -i alsa-driver-linuxant_1.0.16.1-1_all.deb
(Lecture de la base de données... 107693 fichiers et répertoires déjà installés.)
Préparation du remplacement de alsa-driver-linuxant 1.0.16.1-1 (en utilisant alsa-driver-linuxant_1.0.16.1-1_all.deb) ...
Removing hsf driver from /lib/modules/2.6.24-16-generic/
Conexant HSF softmodem driver, version 7.68.00.09oem
If you need assistance or more information, please go to:
http://www.linuxant.com/
When reporting a problem for the first time, please send
us the file generated by "hsfconfig --dumpdiag".
No pre-built modules for: Ubuntu-8.04 linux-2.6.24-16-generic i686-SMP
Trying to automatically build the driver modules...
(this requires a C compiler and proper kernel sources to be installed)
Building modules for kernel 2.6.24-16-generic, using source directory
/lib/modules/2.6.24-16-generic/build. Please wait...
done.
Automatically guessed region (using timezone): "CANADA"
Setting region for modem unit 0: "CANADA"
To change, use "hsfconfig --region" or "AT+GCI="
The current region can be displayed by entering "ATI9" in a terminal program.
Note: HDA support not compiled in the driver
Note: kernel module snd-via82xx-modem overridden by hsfmc97via
Note: kernel module snd-intel8x0m overridden by hsfmc97ich hsfmc97sis
Note: kernel module snd-atiixp-modem overridden by hsfmc97ati
Current parameters: ("hsfconfig --info")
Config for modem unit 0: /dev/ttySHSF0
Device instance: 0-PCI-16ec:2f00-16ec:010b
HW revision : Basic2 2.18 Standard DAA 3VoltsIA
HW profile name: hsfpcibasic2hsfi
Current region : CANADA (T.35 code: 0020)
The /dev/modem alias (symlink) points to ttySHSF0
Dépaquetage de la mise à jour de alsa-driver-linuxant ...
Paramétrage de alsa-driver-linuxant (1.0.16.1-1) ...
Removing hsf driver from /lib/modules/2.6.24-16-generic/
Building kernel modules for the 2.6.24-16-generic kernel, please wait... done.
ERROR: Build failed. Please review the build log at /tmp/alsa-driver-linuxant.12265.log
Conexant HSF softmodem driver, version 7.68.00.09oem
If you need assistance or more information, please go to:
http://www.linuxant.com/
When reporting a problem for the first time, please send
us the file generated by "hsfconfig --dumpdiag".
No pre-built modules for: Ubuntu-8.04 linux-2.6.24-16-generic i686-SMP
Trying to automatically build the driver modules...
(this requires a C compiler and proper kernel sources to be installed)
Building modules for kernel 2.6.24-16-generic, using source directory
/lib/modules/2.6.24-16-generic/build. Please wait...
done.
Automatically guessed region (using timezone): "CANADA"
Setting region for modem unit 0: "CANADA"
To change, use "hsfconfig --region" or "AT+GCI="
The current region can be displayed by entering "ATI9" in a terminal program.
Note: HDA support not compiled in the driver
Note: kernel module snd-via82xx-modem overridden by hsfmc97via
Note: kernel module snd-intel8x0m overridden by hsfmc97ich hsfmc97sis
Note: kernel module snd-atiixp-modem overridden by hsfmc97ati
Current parameters: ("hsfconfig --info")
Config for modem unit 0: /dev/ttySHSF0
Device instance: 0-PCI-16ec:2f00-16ec:010b
HW revision : Basic2 2.18 Standard DAA 3VoltsIA
HW profile name: hsfpcibasic2hsfi
Current region : CANADA (T.35 code: 0020)
The /dev/modem alias (symlink) points to ttySHSF0
dpkg : erreur de traitement de alsa-driver-linuxant (--install) :
le sous-processus post-installation script a retourné une erreur de sortie d'état 2
Des erreurs ont été rencontrées pendant l'exécution :
alsa-driver-linuxant
Analyzez bien les retours d'informations. Vous voyez qu'il se passe quelque chose d'anormal lors de l'installation notament avec certains avertissements comme :
Removing hsf driver from /lib/modules/2.6.24-16-generic/
Building kernel modules for the 2.6.24-16-generic kernel, please wait... done.
ERROR: Build failed. Please review the build log at /tmp/alsa-driver-linuxant.12265.log
Conexant HSF softmodem driver, version 7.68.00.09oem
et aussi :
The /dev/modem alias (symlink) points to ttySHSF0
dpkg : erreur de traitement de alsa-driver-linuxant (--install) :
le sous-processus post-installation script a retourné une erreur de sortie d'état 2
Des erreurs ont été rencontrées pendant l'exécution :
alsa-driver-linuxant
Allons voir ce fameux build log riche en information.
Le fichier texte généré est assez volumineux, et la plupart des informations fournises sont inutiles pour la majorité des utilisateurs mis à part peut être pour des intégrateurs. Vous verrez par contre qu'il y a tout de même des choses intéressantes dans ce fichier que nous pourrons facilement interpréter.
rm -f .depend *.o snd.map*
rm -f /*.ver
rm -f modules/*.o modules/*.ko
rm -f *~ out.txt *.orig *.rej .#* .gdb_history
rm -f doc/*~
rm -f config.cache config.log config.status Makefile.conf
rm -f utils/alsa-driver.spec
rm -f `find alsa-kernel -name "*~"`
rm -f `find alsa-kernel -name "*.orig"`
rm -f `find alsa-kernel -name "*.rej"`
rm -f `find alsa-kernel -name ".#*"`
rm -f `find alsa-kernel -name "out.txt"`
rm -rf autom4te.cache
rm -f alsa-kernel/include/version.h
rm -f include/sound
rm -fr .tmp_versions
rm -f Module.symvers
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for ranlib... ranlib
checking for a BSD-compatible install... /usr/bin/install -c
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking whether time.h and sys/time.h may both be included... yes
checking whether gcc needs -traditional... no
checking for current directory... /usr/lib/alsa-driver-linuxant
checking cross compile...
checking for directory with kernel source... /lib/modules/2.6.24-16-generic/build
checking for directory with kernel build...
checking for kernel linux/version.h... yes
checking for kernel linux/autoconf.h... yes
checking for kernel version... 2.6.24-16-generic
checking for GCC version... Kernel compiler: Used compiler: gcc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
*** NO PREDEFINED KERNEL COMPILER IS DETECTED
*** Assuming the same compiler is used with the current system compiler.
*** Please make sure that the same compiler version was used for building kernel.
checking for built-in ALSA... no
checking for existing ALSA module... no
checking for Red Hat kernel... auto
checking for Red Hat kernel... no
checking for SUSE kernel... auto
checking for SUSE kernel... no
checking for CONFIG_EXPERIMENTAL... yes
checking for kernel linux/config.h... no
Creating ...
checking to modify of kernel linux/kmod.h... no
checking for kernel linux/utsrelease.h... yes
checking for kernel linux/compiler.h... yes
checking for kernel linux/pm.h... yes
checking for kernel linux/spinlock.h... yes
checking for kernel linux/irq.h... yes
checking for kernel linux/threads.h... yes
checking for kernel linux/rwsem.h... yes
checking for kernel linux/gameport.h... yes
checking for kernel media/v4l2-dev.h... yes
checking for kernel linux/devfs_fs_kernel.h... no
Creating a dummy ...
checking for kernel linux/highmem.h... yes
checking for kernel linux/workqueue.h... yes
checking for kernel linux/dma-mapping.h... yes
checking for kernel asm/hw_irq.h... yes
checking for kernel linux/device.h... yes
checking for kernel linux/platform_device.h... yes
checking for kernel linux/isa.h... yes
checking for kernel linux/jiffies.h... yes
checking for kernel linux/compat.h... yes
checking for kernel linux/log2.h... yes
checking for kernel linux/adb.h... yes
checking for kernel linux/cuda.h... yes
checking for kernel linux/pmu.h... yes
checking for kernel linux/moduleparam.h... yes
checking for kernel linux/syscalls.h... yes
checking for kernel linux/firmware.h... yes
checking for kernel linux/err.h... yes
checking for kernel linux/bitmap.h... yes
checking for kernel linux/mutex.h... yes
checking for kernel linux/latency.h... yes
checking for kernel linux/kthread.h... yes
checking for kernel asm/irq_regs.h... yes
checking for kernel linux/seq_file.h... yes
checking for kernel module symbol versions... yes
checking for has ioport support... yes
checking for PCI support in kernel... yes
checking for I2C driver in kernel... module
checking for I2C_POWERMAC in kernel... unknown
checking for firmware loader... yes
checking for input subsystem in kernel... yes
checking for directory to store kernel modules... /lib/modules/2.6.24-16-generic/kernel/sound
checking for verbose procfs... on
checking for verbose printk... on
checking for debug level... none
checking for ISA support in kernel... yes
checking for processor type... i586
checking for i386 machine type... default
checking for ISA DMA API... yes
checking for SMP... yes
checking for Video device support in kernel... yes
checking for ISA PnP driver in kernel... yes
checking for PnP driver in kernel... yes
checking for Kernel ISA-PnP support... yes
checking for strlcpy... yes
checking for snprintf... yes
checking for vsnprintf... yes
checking for scnprintf... yes
checking for sscanf... yes
checking for vmalloc_to_page... yes
checking for old kmod... no
checking for PDE... yes
checking for pci_set_consistent_dma_mask... yes
checking for pci_dev_present... yes
checking for msleep... yes
checking for msleep_interrupt... yes
checking for msecs_to_jiffies... yes
checking for tty->count is the atomic type... no
checking for video_get_drvdata... yes
checking for V4L1 layer... yes
checking for io_remap_pfn_range... yes
checking for kcalloc... yes
checking for kstrdup... yes
checking for kzalloc... yes
checking for create_workqueue with flags... no
checking for saved_config_space in pci_dev... yes
checking for new pci_save_state... yes
checking for register_sound_special_device... yes
checking for driver version... 1.0.16
checking for sequencer support... yes
checking for OSS/Free emulation... yes
checking for OSS PCM plugin system inclusion... yes
checking for RTC callback support in kernel... yes
checking for HPET support... yes
checking for dynamic minor numbers... no
checking for support of old API... yes
checking for Procfs support... yes
checking for USB support... yes
checking for class_simple... no
checking for old driver suspend/resume callbacks... no
checking for removal of page-reservation for nopage/mmap... yes
checking for nested class_device... yes
checking for new IRQ handler... yes
checking for gfp_t... yes
checking for PnP suspend/resume... yes
checking for new unlocked/compat_ioctl... yes
checking for x86-compatible PC... yes
checking for High-Res timers... yes
checking for kernel PCMCIA
checking for PCMCIA support... yes
checking for PC9800 support in kernel... no
checking for parallel port support... yes
checking for power management... yes
checking for CONFIG_HAS_DMA... yes
checking for which soundcards to compile driver for... all
configure: creating ./config.status
config.status: creating version
config.status: creating Makefile.conf
config.status: WARNING: Makefile.conf.in seems to ignore the --datarootdir setting
config.status: creating snddevices
config.status: creating utils/alsa-driver.spec
config.status: creating utils/buildrpm
config.status: creating toplevel.config
config.status: creating utils/alsasound
config.status: creating utils/alsasound.posix
config.status: creating include/pci_ids_compat.h
config.status: creating include/i2c-id_compat.h
config.status: creating include/config.h
config.status: creating include/config1.h
config.status: creating include/version.h
config.status: include/version.h is unchanged
config.status: creating include/autoconf-extra.h
if [ ! -d include/sound -a ! -L include/sound ]; then \
ln -sf ../alsa-kernel/include include/sound ; \
fi
cp -puvf include/version.h include/sound/version.h
`include/version.h' -> `include/sound/version.h'
make dep
make[1]: entrant dans le répertoire « /usr/lib/alsa-driver-linuxant »
make[2]: entrant dans le répertoire « /usr/lib/alsa-driver-linuxant/acore »
copying file alsa-kernel/core/info.c
/usr/lib/alsa-driver-linuxant/utils/patch-alsa: 24: patch: not found
make[2]: *** [info.c] Erreur 1
make[2]: quittant le répertoire « /usr/lib/alsa-driver-linuxant/acore »
make[1]: *** [dep] Erreur 1
make[1]: quittant le répertoire « /usr/lib/alsa-driver-linuxant »
make: *** [include/sndversions.h] Erreur 2
NO PREDEFINED KERNEL COMPILER IS DETECTED
Assuming the same compiler is used with the current system compiler.
Please make sure that the same compiler version was used for building kernel.
et aussi en fin de ligne l'erreur de niveau 2
Cela vous dit que vous avez tenter de compiler alors que vous ne n'avez pas les compilateurs necéssaires
----
Voici ce que cela donne avec les bons compilateurs installés :
administrateur@Studio:/media/LINUX_prog/DRIVERS$ sudo dpkg -i alsa-driver-linuxant_1.0.16.1-1_all.deb
[sudo] password for administrateur:
Sélection du paquet alsa-driver-linuxant précédemment désélectionné.
(Lecture de la base de données... 109661 fichiers et répertoires déjà installés.)
Dépaquetage de alsa-driver-linuxant (à partir de alsa-driver-linuxant_1.0.16.1-1_all.deb) ...
Paramétrage de alsa-driver-linuxant (1.0.16.1-1) ...
Removing hsf driver from /lib/modules/2.6.24-16-generic/
Building kernel modules for the 2.6.24-16-generic kernel, please wait... done.
Conexant HSF softmodem driver, version 7.68.00.09oem
If you need assistance or more information, please go to:
http://www.linuxant.com/
When reporting a problem for the first time, please send
us the file generated by "hsfconfig --dumpdiag".
No pre-built modules for: Ubuntu-8.04 linux-2.6.24-16-generic i686-SMP
Trying to automatically build the driver modules...
(this requires a C compiler and proper kernel sources to be installed)
Building modules for kernel 2.6.24-16-generic, using source directory
/lib/modules/2.6.24-16-generic/build. Please wait...
done.
Automatically guessed region (using timezone): "CANADA"
Unable to unload driver to configure region; modem in use?
try configuring it manually with "AT+GCI=0020"
Setting region for modem unit 0: "CANADA"
To change, use "hsfconfig --region" or "AT+GCI="
The current region can be displayed by entering "ATI9" in a terminal program.
Note: kernel module snd-via82xx-modem overridden by hsfmc97via
Note: kernel module snd-intel8x0m overridden by hsfmc97ich hsfmc97sis
Note: kernel module snd-atiixp-modem overridden by hsfmc97ati
Current parameters: ("hsfconfig --info")
Config for modem unit 0: /dev/ttySHSF0
Device instance: 0-PCI-16ec:2f00-16ec:010b
HW revision : Basic2 2.18 Standard DAA 3VoltsIA
HW profile name: hsfpcibasic2hsfi
Current region : CANADA (T.35 code: 0020)
The /dev/modem alias (symlink) points to ttySHSF0
administrateur@Studio:/media/LINUX_prog/DRIVERS$
Section a completer
//Contributeurs : [[:utilisateurs:jsmaster]].// - Jean-Simon Chénard