# [Conf] Framebuffer

## sawyer

Buongiorno,

muovo i miei primi passi in gentoo.

Ho una serie di piccoli problemini che vorrei risolvere grazie al vostro aiuto (ringrazio perciò anticipatemente chi mi vorrà aiutare!). Posterò ogni problema in un thread diverso, come da regolamento.

Ecco il primo:

ho una scheda video SIS 650; dopo l'installazione di gentoo, la risoluzione del terminale all'avvio è piuttosto bassa (suppongo 800x600), mentre vorrei aumentarla a 1024x768. Ho seguito la guida ufficiale e ho letto vari post sull'argomento, ho provato varie soluzioni, ma sto framebuffer (se è lui il problema) non ne vuole sapere di funzionare.

Nel file grub.conf ho settato:

```
 

title=Gentoo Linux 2.6.16-r9

root (hd0,2)

kernel /boot/linux-2.6.16-gentoo-r9 root=/dev/hda6 vga=792 video=vesafb:mtrr,ywrap

```

ma come ho detto non ottengo nessun risultato.

Naturalmente nel kernel ho attivato il suppotro fb vesa (anche se ho visto che ne esiste anche uno per le SIS, ma non so cosa settare nel file sopra riportato   :Embarassed:  ).

Non so cosa altro postare,   :Embarassed:   se qualcuno vuole aiutarmi e ha bisogno che posti qualche altro file sono a disposizione.

Grazie 

Sawyer    :Very Happy: 

----------

## MeMyselfAndI

la risoluzione che voi impostare deve essere disponibile e supportata dal bios della tua scheda madre.. per vedere risoluzioni e profondita' di colore dai questo comando :

```
cat /proc/fb0/modes
```

----------

## knefas

Se usi vesa-tng (dipende da cosa hai compilato nel kernel), vga non funziona, devi usare qualcosa come

```
video=vesafb:ywrap,mtrr,1024x768-32@60
```

----------

## ginetto

 *knefas wrote:*   

> Se usi vesa-tng (dipende da cosa hai compilato nel kernel), vga non funziona, devi usare qualcosa come
> 
> ```
> video=vesafb:ywrap,mtrr,1024x768-32@60
> ```
> ...

 

Oppure ricompili il kernel senza vesafb e usi il framebuffer della tua scheda.

Io ho fatto così, l'ho messo built-in, funziona tutto regolare  :Smile: 

Ti posto il parametro preso dal mio grub.conf

```
video=sisfb:1024x768-24@60
```

Quindi, se non erro, dovresti mettere in grub.conf questo:

```
kernel /boot/linux-2.6.16-gentoo-r9 root=/dev/hda6 video=sisfb:1024x768-24@60
```

ciao ciao  :Smile: Last edited by ginetto on Thu Jun 22, 2006 10:26 pm; edited 1 time in total

----------

## MeMyselfAndI

@ginetto, se posti la tua conf cosi' senza nemmeno specificare che stai usando una initramfs per il boot mi sa che non capisce molto....

----------

## ginetto

C'hai ragione

Modificato..

sorry  :Razz: 

----------

## sawyer

Allora, innanzitutto grazie per le risposte. 

Ora, nell'ordine:

 *knefas wrote:*   

> Se usi vesa-tng (dipende da cosa hai compilato nel kernel), vga non funziona

 

Ho già provato a usare il vesa-tng come descritoo nell'handbook ma non funziona ugualmente;

 *MeMyselfAndI wrote:*   

> la risoluzione che voi impostare deve essere disponibile e supportata dal bios della tua scheda madre.. per vedere risoluzioni e profondita' di colore dai questo comando :
> 
> ```
> 
> cat /proc/fb0/modes
> ...

 

Ho provato a dare questo comando ma non funziona, nel senso che nella mia cartella /proc non esiste nessuna altra cartella fb0. Di seguito riporto ciò che spara fuori ls:

```

notebook proc # ls

1     6741  7338  7441  7484  807        driver       meminfo     sysvipc

1082  6746  7339  7443  7487  860        execdomains  misc        tty

162   6758  7375  7444  7492  9          filesystems  modules     uptime

163   6810  7411  7446  7495  97         fs           mounts      version

164   7170  7414  7447  7496  acpi       ide          mtrr        vmstat

