LINUX.ORG.RU

При загрузке Линукса нижняя часть заставки забита мусором

 


0

2

Добрый день,

Имеется плата с stm32mp1 на борту, к нему по spi прицеплен ЖКИ 128х64. При загрузке Линукса на экран выводится заставка, в нижней части экрана при этом появляется то мигающий курсор, то просто мусор. Такое впечатление, что при загрузке там типа строки ввода. Помогите, пожалуйста, отключить это безобразие.

Заставка выводится на fbcon.

Спасибо



Последнее исправление: AlexVM2020 (всего исправлений: 1)
Ответ на: комментарий от stabilitron

Поменял loglevel= на 0 (было 7). В терминал вообще перестала загрузка сыпаться, заставки нет, вместо нее моргает курсор). Не то…

Похоже, что на заставку накладывается текстовая консоль.

AlexVM2020
() автор топика
Последнее исправление: AlexVM2020 (всего исправлений: 1)
Ответ на: комментарий от AlexVM2020

Если заставка — это boot logo, то она рисуется во время загрузки ядра и тут навряд ли что-то можно сделать, кроме как перенаправить вывод консоли на другое устройство: console=ttyS0.

Если у тебя ядро скомпилено с поддержкой юзерского интерфейса (есть файл /dev/fb0), то после загрузки можно сделать так:

# отключить курсор
$ echo 0 > /sys/class/graphics/fbcon/cursor_blink

# очистить фреймбуфер (опционально)
$ cat /dev/zero > /dev/fb0

# нарисовать свою картинку
$ cat image.raw > /dev/fb0

Формат картинки можно узнать из /sys/class/graphics/fb0/bits_per_pixel. Сконвертить из джипежки легко ImageMagick-ом:

$ magick cool_image.jpg -resize 128 -depth 8 RGBA:image.raw

Ещё существует програмка fbsplash.

stabilitron
()
Ответ на: комментарий от stabilitron

Да, заставка — это boot logo, рисуется во время загрузки ядра. Вывод консоли перенаправлен на другое устройство console=ttySTM0, в терминале его и вижу, на экране во время загрузки внизу заставки только курсор моргает, и иногда мусор.

Если у тебя ядро скомпилено с поддержкой юзерского интерфейса (есть файл /dev/fb0), то после загрузки можно сделать так:

Насколько я понял, эти действия направлены на работу ЖКИ после загрузки.

После загрузки все норм, Qt выводит окно программы на ЖКИ. Напрягает курсор именно во время загрузки.

Если задать fbcon=map:1,2 то пропадает и курсор , и заставка.

AlexVM2020
() автор топика
Последнее исправление: AlexVM2020 (всего исправлений: 1)
Ответ на: комментарий от AlexVM2020

Я смотрел в менюконфиге и не нашёл возможность отключения курсора во время загрузки ядра. Посмотри сам, может ты найдёшь. Там была какая-то настройка касательно момента вывода лого, чтоб отложить его отрисовку на чуть более позднее время, для того, чтобы оно не затирало системные сообщения. Попробуй её активировать.

Если в менюконфиге или через принудительное указание какого-то CONFIG_*, в файле настроек компиляции ядра, курсор не получится отключить, то, вероятно, это будет не так сложно сделать поправив исходники.

stabilitron
()
Ответ на: комментарий от AlexVM2020

Запутал я тебя. Всё оказалось гораздо проще :) Нет бы сразу нам с тобой погуглить насчёт отключения курсора. Я уж раз пять ядро пересобрал. Нашёл переменную fbcon_cursor_noblink, поставил её начальное значение в 1 — курсор мигать перестал, но дырочка от него картинке всё равно оставалась)

Рад, что решение нашлось 👍️

stabilitron
()