Messaggioda matzu » mer feb 02, 2011 0:01
Su un computer con Athlon 64, chipset AMD, AGP Radeon 9250, e monitor 1024x768 ho un'impostazione copiata da quella di spina. Senza tali impostazioni, con tale computer non c'è modo di usare nemmeno framebuffer vesa, per cui in runlevel 1/3 dovrei accontentarmi di risoluzione vga.
Su un altro con Athlon XP, chipset VIA, AGP Radeon 3650 HD, e monitor 1280x1024 ho dovuto aggiungere un firmware proprietario AMD/ATI. Dopo aver compilato con le impostazioni di cui sopra (o con solo una parte di esse: avevo fatto diverse compilazioni procedendo con poche modifiche alla volta nel config), il boot si piantava con un messaggio che terminava così:
using builtin firmware radeon/RV635_pfp.bin
using builtin firmware radeon/RV635_me.bin
requesting radeon/R600_rlc.bin
R600_rlc.bin è proprietario e non c'è nei sorgenti del kernel; va scaricato a parte, per esempio dal sito di x.org, ed è soggetto a una licenza specifica (se inserito nel kernel, come pure avverte l'help del config, ne modifica la licenza). Il firmware da integrare dipenderà dal modello di scheda video.
Partendo dal config generic smp "vergine":
Device Drivers > Graphic Support > YES a /dev/agpgart...
Device Drivers > Graphic Support > /dev/agpgart... > NO a tutto, eccetto YES a VIA (il produttore del northbridge)
Device Drivers > Graphic Support > YES a Direct Rendering Manager...
Device Drivers > Graphic Support > Direct Rendering Manager... > NO a tutto, eccetto YES a ATI Radeon + Enable modesettings...
Device Drivers > Graphic support > Support for frame buffer... > NO a tutto
Device Drivers > Generic Driver Options > YES a Include in-kernel firmware blobs in kernel binary
Device Drivers > Generic Driver Options > in External firmware blobs to build into the kernel binary, inserisco la stringa "radeon/R600_rlc.bin"
Device Drivers > Generic Driver Options > in Firmware blobs root directory, inserisco la stringa "/lib/firmware"
Il firmware proprietario è messo ovviamente in /lib/firmware/radeon.
In compilazione, dopo:
make
make modules_install
eseguo anche:
make firmware_install
Se mi limito a installare il firmware proprietario, e uso un kernel generic smp con "radeon.modeset=1" nel boot loader, il compositing non va, e tty6 è nero se mi ci sposto dal menu di kdm. Se uso framebuffer vesa la console è nera sempre. Con il kms attivato nel kernel funziona tutto, per l'uso che ne faccio io (niente giochi, solo grafica statica e visione di video), a parte quando il monitor va in standby, e quando lo riattivo ho degli artefatti (puntini rossi che "si agitano", ben visibili per esempio sullo sfondo nero della console).