GRUB: resolution de grub sous SandyBridge

Bonjour,

Je suis confronté à un problème dans le paramétrage de grub. Je n’arrive pas à imposer la résolution native de mon écran (1024x768 au lieu de 1600x900) lorsque je tourne sous le chipset Intel HD3000 (avec ou sans optimus).
J’utilise les paramètres suivant

GRUB_GFXMODE=1600x900 GRUB_GFXPAYLOAD_LINUX=keep
La suite du boot (plymouth et session graphique) ainsi que les ttys s’affichent sous la bonne résolution.

Mon portable est un thinkpad t420s et le bios m’offre la possibilité de désactiver optimus et de switcher soit sur le chipset intégré Intel HD3000 seul, soit sur la carte dédiée Nvidia NVS4200M seule. J’ai donc effectué les tests suivants:
[ul]
[li]Optimus désactivé, chipset intel seul: grub s’affiche sous une mauvaise résolution (1024x768).
Ci-joint: vbeinfo intel

#hwinfo --framebuffer 02: None 00.0: 11001 VESA Framebuffer [Created at bios.464] Unique ID: rdCR.ku_DuSHewh1 Hardware Class: framebuffer Model: "Intel(R)Sandybridge Mobile Graphics Controller" Vendor: "Intel Corporation" Device: "Intel(R)Sandybridge Mobile Graphics Controller" SubVendor: "Intel(R)Sandybridge Mobile Graphics Chipset Accelerated VGA BIOS" SubDevice: Revision: "Hardware Version 0.0" Memory Size: 63 MB + 960 kB Memory Range: 0xe0000000-0xe3feffff (rw) Mode 0x0360: 768x480 (+768), 8 bits Mode 0x0361: 768x480 (+1536), 16 bits Mode 0x0362: 768x480 (+3072), 24 bits Mode 0x0363: 960x600 (+960), 8 bits Mode 0x0364: 960x600 (+1920), 16 bits Mode 0x0365: 960x600 (+3840), 24 bits Mode 0x0305: 1024x768 (+1024), 8 bits Mode 0x0317: 1024x768 (+2048), 16 bits Mode 0x0318: 1024x768 (+4096), 24 bits Mode 0x0312: 640x480 (+2560), 24 bits Mode 0x0314: 800x600 (+1600), 16 bits Mode 0x0315: 800x600 (+3200), 24 bits Mode 0x0301: 640x480 (+640), 8 bits Mode 0x0303: 800x600 (+832), 8 bits Mode 0x0311: 640x480 (+1280), 16 bits Config Status: cfg=new, avail=yes, need=no, active=unknown [/li]
[li]Optimus désactivé, carte nvidia seule: grub s’affiche sous la bonne résolution (1600x900).
Ci-joint: vbeinfo nvidia

#hwinfo --framebuffer 02: None 00.0: 11001 VESA Framebuffer [Created at bios.464] Unique ID: rdCR.wLyYt3NPw55 Hardware Class: framebuffer Model: "NVIDIA GF119 Board - kn301056" Vendor: "NVIDIA Corporation" Device: "GF119 Board - kn301056" SubVendor: "NVIDIA" SubDevice: Revision: "Chip Rev" Memory Size: 14 MB Memory Range: 0xf1000000-0xf1dfffff (rw) Mode 0x0300: 640x400 (+640), 8 bits Mode 0x0301: 640x480 (+640), 8 bits Mode 0x0303: 800x600 (+800), 8 bits Mode 0x0305: 1024x768 (+1024), 8 bits Mode 0x0307: 1280x1024 (+1280), 8 bits Mode 0x030e: 320x200 (+640), 16 bits Mode 0x030f: 320x200 (+1280), 24 bits Mode 0x0311: 640x480 (+1280), 16 bits Mode 0x0312: 640x480 (+2560), 24 bits Mode 0x0314: 800x600 (+1600), 16 bits Mode 0x0315: 800x600 (+3200), 24 bits Mode 0x0317: 1024x768 (+2048), 16 bits Mode 0x0318: 1024x768 (+4096), 24 bits Mode 0x031a: 1280x1024 (+2560), 16 bits Mode 0x031b: 1280x1024 (+5120), 24 bits Mode 0x0330: 320x200 (+320), 8 bits Mode 0x0331: 320x400 (+320), 8 bits Mode 0x0332: 320x400 (+640), 16 bits Mode 0x0333: 320x400 (+1280), 24 bits Mode 0x0334: 320x240 (+320), 8 bits Mode 0x0335: 320x240 (+640), 16 bits Mode 0x0336: 320x240 (+1280), 24 bits Mode 0x033d: 640x400 (+1280), 16 bits Mode 0x033e: 640x400 (+2560), 24 bits Mode 0x0345: 1600x1200 (+1600), 8 bits Mode 0x0346: 1600x1200 (+3200), 16 bits Mode 0x034a: 1600x1200 (+6400), 24 bits Mode 0x034b: 1600x900 (+1600), 8 bits Mode 0x034c: 1600x900 (+3200), 16 bits Mode 0x034d: 1600x900 (+6400), 24 bits Mode 0x0360: 1280x800 (+1280), 8 bits Mode 0x0361: 1280x800 (+5120), 24 bits Mode 0x0362: 768x480 (+768), 8 bits Mode 0x0363: 848x480 (+3392), 24 bits Config Status: cfg=new, avail=yes, need=no, active=unknown [/li]
[li]Optimus activé: les résultats sont les mêmes que le premier point, grub s’affiche sous une [b]mauvaise résolution/b. La session graphique utilise bbswitch/bumblebee[/li][/ul]

Dans les trois cas, la suite du boot et les ttys s’affichent sous la bonne résolution.

J’ai googlé un max et je n’ai pas trouvé de cas similaire au miens. Il semblerait peut-être que le VESA BIOS Extensions ne puisse pas faire fonctionner les chipsets video SandyBridge sous une telle résolution. Étrange que ça fonctionne avec la carte nvidia et pas le chipset intel (le contraire serait moins étonnant). Avez-vous expérimenté pareil cas?

Bien à vous

PS: Je joints aussi mes fichiers de configuration grub
grub.txt (1.28 KB)
grubcfg.txt (5.98 KB)

Bonjour,

As-tu essayé la commande vbeinfo dans le shell de grub ?

Elle est censée donner les résolutions disponibles à passer à GRUB_GFXMODE (cf. fichier /etc/default/grub).

Usti

Bonjour,

Oui, les résultats de cette commande sont donnés en liens dans le post précédent:
vbeinfo intel
vbeinfo nvidia

[quote=“psparta”]Bonjour,

Oui, les résultats de cette commande sont donnés en liens dans le post précédent:
vbeinfo intel
vbeinfo nvidia[/quote]
Oops, je n’avais pas vu …

Ben visiblement le mode que tu veux n’est pas disponible sur l’Intel, donc il affiche le meilleur mode disponible, soit 1024x768.

Donc je ne vois pas trop de solution, mais peut être que quelqu’un d’autre aura une idée.

Usti