Как проверить и отладить загрузчик Yocto на i.MX6Q?

Я создаю доверенную среду исполнения на IMX6Q с версией Linux Yocto в режиме ненадежного процессора. Когда я переключаюсь на незащищенный в первый раз после перезагрузки для загрузки ядра Linux, меня переполняют исключения исключений данных и предварительной выборки после перехода к загрузчику ядра. Также кажется, что эти исключения возникают, как только MMU включен

Загрузка ядра без перехода в небезопасное состояние работает нормально.

Возможно ли, что управляющие биты незащищенной копии таблиц страниц первого этапа записываются с очищенным битом NS, что заставляет MMU отказывать в любом доступе к этим областям?

Где я могу найти код запуска, который настраивает таблицы страниц в Yocto-BSP для IMX6Q?

Как я могу отладить загрузчик Linux?

Можно ли просто изменить исходный код загрузчика в каталоге сборки BSP и перестроить образ?

Заранее спасибо,

Павел

1 ответ

Решение

Как я могу отладить загрузчик Linux?

Да можно с красивым printf/puts... Кстати, если вы хотите действительно отладить с jtag на ранних стадиях uboot Вы можете обратиться к этому сообщению на форуме NXP

Можно ли просто изменить исходный код загрузчика в каталоге сборки BSP и перестроить образ?

Вы можете легко работать с каталогом git u-boot в вашем workbuild/tmp/work/., реж

  1. Изменить то, что вам нужно
  2. скомпилируйте это с bitbake -f -c compile u-boot-imx
  3. Разверните его с bitbake -f -c deploy u-boot-imx

В конце ваш новый U-Boot будет помещен в обычный workbuild/tmp/deploy/images/...

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