Como desativar o módulo de vídeo Intel i915?

4

Meu computador é muito instável durante a execução do Ubuntu 14.04.2 ou superior (qualquer coisa mais nova que o kernel 3.13) com apenas um visualizador VNC em uma espécie de modo de quiosque, ele congela frequentemente ter que fazer um hard reset várias vezes ao dia. Como mostrado neste bug relacionado , parece ser um problema com o módulo do kernel intel i915 em sistemas Bay Trail e não há solução alternativa, mesmo em novos kernels.

Não preciso de nenhuma aceleração 3D nem de hardware, então como posso desativar os drivers de som e vídeo intel i915 e usar um genérico VESA / framebuffer ou algo mais simples? É possível fazer isso? Eu só quero ter certeza de que os módulos não estão carregados e ainda executam um simples aplicativo X11.

Eu tentei adicionar isso a um arquivo no arquivo /etc/modprobe.d/ e atualizar o initramfs:

blacklist i915
blacklist snd_hda_intel

Mas o /var/log/Xorg.0.log ainda mostra que está sendo carregado:

[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
    
por fmaste 10.11.2015 / 20:45

1 resposta

1

Eu estava lutando por dias para fazer essa configuração. Quando desisti, minha máquina inicializa para X apenas com apenas uma tela (tenho 2 conectadas). Está realmente funcionando no modo 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==""

Ainda não tenho certeza de todas as coisas necessárias para fazer isso, mas lembro-me aqui:

  1. Localize o arquivo do driver i915 e exclua-o

    sudo updatedb
    locate i915.ko
    sudo mv /.../i915.ko ~/i915.ko.backup
    
  2. Atualizar o RAMDisk

    sudo update-initramfs
    
  3. Reinicializar

Notas:

  • Instale o xdm se ainda não estiver instalado e você precisa de um gerenciador de exibição. lightdm pode falhar no início.
  • Remova o comando xrandr antigo de .xprofile e .xsessionrc se você tiver definido um. Porque ele falhará quando você vir as saídas xrandr acima e bloquear a inicialização da sessão.
por user.dz 22.06.2016 / 07:29