Как отключить видеомодуль Intel i915?

Как отключить видеомодуль Intel i915?

Мой компьютер очень нестабилен при работе Ubuntu 14.04.2 или выше (все, что новее ядра 3.13) только с VNC-просмотрщиком в режиме киоска, он часто зависает, и мне приходится делать жесткий сброс много раз в день. Как показано в этомсвязанная ошибкаПохоже, это проблема с модулем ядра Intel i915 в системах Bay Trail, и решения этой проблемы не существует, даже для более новых ядер.

Мне не нужно ни 3D, ни аппаратное ускорение, так как мне отключить драйверы звука и видео Intel i915 и использовать VESA / framebuffer generic или что-то попроще? Возможно ли это сделать? Я просто хочу быть уверен, что модули не загружены и по-прежнему запускать простые приложения 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

решение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Может не запуститься.
  • Удалите любую старую xrandrкоманду из .xprofileи .xsessionrcесли вы ее установили. Потому что она не будет выполнена, как вы видите выше, xrandrи заблокирует запуск сеанса.

Связанный контент