web-dev-qa-db-ja.com

Intel i915ビデオモジュールを無効にする方法

一種のキオスクモードのVNCビューアーのみでUbuntu 14.04.2以降(カーネル3.13より新しいもの)を実行していると、コンピューターが非常に不安定になり、1日に何度もハードリセットを行う必要が頻繁にフリーズします。これに示されているように 関連バグ これは、Bay Trailシステム上のintel i915カーネルモジュールの問題であると思われ、新しいカーネルであっても回避策はありません。

3Dもハードウェアアクセラレーションも必要ないので、Intel i915サウンドおよびビデオドライバーを無効にし、VESA /フレームバッファージェネリックまたはシンプルなものを使用するにはどうすればよいですか?これを行うことは可能ですか?モジュールがロードされていないことを確認したいだけで、単純なX11アプリを実行します。

これを/etc/modprobe.d/ファイルのファイルに追加して、initramfsを更新してみました。

blacklist i915
blacklist snd_hda_intel

ただし、/ var/log/Xorg.0.logにはまだロードされていることが示されています。

[323589.490] (II) LoadModule: "intel"
[323589.491] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[323589.516] (II) Module intel: vendor="X.Org Foundation"
[323589.554] (II) intel(G0): Using Kernel Mode Setting driver: i915, version 1.6.0 20150522
[323589.554] (II) intel(G0): SNA compiled: xserver-xorg-video-intel 2:2.99.917+git20150808-0ubuntu4 (Robert Ancell <[email protected]>)
[323589.554] (II) intel(G0): SNA compiled for use with valgrind
[323589.555] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
[323589.556] (II) intel: Driver for Intel(R) HD Graphics: 2000-6000
[323589.556] (II) intel: Driver for Intel(R) Iris(TM) Graphics: 5100, 6100
[323589.556] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics: 5200, 6200, P6300
4
fmaste

そのような設定をするのに何日も苦労しました。あきらめると、マシンは1つの画面だけでXから起動します(2つ接続されています)。 VESAモードで実際に実行されています。

$ Sudo lshw -c display
  *-display UNCLAIMED     
       description: VGA compatible controller
       product: 3rd Gen Core processor Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 09
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list
       configuration: latency=0
       resources: memory:f6400000-f67fffff memory:e0000000-efffffff ioport:f000(size=64)


$ xrandr --verbose
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 1366 x 768, current 1366 x 768, maximum 1366 x 768
default connected 1366x768+0+0 (0x270) normal (normal) 0mm x 0mm
    Identifier: 0x26f
    Timestamp:  34274
    Subpixel:   unknown
    Clones:    
    CRTC:       0
    CRTCs:      0
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter: 
  1366x768 (0x270) 79.731MHz *current
        h: width  1366 start    0 end    0 total 1366 skew    0 clock  58.37KHz
        v: height  768 start    0 end    0 total  768           clock  76.00Hz

$ find /dev/ -iname "fb*"
/dev/fb0

$ udevadm info -a /dev/fb0

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/platform/vesa-framebuffer.0/graphics/fb0':
    KERNEL=="fb0"
    SUBSYSTEM=="graphics"
    DRIVER==""
    ATTR{bits_per_pixel}=="32"
    ATTR{blank}==""
    ATTR{console}==""
    ATTR{cursor}==""
    ATTR{mode}==""
    ATTR{modes}=="U:1366x768p-76"
    ATTR{name}=="VESA VGA"
    ATTR{pan}=="0,0"
    ATTR{rotate}=="0"
    ATTR{state}=="0"
    ATTR{stride}=="5504"
    ATTR{virtual_size}=="1366,768"

  looking at parent device '/devices/platform/vesa-framebuffer.0':
    KERNELS=="vesa-framebuffer.0"
    SUBSYSTEMS=="platform"
    DRIVERS=="vesa-framebuffer"
    ATTRS{driver_override}=="(null)"

  looking at parent device '/devices/platform':
    KERNELS=="platform"
    SUBSYSTEMS==""
    DRIVERS==""

そうするために必要なすべてのものについてはまだわかりませんが、ここで私は覚えています:

  1. I915ドライバーファイルを見つけて削除します

    Sudo updatedb
    locate i915.ko
    Sudo mv /.../i915.ko ~/i915.ko.backup
    
  2. RAMDiskを更新する

    Sudo update-initramfs
    
  3. リブート

ノート:

  • xdmをインストールします(まだインストールされておらず、ディスプレイマネージャーが必要な場合)。 lightdmは、開始に失敗する場合があります。
  • .xprofile.xsessionrcから古いxrandrコマンドを削除します(設定している場合)。上記のxrandr出力が表示され、セッションの起動がブロックされると失敗するためです。
1
user.dz