Depuis quelques temps, Surcouf permet d’acheter des PC portable presque sur mesure. Le sur mesure inclut le fait qu’il est possible de l’acheter sans aucun système d’exploitation. Ce sont des modèles de la marque Airis.
Le modèle dont je parlerai ici est le Praxis N1212 avec l’option Wifi 54G (et pas le « draft » N).
Je démarre l’ordinateur sur un CD de la dernière Ubuntu en date au moment de l’achat (la 7.04) pour vérifier rapidement ce qui fonctionne et ce qui ne fonctionne pas.
| Chipset | État | Pilote | Remarques | |
|---|---|---|---|---|
| Carte graphique | Intel GMA950 | OK | Résolution maximale 1280×800 | |
| Son | ICH7 / ALC861 | KO | snd_hda_intel | ALSA a fait un patch |
| Ethernet 10/100/1000 | Marvell 88E8053 | OK | sky2 | |
| Wifi | IPW3945 | OK | ipw3945 | firmware propriétaire |
| État | Pilote | Remarques | |
|---|---|---|---|
| USB 2 | OK | UHCI/EHCI | 3 ports |
| Lecteur multicarte | OK | sdhci, mmc_block | format SD/MMC |
| Sortie VGA | ? | 1 port, non testé | |
| Firewire | ? | ohci1394, eth1394 | 1 port, non testé |
| PCMCIA / Express Card | ? | ? | 1 port, non testé |
Donc au final, premier bilan plutôt positif :
Pour assouvir la curiosité de certains, voici le résultat d’un lspci :
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (rev 03) 00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03) 00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03) 00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02) 00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02) 00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02) 00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02) 00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 02) 00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 02) 00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 02) 00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 02) 00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) 00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02) 00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02) 00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02) 01:0a.0 FireWire (IEEE 1394): O2 Micro, Inc. Firewire (IEEE 1394) (rev 02) 01:0a.2 Generic system peripheral [0805]: O2 Micro, Inc. Integrated MMC/SD Controller (rev 01) 01:0a.3 Mass storage controller: O2 Micro, Inc. Integrated MS/xD Controller (rev 01) 03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02) 07:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller (rev 20)
Pour rédiger cette documentation, je choisis d’installer une Debian testing (Lenny) et utilise la dernière netinstall en date, mais ce qui suit sera globalement identique quelque soit la distribution. Je fais donc une installation tout ce qu’il y a de plus habituelle pour moi.
Ajoutez les paquetages pour faire fonctionner le wifi et tout le nécessaire pour compiler un noyau.
Sur Debian :
apt-get update apt-get install firmware-ipw3945 ipw3945d make libncurses5-dev gcc wget bzip2 patch
Remarque : j’utilise apt-get par habitude, mais vous pouvez simplement substituer la commande par aptitude et cela fonctionnera de la même manière.
Je rentre ensuite en contact avec ALSA (via leur bug-report) et fournit tout ce qu’il faut au développeur de ce pilote. Il développe très rapidement le patch.
J’ai fusionné quelques patchs pour les noyaux 2.6.21 et 2.6.22. Je prépare mon patch pour le 2.6.23.
| Version du noyau | |||
|---|---|---|---|
| 2.6.21 | 2.6.22 | 2.6.23 | |
| niveau de mise à jour | 2.6.21.5 | 2.6.22.8 | 2.6.23.1 |
| ipw3945 | 1.2.1 | 1.2.2 | |
| Suspend2/TuxOnIce | 2.2.10 | 2.2.10.3 | 2.2.10.4 |
| ALSA | 1.0.14 (31/05/2007) | 1.0.14 (20/07/2007) | |
| patch pour le chipset son ICH7 de Realtek | Oui | Non | Non |
Je ne donne les commandes que pour la dernière version en téélchargement. Pour récupérer le patch et le fichier de configuration pour le noyau 2.6.21, voici plus bas dans les ressources.
cd /tmp wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.tar.bz2 wget http://www.j2n.org/laptop/sources/n1212-2.6.22.8.bz2 wget http://www.j2n.org/laptop/sources/n1212-config-2.6.22.8-2.bz2
cd /usr/src tar xjf /tmp/linux-2.6.22.tar.bz2 bzcat /tmp/n1212-2.6.22.8.bz2 | patch -p0 bzcat /tmp/n1212-config-2.6.22.8-2.bz2 > linux-2.6.22/.config
cd /usr/src/linux-2.6.22 make oldconfig && make && make modules_install
Maintenant installer le noyau et quelques fichiers relativement utiles :
cp -vf arch/i386/boot/bzImage /boot/vmlinuz-2.6.22.8-2 cp -vf System.map /boot/System.map-2.6.22.8-2 mkinitramfs -o /boot/initrd.img-2.6.22.8-2 2.6.22.8-2
Il ne vous reste plus qu’à redémarrer (par exemple en utilisant la commande reboot) après avoir mis à jour la configuration de LILO ou de GRUB, de manière automatique ou manuelle, en fonction de votre distribution.
Sur Debian (et les distributions filles) il suffit d’exécuter :
update-grub
Une fois que tout est finit, n’oubliez pas de supprimer les fichiers qui ne serviront plus.
rm -vf /tmp/linux-2.6.22.tar.bz2 /tmp/n1212-2.6.22.8.bz2 /tmp/n1212-config-2.6.22.8-2.bz2
Maintenant il faut configurer correctement Xorg. Pour cela il suffit d’installer et d’utiliser le bon driver.
apt-get update apt-get install xserver-xorg-video-intel
Et les extraits qui vont bien du fichier /etc/X11/xorg.conf, dont vous pouvez télécharger un exemplaire complet dans la section ressources.
(...)
Section "Device"
Identifier "Intel Mobile 945GM"
Driver "intel"
BusID "PCI:0:2:0"
EndSection
(...)
Section "Screen"
Identifier "Default Screen"
Device "Intel Mobile 945GM"
(...)
SubSection "Display"
Depth 24
Modes "1280x800"
EndSubSection
(...)