¿Cómo deshabilitar el módulo de video Intel i915?

¿Cómo deshabilitar el módulo de video Intel i915?

Mi computadora es muy inestable cuando ejecuta Ubuntu 14.04.2 o superior (cualquier versión más nueva que el kernel 3.13) con solo un visor VNC en una especie de modo quiosco, se congela con frecuencia y tengo que hacer un reinicio completo muchas veces al día. Como se muestra en esteerror relacionadoParece ser un problema con el módulo del kernel Intel i915 en los sistemas Bay Trail y no existe ninguna solución, ni siquiera en los kernels más nuevos.

No necesito aceleración 3D ni de hardware, entonces, ¿cómo puedo desactivar los controladores de sonido y video Intel i915 y usar uno genérico VESA/framebuffer o algo más simple? ¿Es posible hacer esto? Solo quiero estar seguro de que los módulos no estén cargados y sigan ejecutando aplicaciones X11 simples.

Intenté agregar esto a un archivo en el archivo /etc/modprobe.d/ y actualizar initramfs:

blacklist i915
blacklist snd_hda_intel

Pero /var/log/Xorg.0.log todavía muestra que los está cargando:

[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

Respuesta1

Estuve luchando durante días para realizar esa configuración. Cuando me di por vencido, mi máquina arranca en X solo con una sola pantalla (tengo 2 conectadas). Realmente funciona en 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==""

Todavía no estoy seguro de todo lo necesario para hacerlo, pero aquí lo recuerdo:

  1. Localice el archivo del controlador i915 y elimínelo

    sudo updatedb
    locate i915.ko
    sudo mv /.../i915.ko ~/i915.ko.backup
    
  2. Actualizar disco RAM

    sudo update-initramfs
    
  3. Reiniciar

Notas:

  • Instálelo xdmsi aún no está instalado y necesita un administrador de pantalla. lightdmpuede que no arranque.
  • Elimine cualquier xrandrcomando antiguo de .xprofiley .xsessionrcsi ha configurado uno. Porque fallará cuando vea los xrandrresultados anteriores y bloqueará el inicio de la sesión.

información relacionada