- Mes débuts -- Linux et moi -- Scripts utiles -- Pour le fun -- Liens -

- Introduction -- Astuces -- Quelques scripts -- Linux sur un portable Sony Vaio PCG-SR11K -

Le Sony Vaio PCG-SR11K et Linux

Spécifications techniques (constructeur)

Processor Mobile Intel Pentium III (Coppermine) processor featuring Intel SpeedStep technology 600 Mhz, L2 cache memory 256 KB (on die)

Motherboard Chipset Intel 440ZX

Memory 64 MB (upgradeable to 256 MB)

Hard disk drive 10 GB

Video Chipset S3 Savage IX, Video Memory 8 MB SGRAM, Display 10.4" TFT XGA 1024x768

Sound Yamaha YMF754B-R, 16-bit CD-quality stereo sound

Ports on unit: 1 PC Card Slot(s) PCMCIA type I or II (Cardbus support), 4 pins i.Link port (Firewire IEEE1394), MemoryStick slot, 1 USB 1.0 port, Headphones out, Microphone in, Line in, Display Adapter PCGA-DA1S

Modem: built-in modem V.90/K56Flex (56kbps) data/fax modem

Keyboard 87 keys Hotkeys

Special buttons JogDial

Mouse: Alps GlidePoint

AC Adapter PCGA-AC16V, Battery PCGA-BP2S Dimensions (W x H x D) 259mm x 32.1mm x 209 mm

Weight 1360 g

Supplied accessories AC Adapter (PCGA-AC16V), Battery (PCGA-BP2S), Display Adapter (PCGA-DA1S), CD drive (PCGA-CD51A), Phone cable, Phone plug, Power cable, Documentation,

Initially featured operating system: Windows 2000 Professionnal with bundled software (restore CD), most of which is from Sony: audio, video and laptop management (BIOS settings, battery, speedstep, screen brightness, jogdial)

Spécifications techniques (lspci -tv)

-+-[02]---00.0 Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ \-[00]-+-00.0 Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge +-01.0-[01]----00.0 S3 Inc. 86C270-294 Savage/IX-MV +-07.0 Intel Corp. 82371AB/EB/MB PIIX4 ISA +-07.1 Intel Corp. 82371AB/EB/MB PIIX4 IDE +-07.2 Intel Corp. 82371AB/EB/MB PIIX4 USB +-07.3 Intel Corp. 82371AB/EB/MB PIIX4 ACPI +-08.0 Sony Corporation CXD3222 i.LINK Controller +-09.0 Yamaha Corporation YMF-754 [DS-1E Audio Controller] +-0a.0 Conexant HSF 56k Data/Fax Modem (Mob WorldW SmartDAA) \-0c.0 Ricoh Co Ltd RL5c475

et en version détaillée (lspci -v) :

