Lenovo ThinkPad P52
Hardware | PCI/USB ID | Working? |
---|---|---|
GPU (Intel) | Yes | |
GPU (Nvidia) | Yes | |
Wireless | Yes | |
Bluetooth | 8087:0aaa |
Yes |
Audio | 10de:0fb9 |
Yes |
Touchpad | Yes | |
Webcam | 5986:2113 |
Yes |
Card reader | 10ec:525a |
Yes |
Fingerprint reader | 06cb:009a |
Yes |
Lenovo P52 はクアッドまたはヘックスコアの 第8世代 Intel プロセッサ搭載のラップトップです。
インストール
BIOS を V1.17 以降 に更新してください。2019年3月の時点で v1.24 です。特定の設定を選択すると、以前のバージョンの BIOS が動作しなくなる可能性があります。
- ハイブリットグラフィックスとディスクリートグラフィックス - https://forums.lenovo.com/t5/ThinkPad-P-and-W-Series-Mobile/P52-won-t-start-after-change-to-only-discrete-graphic-card/m-p/4265065
- Thunderbolt 3 のサポート - https://forums.lenovo.com/t5/ThinkPad-P-and-W-Series-Mobile/Lenovo-P52-bricked-by-selecting-BIOS-thunderbolt-support-for/td-p/4207538?page=12
グラフィックス
このラップトップには、NVIDIA チップに直接配線された外部ディスプレイポートがあります。大まかに言うと、これは外部ディスプレイを使用するには、専用 GPU を有効にする必要があるという事です。幸い、統合グラフィックスと専用グラフィックスを動的に切り替えることは可能ですが、これは modesetting ドライバではなく Intel DDX ドライバ xf86-video-intel を使用することによってのみ可能です。
ラップトップは、ハイブリットグラフィックスまたは専用グラフィックスのみの 2 つのモードのうちの 1 つで使用できます。
統合 Intel UHD 630 GPU(パイブリットグラフィックスの一部)を使用するには、mkinitcpio のモジュールとして、i915
モジュールを initramfs
に追加する必要があります。これを行うには /etc/mkinitcpio.conf
で次のように設定します。
/etc/mkinitcpio.conf
... MODULES=(i915)
上記を追加しないと、initramfs
をロードしようとしたときに動かなくなり、システムが起動できなくなります。
Dedicated Graphics
のみを使用することで、上記のモジュールなしで済ますことができる場合があります(UEFI の設定を変更することで可能です)。
bumblebee とプロプライエタリドライバ
この設定では、一部のアプリケーションでは統合 GPU が使用されますがoptirun
または primusrun
ランチャーを使用して、ディスクリート GPU でレンダリングできます。詳しい手順については、Bumblebee を参照してください。適切な V-sync サポートがないため、この方法ではディスクリート GPU でレンダリングされたアプリケーションにティアリングが発生します。また、ディスクリート GPU と統合 GPU の間でデータを非効率に移動させる結果、いくつかのオーバーヘッドが発生しますが、Nvidia GPU は Nouvearu を使用した場合よりはるかに優れたパフォーマンスを発揮します。
これを動作させるには、bumblebee
, bbswitch
, nvidia
, xf86-video-intel
が必要です。
そして、以下の設定ファイルをセットしてください。
/etc/X11/xorg.conf.d/intel.conf
Section "ServerLayout" Identifier "Layout0" Screen 0 "intel" Inactive "nvidia" EndSection Section "Monitor" Identifier "Monitor0" Option "DPMS" EndSection Section "Device" Identifier "nvidia" Driver "dummy" BusID "PCI:1:0:0" EndSection Section "Screen" Identifier "nvidia" Device "nvidia" EndSection Section "Screen" Identifier "intel" Device "intel" Monitor "Monitor0" EndSection Section "Device" Identifier "intel" Driver "intel" Option "TearFree" "true" Option "DRI" "3" BusId "PCI:0:2:0" EndSection
(既にこれらのいずれかがあると思われるので、必要に応じて調整/追加してください。最後のダミーデバイスは必須です。):
/etc/bumblebee/xorg.conf.nvidia
Section "ServerLayout" Identifier "Layout0" Option "AutoAddDevices" "false" Option "AutoAddGPU" "false" # Inventions Screen 0 "nvidia" Inactive "intel" EndSection Section "Device" Identifier "DiscreteNvidia" Driver "nvidia" VendorName "NVIDIA Corporation" BusID "PCI:1:0:0" Option "ProbeAllGpus" "false" Option "NoLogo" "true" Option "UseEDID" "true" Option "AllowEmptyInitialConfiguration" EndSection Section "Device" Identifier "intel" Driver "dummy" BusID "PCI:0:2:0" EndSection Section "Screen" Identifier "nvidia" Device "nvidia" EndSection
この段階で、マシンを再起動します。すると、通常通り optirun
で GPU 上のアプリケーションを実行できるはずです。例えば optirun glxgears
などです。外部ディスプレイを使いたい場合は、optirun
でアプリを実行してから intel-virtual-output -f
を実行して GPU をオンにし続ける必要があります。(これは実行されたままで、外部ディスプレイポートを使用可能な仮想出力にバインドします) この段階で、外部ポートを見たり使ったりできるようになるはずです。
指紋認証リーダー
Lenovo_ThinkPad_T480s を参照 - python-validityAUR で動作しますが、libfprint では動作しません。
タッチパッド
Linux カーネルをアップグレードすると、タッチパッドとトラックポイントが機能しなくなるという問題が発生することがあります。カーネルパラメータ psmouse.elantech_smbus=0
で起動すると修正されるようです。FS#59714#comment174924