Что-1 означает для набора режимов? Каковы другие опции для набора режимов?

У меня есть общее представление, какова установка KMS:

Kernel mode-setting (KMS) shifts responsibility for selecting and setting up the
graphics mode from X.org to the kernel. When X.org is started, it then detects
and uses the mode without any further mode changes. This promises to make 
booting faster, more graphical, and less flickery.

и я собираю это nomodeset выключает это (я не выбрал это), по-видимому, перекладывая ответственность назад перед модулем видеокарты?

Когда я делаю cat /sys/module/i915/parameters/modeset Я добираюсь -1, что это означает точно?

Examing

 modinfo i915 | grep modeset
parm:           modeset:Use kernel modesetting [KMS] (0=DRM_I915_KMS from 
.config, 1=on, -1=force vga console preference [default]) (int)

Так похож на него, означает "силу vga консольное предпочтение", независимо от того, что это означает...

2
задан 20 January 2014 в 18:09

1 ответ

Документация для большинства параметров модуля доступна от modinfo (строки, перенесенные для удобочитаемости):

$ modinfo i915 | grep modeset
parm:           modeset:Use kernel modesetting [KMS] (0=DRM_I915_KMS from
                .config, 1=on, -1=force vga console preference [default]) (int)

Прочитывая исходный код Linux, кажется что -1 установка ("вызывают vga консольное предпочтение") зависит от nomodeset опция. Таким образом, если nomodeset опция присутствует, она действует как i915.modeset=0. Иначе, если nomodeset опущен, это рассматривают как будто i915.modeset=1 установлен.


Путь выполнения кода:

  • drivers/gpu/drm/i915/i915_drv.c (отключает набор режимов, если текстовый консольный режим вызывается):

    if (vgacon_text_force() && i915_modeset == -1)
        driver.driver_features &= ~DRIVER_MODESET;
    
  • video/console/vgacon.c:

    static int vgacon_text_mode_force;
    
    bool vgacon_text_force(void)
    {
        return vgacon_text_mode_force ? true : false;
    }
    
  • (тот же файл):

    static int __init text_mode(char *str)
    {
        vgacon_text_mode_force = 1;
        return 1;
    }
    
  • (тот же файл, установленный через ядро cmdline):

    /* force text mode - used by kernel modesetting */
    __setup("nomodeset", text_mode);
    
3
ответ дан 20 January 2014 в 18:09

Другие вопросы по тегам:

Похожие вопросы: