Если у вас есть SoC (система на кристалле) с именем Banana Pro, вы можете столкнуться с проблемой, что большинство дистрибутивов Linux, доступных для этой платы, не соблюдают разрешение экрана, которое вы установили в файле uEnv.txt. Эта проблема, связанная с разрешением, может возникнуть, особенно если вы используете какой-либо преобразователь HDMI -> VGA. Вот рабочее решение, чтобы исправить это.
По умолчанию для установки желаемого разрешения из разрешений, поддерживаемых графическим процессором платы, обычно требуется смонтировать загрузочный раздел FAT32 и отредактировать файл с именем uEnv.txt. В общем случае команды будут выглядеть следующим образом:
# монтировать / dev / mmcblk0p1 / mnt # nano /mnt/uEnv.txt
Затем вы можете установить желаемое разрешение в строке bootargs, изменив часть disp.screen0.output_mode на что-то вроде этого:
disp.screen0.output_mode = 1920x1080p60
Это означает, что при следующей загрузке необходимо установить разрешение экрана 1920×1080 и 60 Гц.
Однако, как я уже упоминал выше, это не действует. Если описанная последовательность вам не подходит, есть другое решение.
- Перечислите все доступные режимы отображения для вашей доски. Это можно сделать с помощью следующей команды:
# кошка / системный / класс / графика / fb0 / режимы
Это даст вам представление о том, какое разрешение можно установить.
- Теперь установите желаемое разрешение с помощью следующей команды:
# echo "V: 1024x768p-60"> / sys / class / graphics / fb0 / mode
Здесь я предполагаю, что вы получили значение V: 1024x768p-60 из списка режимов, который вы видели на предыдущем шаге.
- Теперь установите инструмент fbset. Команда может отличаться в зависимости от дистрибутива, который вы установили на Banana Pro. Например, для Arch Linux используйте следующую команду:
# pacman -S fbset
- Запустить fbset без параметров. Результат будет примерно таким:
- Убедитесь, что оно соответствует текущему разрешению, которое вы установили с помощью команды «echo». Теперь выполните следующую команду:
# fbset >> /etc/fb.modes
Это добавит ваш текущий режим в файл /etc/fb.modes.
- Откройте файл /etc/fb.modes в любом текстовом редакторе (вы можете использовать что-то вроде nano). Перейти в конец файла.
- Там вы найдете текущий режим. Переименуйте раздел во что-то вроде «mymode» и удалите строку rgba. До:
После:
- Теперь вы можете в любой момент ввести следующую команду, чтобы установить текущее разрешение:
# fbset mymode
Это переключит разрешение дисплея для фреймбуфера консоли.
Теперь, чтобы автоматически изменять разрешение дисплея Banana Pro при каждой загрузке, вы можете сделать следующее:
- Если ваш дистрибутив (например, Bananian) не поставляется с менеджером инициализации systemd, добавьте команду fbset mymode в конец файла /etc/rc.local.
- Если вы используете systemd (например, при использовании Arch Linux), создайте новый файл * .service, то есть display.service, и поместите его в следующее место:
/etc/systemd/system/display.service
- Добавьте в файл display.service следующий контент:
[Ед. изм] Описание = Разрешение дисплея После = local-fs.target DefaultDependencies = нет [Услуга] Тип = простой ExecStart = / usr / bin / fbset mymode [Установить] WantedBy = multi-user.target
После этого нужно включить агрегат:
# systemctl включить display.service
Вот и все. Теперь при каждой загрузке ваша плата Banana Pro автоматически устанавливает необходимое разрешение экрана.