Режимы работы фреймбуфера: различия между версиями

Материал из ALT Linux Wiki
Строка 26: Строка 26:


* Второй вариант - использование переменных <ref>[https://www.gnu.org/software/grub/manual/grub/html_node/index.html GNU GRUB Manual 2.12]</ref> '''gfxmode''' и '''gfxpayload'''
* Второй вариант - использование переменных <ref>[https://www.gnu.org/software/grub/manual/grub/html_node/index.html GNU GRUB Manual 2.12]</ref> '''gfxmode''' и '''gfxpayload'''
{{Note |Поддерживаемые режимы grub можно получить командой videoinfo из терминала grub.}}
** Параметра 'GRUB_GFXMODE' задаёт значение переменной '''gfxmode''', которая определяет разрешение монитора в графическом терминале grub. Устанавливает разрешение, используемое в графическом терминале grub. Можно использовать только те режимы, которые поддерживает видеокарта через расширения VESA BIOS (VBE), поэтому, например, собственное разрешение ЖК-панели может быть недоступно. По умолчанию - режим 'auto', который пытается выбрать разрешение автоматом.  
** Параметра 'GRUB_GFXMODE' задаёт значение переменной '''gfxmode''', которая определяет разрешение монитора в графическом терминале grub. Устанавливает разрешение, используемое в графическом терминале grub. Можно использовать только те режимы, которые поддерживает видеокарта через расширения VESA BIOS (VBE), поэтому, например, собственное разрешение ЖК-панели может быть недоступно. По умолчанию - режим 'auto', который пытается выбрать разрешение автоматом.  
{{Note |Поддерживаемые режимы grub можно получить командой videoinfo из терминала grub.}}
Возможные значения:
Возможные значения:
*** '''Напрямую заданные режимы'''. Разрешения задаются в виде '''ширина''' x '''высота'''  или '''ширина''' x '''высота''' x '''глубина''' разделённые через запятую или точку с запятой. Заданные режимы проверяются слева направо.
*** '''Напрямую заданные режимы'''. Разрешения задаются в виде '''ширина''' x '''высота'''  или '''ширина''' x '''высота''' x '''глубина''' разделённые через запятую или точку с запятой. Заданные режимы проверяются слева направо.

Версия от 19:15, 26 февраля 2024

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Введение

При использовании терминальной консоли, а так-же при использования драйвера fbdev в X-сервере, бывает нужно задать разрешение, в котором работает фреймбуфер.

Для этого надо при загрузке передать ядру параметр работы его работы. Обычно для этого в lilo или в grub задаётся параметр VGA из следующеёй таблицы:

Задание режима через lilo

Для задания режима в lilo, надо добавить к параметрам передаваемым ядру параметр VGA с заданным значением, например:

image="/boot/vmlinuz"
        label="ALTLinux4.1"
        initrd="/boot/initrd.img"
        root="UUID=28c12a86-fbfc-4d94-8824-284bd3e2fdb5"
        vga="0x31b"


Задание режима через grub2

  • Первый вариант (уже как правило не работает), как пример добавляем в переменную параметр vga=0x314. Этот параметр не работает напрямую с 64-битным ядром Linux архитектуры x86, так как grub использует 32-битный протокол загрузки.
GRUB_CMDLINE_LINUX_DEFAULT='quiet=1 panic=30 splash vga=0x314'
  • Второй вариант - использование переменных [1] gfxmode и gfxpayload
Примечание: Поддерживаемые режимы grub можно получить командой videoinfo из терминала grub.
    • Параметра 'GRUB_GFXMODE' задаёт значение переменной gfxmode, которая определяет разрешение монитора в графическом терминале grub. Устанавливает разрешение, используемое в графическом терминале grub. Можно использовать только те режимы, которые поддерживает видеокарта через расширения VESA BIOS (VBE), поэтому, например, собственное разрешение ЖК-панели может быть недоступно. По умолчанию - режим 'auto', который пытается выбрать разрешение автоматом.

Возможные значения:

      • Напрямую заданные режимы. Разрешения задаются в виде ширина x высота или ширина x высота x глубина разделённые через запятую или точку с запятой. Заданные режимы проверяются слева направо.
      • auto1080p - выбор режима Full HD
      • auto - автоматический выбор видеорежима.
    • Параметр GRUB_GFXPAYLOAD_LINUX задаёт значение параметра gfxpayload, которая определяет с какими параметрами будет загружаться ядро Linux, заменяя режим vga. Возможные значения:
      • text - ядро загружается в станадартном текстовом режиме (vga=normal).
      • keep - ядро загружается в текущем режиме консоли GRUB.
      • режимы, задаваемые напрямую, аналогично gfxmode.

Пример задания параметров grub в /etc/sysconfig.grub2

GRUB_TERMINAL_OUTPUT='gfxterm'
GRUB_GFXMODE='1920x1080,auto'
GRUB_GFXPAYLOAD_LINUX='keep'

Стандартные режимы fbdev

Стандартные режимы fbdev в 16-ном виде

Кол-во цветовЧисло бит640x480800x6001024x7681280x10241440x9001600x1200
25680x3010x3030x3050x3070x3600x31c
32k150x3100x3130x3160x3190x3610x31d
64k160x3110x3140x3170x31A0x3620x31e
16M240x3120x3150x3180x31B0x3630x31f

или в 10-чном:

Кол-во цветовЧисло бит640x480800x6001024x7681280x10241440x9001600x1200
2568769771773775864796
32k15784787790793865797
64k16785788791794866798
16M24786789792795867799


Поддерживаемые монитором разрешения

  • Если задать параметр в настройках lilo строчку

vga=ask, то lilo выдаст все параметры, поддерживаемые монитором (для этого надо еще при загрузке выдать команду scan).

  • Список всех разрешений поддерживаемых данным монитором можно получить, выполнив следующую команду:

# hwinfo --framebuffer

Если команда не найдена, значит, надо установить пакет hwinfo:

# apt-get update; apt-get install hwinfo

  • Получение возможных видеорежимов с помощью консольной команды grub videoinfo.

Для того, чтобы попасть в консоль grub, надо нажать кнопку с (латинская), другой вариант - кнопка e и потом нажать F2. После попадания в консоль grub, даём команду videoinfo, которая тестирует и выдаёт возможные режимы работы графической консоли grub (соответственно режимы работы фреймбуфера ядра Linux).


Fremebuffer grub.png

Ссылки

https://www.opennet.ru/base/X/framebuffer_setup.txt.html