00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03) Subsystem: Sony Corporation: Unknown device 8092 Flags: bus master, medium devsel, latency 64 Memory at 40000000 (32-bit, prefetchable) [size=16M] Capabilities: [a0] AGP version 1.0 00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03) (prog-if 00 [Normal decode]) Flags: bus master, 66Mhz, medium devsel, latency 128 Bus: primary=00, secondary=01, subordinate=01, sec-latency=64 Memory behind bridge: f0000000-f7ffffff 00:07.0 ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02) Flags: bus master, medium devsel, latency 0 00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01) (prog-if 80 [Master]) Flags: bus master, medium devsel, latency 64 I/O ports at fcf0 [size=16] 00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 64, IRQ 9 I/O ports at fcc0 [size=32] 00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 03) Flags: medium devsel, IRQ 9 00:08.0 FireWire (IEEE 1394): Sony Corporation CXD3222 i.LINK Controller (rev 02) (prog-if 10 [OHCI]) Subsystem: Sony Corporation: Unknown device 8095 Flags: bus master, medium devsel, latency 64, IRQ 9 Memory at fedff000 (32-bit, non-prefetchable) [size=2K] Memory at fedffc00 (32-bit, non-prefetchable) [size=512] Expansion ROM at <unassigned> [disabled] [size=64K] Capabilities: [dc] Power Management version 1 00:09.0 Multimedia audio controller: Yamaha Corporation YMF-754 [DS-1E Audio Controller] Subsystem: Sony Corporation: Unknown device 8096 Flags: bus master, medium devsel, latency 64, IRQ 9 Memory at fedf0000 (32-bit, non-prefetchable) [size=32K] I/O ports at fc40 [size=64] I/O ports at fcec [size=4] Capabilities: [50] Power Management version 1 00:0a.0 Communication controller: Conexant HSF 56k Data/Fax Modem (Mob WorldW SmartDAA) (rev 01) Subsystem: Sony Corporation Modem Flags: medium devsel, IRQ 9 Memory at fede0000 (32-bit, non-prefetchable) [disabled] [size=64K] I/O ports at fce0 [disabled] [size=8] Capabilities: [40] Power Management version 2 00:0c.0 CardBus bridge: Ricoh Co Ltd RL5c475 (rev 80) Subsystem: Sony Corporation: Unknown device 8094 Flags: bus master, medium devsel, latency 168, IRQ 9 Memory at 10000000 (32-bit, non-prefetchable) [size=4K] Bus: primary=00, secondary=02, subordinate=05, sec-latency=176 Memory window 0: 10400000-107ff000 (prefetchable) Memory window 1: 10800000-10bff000 I/O window 0: 00004000-000040ff I/O window 1: 00004400-000044ff 16-bit legacy interface ports at 0001 01:00.0 VGA compatible controller: S3 Inc. 86C270-294 Savage/IX-MV (rev 11) (prog-if 00 [VGA]) Subsystem: Sony Corporation: Unknown device 80c9 Flags: bus master, 66Mhz, medium devsel, latency 64, IRQ 9 Memory at f0000000 (32-bit, non-prefetchable) [size=128M] Expansion ROM at <unassigned> [disabled] [size=64K] Capabilities: [dc] Power Management version 1 Capabilities: [80] AGP version 1.0 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) Subsystem: CNet Technology Inc: Unknown device 5041 Flags: bus master, medium devsel, latency 64, IRQ 9 I/O ports at 4000 [size=256] Memory at 10800000 (32-bit, non-prefetchable) [size=512] Capabilities: [50] Power Management version 2


Ce qui marche

Ce qui devrait marcher

Ce qui ne marche pas


Installation de base, avec le lecteur de CD PCGA-CD51A

Cet ultraportable était livré avec Windows 2000 pré-installé et un CD-ROM de restauration du système. Le possédant depuis novembre 2000, j'ai décidé de le passer entièrement sous Linux Debian (testing) afin d'en tirer un meilleur profit. En effet, même si j'ai fait rajouter 64 MB de RAM (micro-DIMM) lors de l'achat, 128 MB se révèlent assez juste.

J'ai choisi Debian parce que je connais cette distribution et je m'y sens à l'aise, apt-get facilite souvent la vie. J'ai essayé de booter sur une Knoppix 3.2 avec le lecteur de CD-ROM externe (interface PCMCIA 16-bits), en passant en paramètre ide2=0x180, sans succès. J'ai ensuite booté sur le CD1 de Debian Woody (3.0) avec boot: linux bf24 ide2=0x180 et l'installation s'est réalisée sans problème, les périphériques ont été correctement détectés.

Dès que la base du système a été installée, je l'ai mise à jour via l'internet vers la branche "testing" puis installé les autres paquets en testing. J'ai mis 256 MB de swap pour compléter les 128 MB de RAM.

La version installée du noyau a régulièrement évolué, je préciserai donc les versions. La version de départ était la 2.6.4.

Le résultat est globalement moyennement satisfaisant, trop de fonctions sont indisponibles :

Ce portable perd donc en connectivité et en autonomie. Je lui mettrais une note de satisfaction de 6/10. C'est malheureusement un peu la faute de Sony et d'Intel qui ne favorisent pas la libération du code, ou la diffusion de spécifications précises et utilisables.

Voyons à présent le détail des éléments.

Usage d'un lecteur de disquette USB

Pour ce faire, il faut compiler dans le noyau le support de l'USB, USB mass storage, support SCSI, émulation SCSI, support de disque et CD-ROM SCSI.

CONFIG_SCSI=y CONFIG_SCSI_PROC_FS=y CONFIG_BLK_DEV_SD=m CONFIG_BLK_DEV_SR=m CONFIG_CHR_DEV_SG=m

De cette façon, la plupart des périphériques USB accédés par des commandes SCSI fonctionnent. Le driver USB utilisé ici est UHCI (USB 1.0).

Le lecteur est détecté en tant que périphérique sdb :

