HDMI端口不适用于配备Manjaro Linux的笔记本电脑的Nvidia / Intel Bumblebee驱动程序


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 CPU @ 2.30GHz

GPU:

  • 英特尔公司第三代核心处理器图形控制器(rev 09)
  • NVIDIA Corporation GF108M [GeForce GT 630M](修订版ff)

PCI地址:

  • 英特尔iGPU:00:02.0
  • Nvidia GPU:01:00.0

大黄蜂的司机。

问题

我发现(和读取)NVIDIANVIDIA OptimusArchLinux的维基(因为是的,Manjaro是ArchLinux的基础)。

但是,当我安装Manjaro时,我用NON-FREE驱动程序等安装了它 nvidianvidia-libgl并且xorg-xrandr已经安装并且是最新的。

而且我的HDMI端口无法正常工作。我认为这是因为X11 conf中仅存在Intel iGPU(HDMI端口是Nvidia GPU的一部分)。

当我试图找出原因时,我发现Manjaro 在安装过程中进行了GPU 的自动识别和安装。

$ 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设置管理器(硬件配置)告诉我在两种情况下均安装了混合Bumblebee驱动程序(请参见屏幕截图)。

大黄蜂司机

但是我的/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 GPU是否正常工作?

我不认为我需要安装更多的驱动程序,但我不明白,如果我需要使用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是一个DIY发行版:如果其他人为您做到了,那么出现在这里,要求您牵手寻求更多帮助只是帮助吸血鬼,不受欢迎。

而且我从未收到有关Manjaro Linux论坛的确认邮件。

我做了搜索和配置工作,所以我希望这对某些人所说的吸血鬼没有帮助。另外,我真的不想安装错误的驱动程序来破坏我的发行版(当我从他们的网站安装Nvidia驱动程序时,这已经发生在我身上,现在我知道这是一个非常糟糕的主意)。

Answers:


2

我自己遇到了这个问题,并通过本指南解决了该问题。该问题 应该在Manjaro Wiki上,但不是。请注意,我自己并没有弄清楚,我只会在此处发布信息,以便可以访问。

步骤1:删除当前的视频驱动程序。

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

步骤2:安装video-nvidia。

$ sudo mhwd -i pci video-nvidia -f

步骤3:找到正确的BUS ID:

$ 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 Synchronization的配置以及屏幕撕裂修复程序。Accelmethod可能会给您SNA问题,具体取决于您的硬件。如果是这样,请更改为UXA。如Nvidia网站上所述,AllowEmptyInitialConfiguration必须进入“屏幕”部分。

$ 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服务器使用具有root权限的KMS。

$ 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:重新启动并享受。


通过卸载video-hybrid-intel-nvidia-bumblebee并安装video-nvidia intel,iGPU将不再起作用,它们是专有驱动程序。因此,我不能接受作为解决方案的方法,您只是安装了另一个驱动程序。
noraj

@noraj它将在我的机器上正常工作。我建议您阅读我在文章开头提供的链接的完整讨论。
vfbsilva
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.