Old:Forzare la risoluzione video della shell con KMS

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Debian-swirl.png Versioni Compatibili

Debian 6 "squeeze"
Debian 7 "wheezy"
ERRORE: utilizzare "unstable_2024" come parametro al posto di " Sid "! Vedi qui.
Warning.png ATTENZIONE
Prima bozza della guida. Ogni contributo è gradito.


Info.png Compatibilità
Ho provato le operazioni qui descritte solo su scheda video ATI con driver radeon. Attualmente non so se si possano fare anche con schede di altre marche.


Introduzione

Se il KMS imposta per il terminale una risoluzione video non desiderata, la si può modificare passando al kernel il parametro video.

Come fare

Dai messaggi del kernel individuiamo le uscite video:

dmesg | grep drm
# ometto i dati irrilevanti
[    8.311160] [drm] Radeon Display Connectors
[    8.311211] [drm] Connector 0:
[    8.311258] [drm]   VGA
[    8.311306] [drm]   DDC: 0x60 0x60 0x60 0x60 0x60 0x60 0x60 0x60
[    8.311355] [drm]   Encoders:
[    8.311402] [drm]     CRT1: INTERNAL_DAC1
[    8.311450] [drm] Connector 1:
[    8.311498] [drm]   DVI-I
[    8.311547] [drm]   HPD1
[    8.311594] [drm]   DDC: 0x64 0x64 0x64 0x64 0x64 0x64 0x64 0x64
[    8.311645] [drm]   Encoders:
[    8.311694] [drm]     CRT2: INTERNAL_DAC2
[    8.311743] [drm]     DFP1: INTERNAL_TMDS1
[    8.311792] [drm] Connector 2:
[    8.311838] [drm]   S-video
[    8.311885] [drm]   Encoders:
[    8.311934] [drm]     TV1: INTERNAL_DAC2
[    8.365473] [drm] Radeon display connector VGA-1: Found valid EDID
[    8.375296] [drm] Radeon display connector DVI-I-1: No monitor connected or

In questo caso, si hanno 3 connettori, numerati da 0 a 2. Inoltre si vede che il connettore 0 è l' uscita VGA, il connettore 1 è l' uscita DVI. Ma la cosa più importante per il nostro fine, sono i nomi dei connettori: li troviamo nelle ultime 2 righe. A questo punto possiamo "costruire" il valore da passare al parametro video del kernel, rispettando il seguente formato:

video=<conn>:<xres>x<yres>[M][R][-<bpp>][@<refresh>][i][m][eDd]

dove

    <conn>: è il connettore
    <xres> x <yres>: la risoluzione desiderata
    M: calcola un CVT mode?
    R: reduced blanking?
    -<bpp>: profondità di colore
    @<refresh>: refresh rate
    i: interlaced (non-CVT mode)
    m: margins?
    e: output forced to on
    d: output forced to off
    D: digital output forced to on (e.g. DVI-I connector)

E' possibile passare al kernel un parametro video per ogni connettore che si vuole controllare. Un esempio:

video=VGA-1:1280x1024 video=DVI-I-1:d

il connettore VGA viene forzato ad una risoluzione 1280x1024, mentre il connettore DVI viene disattivato (valore d).

Bulb.png Suggerimento
Notare i nomi dei connettori: sono quelli letti nel dmesg


Riferimenti

  1. http://cgit.freedesktop.org/nouveau/linux-2.6/tree/Documentation/fb/modedb.txt
  2. http://cgit.freedesktop.org/nouveau/linux-2.6/tree/drivers/gpu/drm/drm_fb_helper.c