web-dev-qa-db-ja.com

HDMIポートがManjaro Linuxを搭載したラップトップ用のNvidia / Intel Bumblebee Driverを機能しない

お知らせ

OS: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

CPU:Intel(R)Core(TM)i7-3610QM CPU @ 2.30GHz

GPU:

  • Intel Corporation 3rd Gen Coreプロセッサーグラフィックスコントローラー(リビジョン09)
  • NVIDIA Corporation GF108M [GeForce GT 630M](rev ff)

PCIアドレス:

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

バンブルビーの運転手。

問題

私はNVIDIANVIDIA OptimusのArchLinuxウィキを見つけました(そして読みました)(はい、マンジャロはArchLinuxベースです)。

しかし、Manjaroをインストールすると、NON-FREEドライバーがインストールされたため、nvidianvidia-libglxorg-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 driver

しかし、私の/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が機能しているかどうかを確認するにはどうすればよいですか?

追加のドライバーをインストールする必要はないと思いますが、Manjaroが提供するmhwdツールを使用していくつかの設定を構成する必要があるのか​​、または新しい/etc/X11/xorg.conf.d/20-nvidia.confファイルを作成する必要があるのか​​、さらにはintel.confnvidia.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のドライバをWebサイトからインストールしたときにすでに起こりましたが、これは非常に悪い考えです)。

8
noraj

私はこの問題を自分で抱えていて、これで解決しました guide これは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のWebサイトに記載されているように、AllowEmptyInitialConfigurationはScreenセクションに移動する必要があります。

$ 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:mkinitcpioにi915とnvidiaを追加する

MODULES="i915 nvidia nvidia_modeset nvidia_uvm nvidia_drm"

ステップ9:再起動してお楽しみください。

1
vfbsilva