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