165   7259  7416  7448  750   asound     interrupts   net         zoneinfo

2     7280  7418  7449  7502  buddyinfo  iomem        partitions

3     7281  7420  7457  7505  bus        ioports      pci

4     7282  7428  7458  7508  cmdline    irq          scsi

5     7283  7430  7467  773   cpuinfo    kallsyms     self

6     7284  7431  7472  794   devices    kcore        slabinfo

6629  7285  7433  7473  797   diskstats  kmsg         stat

6667  7322  7434  7474  8     dma        loadavg      swaps

6703  7327  7439  7483  801   dri        locks        sys
```

 *ginetto wrote:*   

> Oppure ricompili il kernel senza vesafb e usi il framebuffer della tua scheda. 

 

Ok ora provo come hai detto e poi vi faccio sapere.

Grazie!   :Very Happy: 

----------

## sawyer

Ho provato compilando nel kernel i moduli per il fb SIS e aggiungendo qualle righe nel grub.conf ma niente!!!   :Sad:   :Embarassed: 

Questo fb proprio non ne vuole sapere!   :Evil or Very Mad: 

----------

## nikko96

 *sawyer wrote:*   

> Ho provato compilando nel kernel i moduli per il fb SIS e aggiungendo qualle righe nel grub.conf ma niente!!!   
> 
> Questo fb proprio non ne vuole sapere!  

 

Ciao,se puo' esserti d'aiuto ti posto la mia configurazione:

Nella configurazione kernel attivi in "Graphics Support" il

 fb,il Vesa Vga graphics support,(vesafb-tng come driver vesa)

 inoltre metti il Vesa default mode a 1024x768@60. 

Nel grub.conf

```
kernel (hd0,0)/vmlinuz root=/dev/hdaX video=vesafb:ywrap,mtrr,1024x768-16@60
```

Ciao e facci sapere.

----------

## sawyer

 *nikko96 wrote:*   

> 
> 
> Nella configurazione kernel attivi in "Graphics Support" il
> 
>  fb,il Vesa Vga graphics support,(vesafb-tng come driver vesa)
> ...

 

Ciao e grazie per la risposta   :Very Happy: 

Ho provato a fare come dici tu (veramente avevo provato già prima, ma ri-tentar non nuoce!) ma nulla...è come se per lui non esistessero quelle righe nel grub.conf!   :Confused: 

Potrebbe a questo punto essere un problema di kernel? Uso il 2.6.16-r9.

----------

## MeMyselfAndI

ma hai attivato il supporto al framebuffer nel kernel? nello specifico 

```

<*>   VESA VGA graphics support                                                                                                                             

    VESA driver type (vesafb-tng)  --->                                                                                                                 

(1280x1024-32@60) VESA default mode

```

e

```

 --- VGA text console                                                                                                                                        

 [*]   Video mode selection support                                                                                                                          

<*> Framebuffer Console support                                                                                                                             

[ ]   Framebuffer Console Rotation                                                                                                                          

[*] Select compiled-in fonts                                                                                                                                

[*]   VGA 8x8 font                                                                                                                                          

[*]   VGA 8x16 font

