LINUX.ORG.RU

Не работает дисплей ucLinux

 ,


0

1

Доброго вечера.

В общем суть вопроса такая. Есть своя плата на STM32F429, к ней прикрутил загрузчик U-Boot. В загрузчике есть инициализация RGB дисплея без контроллера, который подключен к LTDC.

Так вот в Device Tree контроллер дисплея не прописывал, а есть только устройство framebuffer. Инициализацию LTDC прописывал ручками.

Так вот пока работает загрузчик - дисплей работает нормально.

Когда грузиться ucLinux, он подхватывает framebuffer и первые несколько секунд дисплей отображает этапы загрузки, а уже перед запуском самого init’a дисплей вырубается.

Пробовал запустить дисплей на стандартных драйверах от ST, ситуация в принципе такая же, т.е. дисплей показывает несколько секунд этапы загрузки (при этом пишет что устройство запущено, консоль переключена на fb0) потом отваливается.

Насколько я понял, сбрасывается периферия самого контроллера LTDC. Причем в ситуации с фреймбуфером, из Device Tree удалял все упоминания о LTDC (ну вроде того, что ядро о нем не знает ничего, и сбрасывать его не должно).

Куда копать?

Ответ на: комментарий от anonymous

Вроде разобрался

В общем получается так, ядро вырубает периферию, которая не используется.

Таким образом делая инит дисплея в загрузчике, и ничего не указывая в Device tree, ядро считает что периферия не используется и отрубает ее, хотя по факту я ее проинициализировал. Помогает clk_ignore_unused в bootargs.

Хотя, дальше буду разбираться, как правильно все указать в настройках драйверов.

rexton ()