Не работает порт HDMI Драйвер Nvidia / Intel Bumblebee для ноутбуков с Manjaro Linux

8

Информация

ОС: Manjaro Linux 16.10 (Cinnamon Community Edition)

$ cat /etc/*-release                                                                                                
DISTRIB_ID=ManjaroLinux
DISTRIB_RELEASE=16.10
DISTRIB_CODENAME=Fringilla
DISTRIB_DESCRIPTION="Manjaro Linux"
Manjaro Linux
NAME="Manjaro Linux"
ID=manjaro
PRETTY_NAME="Manjaro Linux"
ANSI_COLOR="1;32"
HOME_URL="http://www.manjaro.org/"
SUPPORT_URL="http://www.manjaro.org/"
BUG_REPORT_URL="http://bugs.manjaro.org/"

Тип: ноутбук

Ядро: 4.4.28-2-MANJARO

Процессор: Intel (R) Core (TM) i7-3610QM Процессор @ 2,30 ГГц

Графические процессоры:

  • Графический контроллер процессора Intel Core третьего поколения (версия 09)
  • Корпорация NVIDIA GF108M [GeForce GT 630M] (версия для печати)

PCI-адреса:

  • Intel iGPU: 00: 02.0
  • Nvidia GPU: 01: 00.0

Водитель из Шмеля.

проблема

Я нашел (и прочитал) вики NVIDIAи NVIDIA OptimusArchLinux (потому что да, Manjaro основан на ArchLinux).

Но когда я установил Manjaro, я установил его с БЕСПЛАТНЫМИ драйверами и так далее nvidia, nvidia-libglи xorg-xrandrони уже установлены и обновлены.

И мой порт HDMI не работает . Я думаю, это потому, что в X11 присутствует только Intel iGPU (порт HDMI является частью графического процессора Nvidia).

Пока я пытался выяснить, почему, я обнаружил, что Manjaro выполняет автоматическую идентификацию и установку графических процессоров во время установки.

$ sudo mhwd-gpu --check                                                                                             

[sudo] password for shark: 
Using default
Default lib32 support: true
xorg configuration symlink valid...
libGl and libglx symlinks valid...


$ sudo mhwd-gpu --status                                                                                            
Using default
Default lib32 support: true
:: status
  lib32-libGl: '/usr/lib32/mesa/libGL.so.1.2.0'
  lib32-libGLESv1: '/usr/lib32/mesa/libGLESv1_CM.so.1.1.0'
  lib32-libGLESv2: '/usr/lib32/mesa/libGLESv2.so.2.0.0'
  lib32-libEGL: '/usr/lib32/mesa/libEGL.so.1.0.0'
  libGl: '/usr/lib/mesa/libGL.so.1.2.0'
  libGLESv1: '/usr/lib/mesa/libGLESv1_CM.so.1.1.0'
  libGLESv2: '/usr/lib/mesa/libGLESv2.so.2.0.0'
  libEGL: '/usr/lib/mesa/libEGL.so.1.0.0'
  libglx: '/usr/lib/xorg/modules/extensions/libglx.xorg'
  xorg configuration file: '/etc/X11/mhwd.d/intel.conf'

Менеджер настроек Manjaro (Конфигурация оборудования) сообщает, что в обоих случаях установлен гибридный драйвер шмеля (см. Скриншот).

водитель шмеля

Но моя /etc/X11/xorg.conf.dпапка содержит только следующую символическую ссылку 90-mhwd.conf -> /etc/X11/mhwd.d/intel.conf.

/etc/X11/mhwd.d/intel.conf содержание:

##
## Generated by mhwd - Manjaro Hardware Detection
##


Section "Device"
    Identifier  "Device0"
    Driver      "intel"
    BusID       "PCI:0:2:0"
    Option      "AccelMethod" "sna"
    Option      "DRI"    "true"
EndSection


Section "DRI"
        Group  "video"
        Mode   0666
EndSection


Section "Extensions"
    Option "Composite" "Enable"
    Option "RENDER"    "Enable"
EndSection


Section "InputClass"
    Identifier          "Keyboard Defaults"
    MatchIsKeyboard     "yes"
    Option              "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

Итак, что мне нужно сделать, чтобы мой порт HDMI работал? И как я могу проверить, работает ли мой графический процессор Nvidia или нет?

Я не думаю , что мне нужно установить больше драйверов , но я не могу понять , если мне нужно использовать mhwdинструмент , предоставляемый Manjaro настроить некоторые дополнительные параметры или , если мне нужно , чтобы создать новый /etc/X11/xorg.conf.d/20-nvidia.confфайл или даже если мне нужно заменить intel.confс а nvidia.conf.

Это тоже может помочь:

$ glxinfo | grep OpenGL                                                                                             
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile 
OpenGL core profile version string: 3.3 (Core Profile) Mesa 13.0.0-rc2
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 13.0.0-rc2
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 13.0.0-rc2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:

Изменить : Это сообщение Xrandr не обнаруживает монитор на порт HDMI, отвечая на мой вопрос?

Почему я спрашиваю здесь

Я прошу прощения, чтобы задать этот вопрос здесь, но форум ArchLinux сказал это

Эти платы предназначены для поддержки Arch Linux и ТОЛЬКО для Arch. Если вы установили Archbang, Antegros, Chakra, Evo / Lution, Manjaro, что бы то ни было, вы НЕ используете Arch Linux. Точно так же, если вы следили за каким-то случайным видео на YouTube или использовали автоматический скрипт, который вы нашли в блоге, вы НЕ работаете с Arch Linux, поэтому не ожидайте, что какая-либо поддержка, сочувствие или что-то еще, кроме вашего потока, будут закрыты и вам предложат двигаться дальше. Arch - это самодельный дистрибутив: если кто-то другой сделал это для вас, то появление здесь с просьбой взять вас за руку для дополнительной помощи - это просто помощь вампиризму, и это не приветствуется.

и я так и не получил письмо с подтверждением для форума Manjaro Linux.

Я предпринял усилия по поиску и настройке, так что мне бы хотелось, чтобы это не помогло вампиризму, как говорят некоторые. Кроме того, я действительно не хочу портить мой дистрибутив, устанавливая неправильные драйверы (это уже случилось со мной, когда я установил драйверы Nvidia с их сайта, теперь я знаю, что это очень плохая идея).

noraj
источник

Ответы:

2

Я сам решил эту проблему и решил ее с помощью этого руководства. Это должно быть на вики Manjaro, но это не так. Внимание, я сам не понял, я просто опубликую информацию здесь, чтобы она была доступна.

Шаг 1: Удалить текущий видеодрайвер.

$ sudo mhwd -r pci video-hybrid-intel-nvidia-bumblebee

Шаг 2: Установите видео-nvidia.

$ sudo mhwd -i pci video-nvidia -f

Шаг 3: Найдите свой правильный идентификатор автобуса:

$ lspci | grep -E "VGA|3D"
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM204M [GeForce GTX 980M] (rev a1)

Шаг 4. Отредактируйте конфигурацию для синхронизации NVIDIA Prime, а также исправьте разрыв экрана. Accelmethod может вызвать проблемы с SNA в зависимости от вашего оборудования. Если это так, измените на UXA. AllowEmptyInitialConfiguration должна находиться в разделе «Экран», как указано на веб-сайте Nvidia.

$ cat /etc/X11/xorg.conf.d/90-mhwd.conf 
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 375.26
Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "intel"
EndSection

Section "Device"
    Identifier "intel"
    Driver "modesetting"
    BusID  "PCI:0:2:0"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:1:0:0"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
    Option "AllowEmptyInitialConfiguration" "true"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection

Section "Extensions"
    Option      "Composite" "Enable"
    Option  "RENDER" "Enable"
EndSection

Section "InputClass"
    Identifier          "Keyboard Defaults"
    MatchIsKeyboard     "yes"
    Option              "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

Шаг 5: Заставьте X-сервер использовать KMS с правами root.

$ cat /etc/X11/Xwrapper.config
needs_root_rights = yes

Шаг 6: Добавьте строки xrandr в конфигурацию SDDM и перезагрузите компьютер после:

$ cat /usr/share/sddm/scripts/Xsetup
#!/bin/sh
# Xsetup - run as root before the login dialog appears
xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

Шаг 7: Вставьте это для настроек GRUB для KMS и производительности.

GRUB_CMDLINE_LINUX_DEFAULT="i915.enable_rc6=0 nvidia-drm.modeset=1 intel_idle.max_cstate=0"

Шаг 8: Добавьте i915 и nvidia в mkinitcpio

MODULES="i915 nvidia nvidia_modeset nvidia_uvm nvidia_drm"

Шаг 9: перезагрузите компьютер и наслаждайтесь.

vfbsilva
источник
Удаление видео-hybrid-intel-nvidia-bumblebee и установка видео-nvidia intel iGPU больше не будут работать, и это проприетарные драйверы. Поэтому я не могу принять это как решение, вы просто установили другой драйвер.
Норай
@noraj это будет работать на моей машине. Я предлагаю вам прочитать полное обсуждение по ссылке, которую я предоставил в начале поста.
vfbsilva