```

----------

## nikko96

 *Quote:*   

>  inoltre metti il Vesa default mode a 1024x768@60.

 

 *Quote:*   

> Ho provato a fare come dici tu (veramente avevo provato già prima, ma ri-tentar non nuoce!) ma nulla...è come se per lui non esistessero quelle righe nel grub.conf!  
> 
> Potrebbe a questo punto essere un problema di kernel? Uso il 2.6.16-r9.

 

Forse mi sono spiegato male,perche' intendevo dire di specificare

 il Vesa Default mode anche nel file di config del kernel oltre che in quello di grub.

Ciao

PS anch'io uso il 2.6.16-r9 e non ho problemi di sorta.

----------

## sawyer

 *nikko96 wrote:*   

> 
> 
> Forse mi sono spiegato male,perche' intendevo dire di specificare
> 
>  il Vesa Default mode anche nel file di config del kernel oltre che in quello di grub.
> ...

 

No eri stato chiaro, infatti avevo messo anche la risoluzione nel config del kernel. Comunque il problema rimane!    :Sad: 

----------

## nikko96

 *sawyer wrote:*   

>  *nikko96 wrote:*   
> 
> Forse mi sono spiegato male,perche' intendevo dire di specificare
> 
>  il Vesa Default mode anche nel file di config del kernel oltre che in quello di grub.
> ...

 

 *Quote:*   

> Location:                                                             │
> 
>   │     -> Device Drivers                                                   │
> 
>   │       -> Graphics support                                               │
> ...

 

Abilita cosi il Framebuffer console support (prima o poi ci beccheremo)

PS Come suggerito da MeMyselfAndI 

Ciao.

----------

## sawyer

 *nikko96 wrote:*   

> 
> 
> Abilita cosi il Framebuffer console support (prima o poi ci beccheremo)
> 
> PS Come suggerito da MeMyselfAndI 
> ...

 

Ciao, tutte le opzioni da voi indicate sono abilitate nel kernel (lo erano già da prima), ma ancora il fb non va!

Any idea??   :Sad: 

----------

## sawyer

Le ho provate davvero tutte:

 - le opzioni nel kernel sembrano tutte abilitate

 - ho provato sia il fb vesa sia il vesa-tng, ma con nessun risulato

 - ho provato anche il fb SIS, ma nessun risultato.

Qualcuno ha qualche dritta da darmi?

Grazie   :Very Happy: 

----------

## nillkheope

prova a mettere vga=791 nel menu.lst....se non sbaglio dovresti ottenere una risoluzione 1280x1024.

----------

## sawyer

 *nillkheope wrote:*   

> prova a mettere vga=791 nel menu.lst....se non sbaglio dovresti ottenere una risoluzione 1280x1024.

 

Ciao,

Purtroppo la mia scheda non supporta risoluzioni superiori al 1024x768.

Comunque il problema con il framebuffer rimane ancora, se qualcuno ha idea di cosa possa fare per risolverlo è il benvenuto!   :Very Happy: 

----------

## syntaxerrormmm

 *nillkheope wrote:*   

> prova a mettere vga=791 nel menu.lst....se non sbaglio dovresti ottenere una risoluzione 1280x1024.

 No, 791 è quello che sto usando e porta il framebuffer a 1024x768 con 16 bit di colori.

Per la mia esperienza, alcune profondità funzionano altre no; io ad esempio non posso mettere il framebuffer con profondità di 24 bit (quindi il tuo 792) e utilizzo vga=791, senza nessun problema.

Ti posto la mia riga di grub.conf:

```
title  Gentoo GNU/Linux

root (hd0,4)

kernel /kernel-2.6.16-suspend2-r6 root=/dev/hda3 video=vesafb:ywrap,mtrr\

        vga=791 gentoo=nodevfs resume2=swap:/dev/hda6\

        splash=silent,fadein,theme:livecd-2006.0 CONSOLE=/dev/tty1\

        quiet

