PDA

Visualizza la versione completa : Driver ATI e kernel 2.6.15


wolf64
10-01-2006, 13:19
Riporto quanto postato nel thread dedicato al kernel 2.6.15, questo (http://forum.html.it/forum/showthread.php?threadid=929052&perpage=15&highlight=&pagenumber=1), riguardo ad un problema che si verificava con il driver proprietario ATI (fglrx) con questo kernel.

La compilazione veniva eseguita regolarmente, purtroppo però allo spegnimento del computer la macchina si bloccava e rimaneva lo schermo nero, attenzione, non era "soltanto" un problema di schermo, non c'era risposta ad alcun tipo di input, mi riferisco all'ultima versione del driver, la 8.20.8, tra l'altro ho provato con una versione precedente del driver, ma il risultato era lo stesso.

Dopo aver fatto un po di ricerche ho trovato una patch che però ho dovuto adattare visto che quando l'ho applicata ho riscontrato un errore, mi sono poi scritto una procedura per porre rimedio a questo problema, come promemoria mio, però poi ho pensato di metterlo a disposizione di tutti in modo da risparmiare... scazzature a chi riscontrava questo problema!

Lascio alla discrezione dei moderatori la valutazione sul metterlo o meno in rilievo.

Di seguito la procedura:

------------------------------------------

Questa procedura è stata scritta il 06-01-2006, ho usato il kernel 2.6.15 (appena uscito) e la versione del driver ATI è la 8.20.8 (l'ultima disponibile).

1) Caricate il sistema con il kernel 2.6.15 (o superiore).

2) Installate il driver dall'installer con la procedura standard.

3) ATTENZIONE: non riavviate.

4) Entrate nella directory /lib/modules e installate la patch:
# patch -p0 <percorso_alla_patch

NOTA: se si dovesse incontrare qualche difficoltà con l'installazione della patch è abbastanza semplice modificare i file a mano, editate il file /lib/modules/fglrx/build_mod/firegl_public.c e cercate la parte che riporto sotto:

#if 0
// WARNING WARNINIG WARNNING WARNNING WARNNING WARNNING WARNNING WARNNING
// Don't increment page usage count, cause ctx pages are allocated
// with drm_alloc_pages, which marks all pages as reserved. Reserved
// pages' usage count is not decremented by the kernel during unmap!!!
get_page(pMmPage); /* inc usage count of page */
#endif

un consiglio, se usate Vim (è il mio editor preferito!), fate prima ad usare la ricerca con /WARN e trovate l'inizio della seconda linea, perciò tutto il blocco, comunque, modificate la parte:

#if 0

con

#if LINUX_VERSION_CODE >= 0x02060f

salvate il file e il gioco è fatto! Semplice, no?!

5) Entrate in fglrx/build_mod

6) Lanciate lo script make.sh contenuto in tale directory

7) Andate nella directory fglrx (la directory superiore)

8) Lanciate lo script make_install.sh

Dovrebbe essere a posto, adesso il driver installato dovrebbe funzionare.

Per quanto sopra riportato ho usato il solito... San Google da Cascia!!! ;-)

La patch la riposto sotto, potete copiarla e incollarla in un file:

--------- INIZIO PATCH - NON COPIARE QUESTA PARTE ------------
diff -ru fglrx.orig/build_mod/firegl_public.c fglrx/build_mod/firegl_public.c
--- fglrx.orig/build_mod/firegl_public.c 2006-01-06 22:44:24.000000000 +0100
+++ fglrx/build_mod/firegl_public.c 2006-01-06 22:35:19.000000000 +0100
@@ -2621,7 +2621,7 @@

pMmPage = virt_to_page(kaddr);

-#if 0
+#if LINUX_VERSION_CODE >= 0x02060f
// WARNING WARNINIG WARNNING WARNNING WARNNING WARNNING WARNNING WARNNING
// Don't increment page usage count, cause ctx pages are allocated
// with drm_alloc_pages, which marks all pages as reserved. Reserved
----------- FINE PATCH - NON COPIARE QUESTA PARTE -------------

NOTA BENE: NON MI RITENGO RESPONSABILE PER EVENTUALI DANNI CAUSATI DALLA PROCEDURA
SOPRACITATA, QUANTO FATE E' A VOSTRO ESCLUSIVO RISCHIO!

Eh, scusate ma... non si sa mai!!! ;-)

Byezzz
Gigi

-------------------------------------------------

robyro
26-01-2006, 01:29
grazie alla tua guida sono riuscito a risolvere questo maledetto problema.
Ora volevo chiederti :
all'installazione non crea un xorg.con ma il solito XF86Config-4 per ovviare ho creato un link ma non trova il modulo "keyboard".
altro problema piu` importante la cpu va a palla 100% anche solo con un giochino tipo tuxkart , mi blocco per non friggere la cpu.

ciao e grazie

nik600
26-01-2006, 09:39
ciao

se non erro al posto di "keyboard" metti "kbd"



Section "InputDevice"

Identifier "Keyboard1"
Driver "kbd"
...

robyro
28-01-2006, 00:40
ok con "kdb" funzia ....ora devo risolvere ancore il problema della cpu al 100%,suggerimenti sono bene accetti...

gigyz
07-02-2006, 12:15
qualcuno usa il 2.6.15 con gli 8.21.7 ? a me da problemi e il dmesg sputa fuori parecchia roba.

gigyz
07-02-2006, 12:33
come non detto con la patch sopra va.

PinguinoGoloso
13-02-2006, 13:49
Uppo il thread per farvi sapere che con la nuova versione dei driver ATI (8.22.5), sul mio thinkpad r52 con Debian unstable e kernel 2.6.15-ck3 funziona l'accelerazione 3D, il suspend-to-ram e non si freeza più quando chiudo X :yuppi: .
Il tutto senza patch.

wolf64
15-02-2006, 01:25
Confermo, con il driver 8.22.5, l'ultimo, non c'è più bisogno della patch, sul mio va con il kernel 2.6.15.4 senza problemi.

robyro
16-02-2006, 10:25
Originariamente inviato da wolf64
Confermo, con il driver 8.22.5, l'ultimo, non c'è più bisogno della patch, sul mio va con il kernel 2.6.15.4 senza problemi.

Confermo anche io, mi rimane il problema dell'utilizzo della cpu al 100%
quando apro un giochino tipo tuxkart oppure con "glxgears" che peraltro mi da solo 1300 FPS.
Sbaglio qualcosa nella compilazione del kernel???

Loading