This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.

Please visit our production wiki at https://wiki.gentoo.org

nouveau

From Gentoo Wiki (test)
Jump to:navigation Jump to:search
This page is a translated version of the page Nouveau and the translation is 100% complete.
Other languages:
Resources

nouveau — это открытый драйвер для графических карт NVIDIA.

Ограничения

Будучи проектом с открытым исходным кодом, работающем на проприетарном оборудовании, у Nouveau есть некоторые ограничения, которые отсутствуют у закрытых nvidia-drivers. Тем не менее, драйвера Nouveau постоянно развиваются, так что эти ограничения могут изменяться со временем.

Установка

Ядро

Активируйте следующие параметры ядра:

Ядро Включение nouveau
Device Drivers  --->
   Graphics support  --->
      <*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
         <*> Enable legacy fbdev support for your modesetting driver
      <*> Nouveau (NVIDIA) cards

Прошивка

Некоторые видеокарты, начиная с видеокарт Kepler, нуждаются в прошивке. Получить поддержку можно путём установки sys-kernel/linux-firmware и настройки nouveau в качестве модуля (M) в ядре.

root #emerge --ask sys-kernel/linux-firmware

Драйвер

Portage uses the USE_EXPAND variable called VIDEO_CARDS to enable support for various graphics cards in packages. Setting VIDEO_CARDS to appropriate value(s) will pull in the correct driver(s):

Файл /etc/portage/make.confSet VIDEO_CARDS to nouveau
VIDEO_CARDS="nouveau"

Substitute the name of the driver(s) to be used. Common choices include nouveau, nvidia, radeon, and intel. After setting or altering VIDEO_CARDS values remember to update the system using the following command so the changes take effect:

root #emerge --ask --changed-use --deep @world


Udev

Если установлен проприетарный драйвер от NVIDIA, вместе с ними также установится файл правил udev в /lib/udev/rules.d/99-nvidia.rules. Если попытаться использовать драйвер nouveau с такими же файлом правил, файл лога X11 каждые 10мс будет заполняться такими сообщениями:

Файл /var/log/Xorg.0.logРезультат недействительных правил udev от nvidia-drivers
 [   180.669] (II) NOUVEAU(0): EDID vendor "SAM", prod id 430
 [   180.669] (II) NOUVEAU(0): Using hsync ranges from config file
 [   180.669] (II) NOUVEAU(0): Using vrefresh ranges from config file
 [   180.669] (II) NOUVEAU(0): Printing DDC gathered Modelines:
 [   180.669] (II) NOUVEAU(0): Modeline "1600x1200"x0.0  162.00  1600 1664 1856 2160  1200 1201 1204 1250 +hsync +vsync (75.0 kHz eP)
 [   180.669] (II) NOUVEAU(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz e)
 [   180.669] (II) NOUVEAU(0): Modeline "800x600"x0.0   36.00  800 824 896 1024  600 601 603 625 +hsync +vsync (35.2 kHz e)
 [...]
 [   180.669] (II) NOUVEAU(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz e)
 [   180.669] (II) NOUVEAU(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz e)
 [   180.669] (II) NOUVEAU(0): Modeline "1280x960"x0.0  108.00  1280 1376 1488 1800  960 961 964 1000 +hsync +vsync (60.0 kHz e)
 [   180.669] removing GPU device /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card2 /dev/dri/card2
 

Чтобы предотвратить это (без удаления пакета x11-drivers/nvidia-drivers), просто удалите/переместите/переименуйте файл правил udev /lib/udev/rules.d/99-nvidia.rules, так чтобы он больше не использовался udev (смотрите расширенная конфигурация udev). Обратите внимание, что при следующем обновлении nvidia-drivers этот файл будет снова переустановлен, поэтому рассмотрите вариант удаления nvidia-drivers.

Конфигурация

Разрешения

If the acl USE flag is enabled globally and ConsoleKit is being used (default for desktop profiles) permissions to video cards will be handled automatically. It is possible to check the permissions using getfacl:

user $getfacl /dev/dri/card0 | grep larry
user:larry:rw-

A broader solution is to add the user(s) needing access the video card to the video group:

root #gpasswd -a larry video

Note that users will be able to run X without permission to the DRI subsystem, but acceleration will be disabled.

xorg.conf

X server разработан для работы «из коробки», поэтому нет необходимости вручную редактировать файлы настройки. Сервер сам должен определить и настроить устройства - мониторы, клавиатуры и мыши.

Тем не менее, файл xorg.conf это основной конфигурационный файл X-сервера.

Ограничения

Некоторые текущие вопросы или недостатки по сравнению с закрытыми x11-drivers/nvidia-drivers указаны ниже:

  • Производительность (особенно 3D) на одной и той же карте/чипе может быть значительно хуже, чем при использовании nvidia-drivers.
  • При работе на более высоких частотах обновления (более 60 Гц) может произойти ошибка.
  • Дополнительные возможности некоторых видео-карт NVIDIA (например, несколько мониторов на картах Quadro без SLI) может работать не корректно.


Устранение проблем

Проблемы встречающиеся при использовании нескольких мониторов

Если при использовании двух мониторов/дисплеев экран часто зависает с возможными EDID-запросами, попробуйте добавить video=VGA-1:e или video=VGA-1:d (включение или отключение, соответственно) к переменной GRUB_CMDLINE_LINUX_DEFAULT в файле /etc/default/grub. Если используется grub-legacy, отредактируйте непосредственно файл grub.cfg и добавьте эту опцию в командную строку. В любом случае, замените имя монитора на указанное в dmesg или /var/log/Xorg.0.log (т.е. CRT-1, VGA-1, LVDS-1, DVI-1, ...)

К примеру, на ноутбуке Dell Inspiron 8100 с внешним дисплеем, подключённым к внешнему VGA-разъёму, возможная опция командная строка выглядит так: video=LVDS-1:1280x1024@60 video=VGA-1:1280x1024@60. У автора EDID (DRM) запросы на внешнем VGA-дисплее до сих пор вызывают зависание во время загрузки nouveau/drm, но, по крайней мере, это помогает, если дисплей подключается после загрузки grub и до загрузки модулей nouveau/drm. И с упомянутыми ранее разрешениями LVDS/VGA, дисплеи продублированы и отцентрированы с достаточно правильными разрешениями.

NVIDIA Optimus

При использовании ноутбука с технологией NVIDIA Optimus (обычно встречающейся на ноутбуках, изготовленных не раньше 2010), вся информация будет проходить через контроллер встроенной графики (обычно, Intel) перед тем, как достигнуть отдельной видеокарты (NVIDIA), что может повлечь множество необъяснимых проблем. Существует несколько способов предотвратить это, но самый простой – отключить Optimus в BIOS (обычно вызываемой нажатием F12 во время загрузки). Это вызовет увеличение энергопотребления (уменьшение времени автономной работы, повышение рабочей температуры), поскольку теперь всю работу всё время будет производить видеокарта NVIDIA.

Смотрите также

Внешние ресурсы