Установка драйвера nouveau (opensource драйвер) для видеокарт Nvidia
Ну-с, с этого поста начинается цикл статей по Gentoo Linux :) я не профи конечно, но определённый опыт работы, в этом дистрибутиве, имеется — 2,5 года.
Буду рад любым комментариям и критике :) (так же не забываем, что это записки «для себя», так что 100% рабочих советов могу и не дать).
Установка opensource драйвера nouveau для видеокарт Nvidia.
Про сам драйвер можно почитать на официальном wiki —http://nouveau.freedesktop.org/wiki/FrontPage-ru .
Будем ставить последние версии mesa, libdrm, nouveau-drm и сам драйвер xf86-video-nouveau (а-ля -9999).
Для начала добавим оверлей x11: [cc lang=»bash»]layman -a x11[/cc] в нём есть все нужные нам программы.
media-libs/mesa-9999 собираем с USE флагом gallium и VIDEO_CARDS=»nouveau».
Теперь собираем всё: [cc lang=»bash»]emerge -av =mesa-9999 =libdrm-9999 =nouveau-drm-99999999 =xf86-video-nouveau-9999[/cc](с замаскированными пакетами разберётесь).
Также желательно использовать последнюю версию ядра (sys-kernel/vanilla-sources вполне подойдёт, а то gentoo-sources задерживается обычно).
Лезем в /etc/X11/xorg.conf и меняем в секции Device [cc lang=»bash»]Driver «nvidia»[/cc] на [cc lang=»bash»]Driver «nouveau»[/cc] Так же можно добавить модуль nvidia в /etc/modprobe.d/blacklist.conf чтобы он не загружался (у меня он почему-то после ребута загружался, хотя использовался драйвер nouveau).
Для того чтобы включить KMS (Kernel Mode Setting) — нужно загружать модуль nouveau с параметром [cc lang=»bash»]modeset=1[/cc] т.е. [cc lang=»bash»]modprobe nouveau modeset=1[/cc] а потом опять загружать X’ы. Как автоматизировать загрузку модуля nouveau с этим параметром я пока не знаю :( А выключать X’ы ради этого и потом опять их запускать — мне лень, так что сижу без KMS. Если кто то знает как заставить ядро грузить модуль сразу с каким-либо параметром — отпишитесь :).
Ну вот и дошли до результатов. Что мы получаем? Ну я получил идеально работающий KDE, с kwin’ом в режиме XRender (с OpenGL — косяки какие-то). И идеально работающий TeeWorlds )) больше особо ничего не пробовал ибо за ПК только работаю и иногда играю в TeeWorlds :).
Жаль только что через часик-другой всё это счастье зависает :( и в /var/log/messages появляется запись примерно такого вида — [cc lang=»bash»][ 1964.966092] [drm] nouveau 0000:05:00.0: PFIFO_DMA_PUSHER — Ch 1[/cc] Зависает полностью вся система и помогает только reset.
Ура! Спустя пару дней после написания статьи решил одновить всё те же 4 пакета. Обновил и зависания исчезли :) Всё работает стабильно и быстро.