barbara@viz:/$cat /var/log/messages Mar 15 15:55:11 viz kernel: usb 1-1: new full speed USB device using address 3 Mar 15 15:55:11 viz kernel: scsi1 : SCSI emulation for USB Mass Storage devices Mar 15 15:55:11 viz kernel: Vendor: TEAC Model: FD-05PUB Rev: 1026 Mar 15 15:55:11 viz kernel: Type: Direct-Access ANSI SCSI revision: 02 Mar 15 15:55:11 viz kernel: Attached scsi removable disk sdb at scsi1, channel 0, id 0, lun 0

Vidéo : S3 Savage IX

Le noyau 2.4.18-bf24 fonctionnait bien et me permettait d'avoir un framebuffer que je n'ai su retrouver avec un noyau 2.6... De plus, il n'y a pas de module spécifique à cette carte pour le framebuffer. De toute façon, je travaille en mode graphique, avec un gestionnaire léger tel que xfce4.

CONFIG_FB=y CONFIG_FB_VGA16=m CONFIG_FB_VESA=y CONFIG_VIDEO_SELECT=y CONFIG_VGA_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE=m CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y CONFIG_LOGO=y CONFIG_LOGO_LINUX_MONO=y CONFIG_LOGO_LINUX_VGA16=y CONFIG_LOGO_LINUX_CLUT224=y

J'utilise XFree 4.3. xdpyinfo | grep DRI ne renvoie rien, donc pas de DRI. En effet, dans le noyau il n'y a pas de module DRI correspondant à ce chipset vidéo.

glxgears donne une fréquence faible mais suffisante pour la vidéo :

barbara@viz:~$ glxgears 481 frames in 6.0 seconds = 80.167 FPS 420 frames in 5.0 seconds = 84.000 FPS 420 frames in 6.0 seconds = 70.000 FPS 420 frames in 5.0 seconds = 84.000 FPS 420 frames in 6.0 seconds = 70.000 FPS 420 frames in 6.0 seconds = 70.000 FPS 420 frames in 6.0 seconds = 70.000 FPS

Pour régler la luminosité de l'écran j'ai installé le paquet spicctrl. Se reporter à la section "clavier, hotkeys et jogdial" ci-dessous pour le détail de la configuration. Malheureusement les résultats ne sont pas très concluants, la luminosité ne passe que de 255 à 0. Il faut redémarrer pour revenir à 255. Je n'ai pas réessayé avec un noyau plus récent que le 2.6.4.

L'usage d'un écran externe via l'adaptateur fonctionne en mode clone avec un noyau 2.6.12 ou plus récent (et testé uniquement lorsque branché au boot) mais pas au moment de la première installation (noyau 2.6.4). A ce moment-là spicctrl permettait d'obtenir un signal vers l'écran externe mais ce n'était pas une image, juste une mise sous tension. Je n'ai pas réessayé spicctrl depuis.

La résolution que j'utilise est 1024*768 avec des couleurs 24 bits. Cependant le driver vesa donne une image qui occupe tout l'écran alors que le driver savage la réduit. Il vaut donc mieux utiliser vesa.

Section "Device" Identifier "Generic Video Card" Driver "vesa" EndSection Section "Monitor" Identifier "Generic Monitor" HorizSync 28-49 VertRefresh 43-72 Option "DPMS" EndSection Section "Screen" Identifier "Default Screen" Device "Generic Video Card" Monitor "Generic Monitor" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 4 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 8 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 15 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 16 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 24 Modes "1024x768" "800x600" "640x480" EndSubSection EndSection

Son : Yamaha YMF754B-R

Le son fonctionne parfaitement avec ALSA (apt-get install alsa-base alsa-utils) et le driver ymfpci ("PCI: Yamaha YMF724/740/744/754" dans les drivers proposés par dpkg-reconfigure alsa-base).

J'ai remarqué toutefois qu'il vaut mieux désactiver le microphone intégré au portable à cause d'un effet larsen, et ne pas mettre le volume sonore à fond sous peine de distorsion. L'effet larsen ne se produisait cependant pas sous Windows.

Touchpad Alps GlidePoint

L'interface est PS/2. Extrait de /etc/X11/XF86Config-4 :

Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/psaux" Option "Protocol" "PS/2" Option "Emulate3Buttons" "true" Option "ZAxisMapping" "4 5" EndSection

Je n'ai pas configuré le touchpad de façon optimale : je n'ai pas la fonction "ascenseur" du bord droit. Il faut une configuration spécifique à Alps GlidePoint, différente de celle par défaut de Synaptics.