initrd /initrd-fbs-livecd2006.0
```

Utilizzo anche io il semplice driver vesa (e non vesa-tng).

Ciao.

----------

## gamberetto

Ciao, non sono esperto, ma provo a fare la mia parte. Posta i risultati dei seguenti comandi:

```
$ dmesg | grep fb
```

```
# modprobe -l | grep fb
```

Come vedi il primo puoi darlo da qualsiasi utente, il secondo devi darlo da root.

Il primo serve a vedere cosa dice il kernel nel caricamento del fb, il secondo per vedere se per caso il driver è compilato come modulo anziché dentro il kernel

----------

## sawyer

 *gamberetto wrote:*   

> Ciao, non sono esperto, ma provo a fare la mia parte. Posta i risultati dei seguenti comandi:
> 
> ```
> $ dmesg | grep fb
> ```
> ...

 

Ciao,

ho provato a dare quei comandi: dal primo non ricevo risposta (probabilmente non c'è nulla nel log che riguarda il fb, e ciò è molto strano); il secondo anche non restituisce nulla, percui suppongo il fb sia caricato (difatti nel kernel era built-in).

Ho provato anche a mettere, con il driver vesa, l'opzione vga=791 (nessun risultato come al solito) e vga=792 (idem).

Sembra un problema irrisolubile!   :Confused: 

----------

## gamberetto

Ok, vuol dire che al boot non carica niente e non c'è il modulo.

Mi viene in mente un errore che faccio io spesso: ti sei ricordato di dare grub-install ogni volta che cambi grub.conf?

Posta 

```
cat /proc/cmdline
```

 che così vediamo quali opzioni vengono passate veramente al kernel.

Altro tentativo potrebbe essere usare sisfb e 

```
kernel /boot/linux-2.6.16-gentoo-r9 root=/dev/hda6 video=sisfb:mode:1024x768x16,mem:12288
```

 come opzione del kernel (naturalmente aggiusta risoluzione, bit colori e memoria a seconda delle tue esigenze). Credo che la parte mem:12288 sia facoltativa, ma se la metti, lascia quel valore lì: non devi mettere la memoria totale della scheda video, ma la memoria da usare per il framebuffer.

Questa configurazione l'ho presa dalla guida del creatore (credo) di sisfb: Home Page - Guida su frame buffer

Occhio che mi sembrano un po' vecchi questi link, ma credo siano ancora utili.

Facci sapere, intanto buona fortuna   :Wink: 

EDIT: probabilmente il sisfb non funziona con la tua scheda:  */usr/src/linux-2.6.16-gentoo-r9/Documentation/fb/sisfb.txt wrote:*   

> What is sisfb?
> 
> ==============
> 
> sisfb is a framebuffer device driver for SiS (Silicon Integrated Systems)
> ...

 

La tua scheda non sembra supportata dal sisfb. L'unica speranza è il driver vesa.

----------

## knefas

 *gamberetto wrote:*   

> Mi viene in mente un errore che faccio io spesso: ti sei ricordato di dare grub-install ogni volta che cambi grub.conf?

 

Questo non e' necessario. Lo era una volta con lilo, ma con grub no. Grub legge direttamente dal file, per cui se lo modifichi quando lo legge se ne accorge.

----------

## sawyer

Ciao,

allora ho letto le pagine del manuale del SIS framebuffer e ho cambiato la linea nel grub.conf mettendo questo:

```

video=sisfb:mode:1024x768x16,mem:12288

```

ma, come al  solito, nulla sembra accadere!   :Confused: 

Il comando

```

cat /proc/cmdline

```

restituisce

```
root=/dev/hda6 video=sisfb:mode:1024x768x16,mem:12288
```

perciò sembra che tutto sia passato correttamente al boot.

Inoltre la mia scheda, secondo lspci, è:

```

VGA compatible controller: Silicon Integrated Systems [SiS] 65x/M650/740 PCI/AGP VGA Display Adapter

```

e sembra eseere pienamente supportata dal driver SIS!

 :Sad: 

----------

## MeMyselfAndI

Scusa la domanda stupida ma ti ha mai funzionato il framebuffer? con il live cd funziona?

/EDIT: ho riletto ora il tuo primo post....  :Embarassed: 

----------

## sawyer

 *MeMyselfAndI wrote:*   

> Scusa la domanda stupida ma ti ha mai funzionato il framebuffer? con il live cd funziona?

 

Ciao,

non ti preoccupare, la domanda non è stupida ma è di dovere!   :Smile: 

Si, il framebuffer ha sempre funzionato: con il live cd la risoluzione era ottima e con una Debian (eh si, ci sono passato anche io per un mesetto, ma non mi ci sono mai sentito a mio agio!) funzionava bene!

Anke una Knoppix e una Kubuntu mi fanno partire correttamente il fb!

----------

## MeMyselfAndI

Provare a copiare il kernel del live cd e vederne le differenze?

----------

## sawyer

Allora, dopo tanti tentativi ho risolto!   :Very Happy: 

Come??

Semplicemente cambiando kernel!

Ho installato e configurato il kernel 2.6.16-suspend2-r8 (il mio è un notebook e mi serviva) e il framebuffer funziona a meraviglia!!!!

Ma allora il kernel che usavo prima era buggato??   :Rolling Eyes: 

----------

## gamberetto

Non credo che il kernel fosse buggato. Magari bastava fare un "make clean" prima di ricompilarlo.

Ciao

----------

## sawyer

 *gamberetto wrote:*   

> Non credo che il kernel fosse buggato. Magari bastava fare un "make clean" prima di ricompilarlo.
> 
> Ciao

 

No, ho anche provato il make clean prima di ricompilare... credo che fosse proprio un problema del kernel   :Confused: 

----------