Clavier, hotkeys et jogdial

La configuration de base est "pc104" avec un layout "fr".

Pour utiliser le jogdial et la touche Fn le noyau doit avoir : CONFIG_SONYPI=m.

Lors de l'installation du paquet spicctrl on peut déterminer quel sera le device /dev/sonypi à créer :

viz:/home/barbara$ cat /var/log/messages Mar 15 21:09:07 viz kernel: sonypi: Sony Programmable I/O Controller Driver v1.21. Mar 15 21:09:07 viz kernel: sonypi: detected type1 model, verbose = 0, fnkeyinit = off, camera = off, compat = off, mask = 0xffffffff, useinput = on Mar 15 21:09:07 viz kernel: sonypi: enabled at irq=11, port1=0x10c0, port2=0x10c4 Mar 15 21:09:07 viz kernel: sonypi: device allocated minor is 63 Mar 15 21:09:07 viz kernel: Sony VAIO Jog Dial installed.

Il faut créer le device correspondant, dans mon cas le mineur est 63 :

mknod /dev/sonypi c 10 63

il faut aussi ajouter les alias utiles :

alias char-major-10-63 sonypi options sonypi minor=63

Pour un noyau 2.4, il faut modifier le fichier /etc/modutils/aliases, et pour un noyau 2.6, /etc/modprobe.d/aliases. Il faut ensuite lancer update-modules. Pour un noyau 2.4 le fichier /etc/modules.conf est mis à jour. Pour un 2.6, c'est /lib/modules/modprobe.conf auquel fait référence /etc/modprobe.conf. Les paquets correspondants sont respectivement modutils et module-init-tools.

La touche Fn ne semble pas fonctionner.

Pour utiliser le jog dial, j'ai installé rsjog, utilitaire codé en ruby, mais lorsque je le lance rien ne se produit. En effet, il faut installer "jogdiald" (voir lien en bas de cette page). Hélas ! cela ne s'est pas compilé pas avec mon kernel 2.6.4 et XFree 4.3 (erreur lors de la compilation de joggui.o). Je n'ai pas réessayé avec un noyau plus récent.

Cartes (réseau) PCMCIA

Aucun souci, à condition que le paquet pcmcia-cs soit installé ainsi que le bon driver pour la carte réseau. Lors de l'installation avec le CD-ROM de la woody, l'installateur m'a cependant demandé si je voulais retirer ce paquet, il lui semblait inutile.

Lecteur de Memorystick

Ce périphérique USB est accédé par des commandes SCSI, comme le lecteur de disquette utilisé plus haut. Il s'agit de /dev/sda1. Il faut donc avoir le support de USB mass storage, émulation SCSI, disque SCSI.

Firewire

Non testé faute de périphérique, mais devrait fonctionner sans problème. Détecté en tant qu'interface réseau secondaire.

Modem 56k (conexant)

Le dernier driver libre pour les modems conexant ne marche pas (modem non détecté lors de la configuration avec pppconf). Le driver commercial de linuxant.com n'a pas été testé. Pas refait de test depuis 2004.

ACPI, batterie

Ma batterie étant hors d'usage (15 minutes d'autonomie avec CPU utilisé à 0% !), je n'ai pu tester l'ACPI. Cependant le paquet spicctrl détecte correctement la présence éventuelle de l'adaptateur secteur.

Speedstep

cpuid donne les informations suivantes :

Vendor ID: "GenuineIntel"; CPUID level 2 Intel-specific functions: Version 00000683: Type 0 - Original OEM Family 6 - Pentium Pro Model 8 - Pentium III/Pentium III Xeon - internal L2 cache Stepping 3 Reserved 0 Brand index: 2 [Pentium III processor]

Malheureusement les Pentium III-M Coppermine sur chipset Intel 440BX/ZX/DX ne sont toujours pas supportés. Bien dommage ! ( http://www.ussg.iu.edu/hypermail/linux/kernel/0304.0/0222.html).

En conséquence /sys/devices/system/cpu/cpu0/cpufreq n'existe pas.


Liens utiles

Sony Programmable I/O Control device driver

Vaio tools : jogdiald

cpudyn FAQ

Linux Compatible

TuxMobil - Linux on Laptops, PDAs and mobile Phones

Linux On Laptops


Par Barbara Post, avec l'aide de Nicolas Lassalle (première installation, relecture). Dernière mise à jour février 2006. Texte sous licence GPL version 2 ou ultérieure.