U-boot: различия между версиями

Материал из WIKI ELVEES
мНет описания правки
мНет описания правки
 
Строка 1: Строка 1:
'''Обратно на [[Scythian|Обратно на СКИФ]]'''
'''Обратно на [[Scythian|СКИФ]]'''


Вторичный загрузчик MCom03 - U-boot, SBL https://github.com/elvees/u-boot/tree/mcom03, https://github.com/elvees/mcom03-sbl
Вторичный загрузчик MCom03 U-boot, SBL https://github.com/elvees/u-boot/tree/mcom03, https://github.com/elvees/mcom03-sbl


'''Как правильно собирать SBL?'''<blockquote>Предлагаем следующий вариант сборки:Инструкция расположена по ссылке: [https://dist.elvees.com/mcom03/docs/linux-sdk/latest/components/buildroot.html#buildroot https://dist.elvees.com/mcom03/docs/linux-sdk/latest/components/buildroot.html#buildroot] То есть, Вы берете архив с исходниками,распаковываете его, собираете.SBL собирается командами</blockquote><blockquote><code class="mwt-code">make clean</code></blockquote><blockquote><code class="mwt-code">make mcom03_defconfig FRAGMENTS=</code>&lt;<code class="mwt-code">your_fragment</code>&gt;,где &lt;<code class="mwt-code">your_fragment</code>&gt; - файл вашей разработки в external-mcom03/fragments, в котором будут указаны специфичные для Вашего проекта пакеты и зависимости.  
'''Как правильно собирать SBL?'''<blockquote>Предлагаем следующий вариант сборки:<br>Инструкция расположена по ссылке: [https://dist.elvees.com/mcom03/docs/linux-sdk/latest/components/buildroot.html#buildroot https://dist.elvees.com/mcom03/docs/linux-sdk/latest/components/buildroot.html#buildroot]<br>То есть, Вы берете архив с исходниками, распаковываете его, собираете. SBL собирается командами</blockquote><blockquote><code class="mwt-code">make clean</code></blockquote><blockquote><code class="mwt-code">make mcom03_defconfig FRAGMENTS=</code>&lt;<code class="mwt-code">your_fragment</code>&gt;, где &lt;<code class="mwt-code">your_fragment</code>&gt; файл вашей разработки в external-mcom03/fragments, в котором будут указаны специфичные для Вашего проекта пакеты и зависимости.  


</blockquote><blockquote><code class="mwt-code">make mcom03-sb</code>l
</blockquote><blockquote><code class="mwt-code">make mcom03-sb</code>l
Строка 11: Строка 11:
В случае, если у Вас есть какие-то локальные изменения в репозитариях ddrinit/arm-trusted-firmware/u-boot, то Вы можете подключить их к системе сборки, см. 1.4.2</blockquote>
В случае, если у Вас есть какие-то локальные изменения в репозитариях ddrinit/arm-trusted-firmware/u-boot, то Вы можете подключить их к системе сборки, см. 1.4.2</blockquote>


'''Возможен ли перенос существующей системы загрузки(SBL-&gt;DDRInit-&gt;SBL-&gt;TF-A-&gt;U-Boot-&gt;Linux) на вариант без использования QSPI0 памяти, используя загрузку с SDMMC0(eMMC)?'''<blockquote>Да, загрузка с eMMC возможна. Для этой реализации необходимо выдержать задержку 500мс снятия RESET на процессоре после включения питания на микросхемах eMMC.
'''Возможен ли перенос существующей системы загрузки(SBL DDRInit SBL TF-A U-Boot Linux) на вариант без использования QSPI0 памяти, используя загрузку с SDMMC0(eMMC)?'''<blockquote>Да, загрузка с eMMC возможна. Для этой реализации необходимо выдержать задержку 500мс снятия RESET на процессоре после включения питания на микросхемах eMMC.


'''Примечание:''' Загрузчика напрямую с eMMC у нас нет, т.к. ограниченные возможности тестирования.</blockquote>
'''Примечание:''' Загрузчика напрямую с eMMC у нас нет, т.к. ограниченные возможности тестирования.</blockquote>
Строка 17: Строка 17:
'''U-boot не видит устройства USB3.0'''<blockquote>Поддержки USB 3.0 в U-Boot нет, для работы требуется портировать драйвер dwc3-mcom03 из Linux.
'''U-boot не видит устройства USB3.0'''<blockquote>Поддержки USB 3.0 в U-Boot нет, для работы требуется портировать драйвер dwc3-mcom03 из Linux.


'''Обходной метод''': Некоторые внешние USB-хабы могут переводить устройства в режим 2.0 - в таком случае подключенное устройство будет определяться и работать на скоростях 2.0.</blockquote>
'''Обходной метод''': Некоторые внешние USB-хабы могут переводить устройства в режим 2.0, в таком случае подключённое устройство будет определяться и работать на скоростях 2.0.</blockquote>


'''Что означает: SECURE ERR 3 - в терминале ? '''
'''Что означает: SECURE ERR 3 - в терминале?'''
<blockquote>
<blockquote>
Это значит, что  на выводах BOOT выставлено значение 1, 2, 4 или 5. При этом BootROM ожидает образ с заголовками (который не XIP). Но необходимые заголовки в прошитом образе не были найдены. Если вы используете обычный образ в SPI (sbl.bin), то надо подать на все три пина BOOT нули (режим XIP).
Это значит, что  на выводах BOOT выставлено значение 1, 2, 4 или 5. При этом BootROM ожидает образ с заголовками (который не XIP). Но необходимые заголовки в прошитом образе не были найдены. Если вы используете обычный образ в SPI (sbl.bin), то надо подать на все три пина BOOT нули (режим XIP).
</blockquote>
</blockquote>

Текущая версия от 14:51, 26 июля 2023

Обратно на СКИФ

Вторичный загрузчик MCom03 – U-boot, SBL https://github.com/elvees/u-boot/tree/mcom03, https://github.com/elvees/mcom03-sbl

Как правильно собирать SBL?

Предлагаем следующий вариант сборки:
Инструкция расположена по ссылке: https://dist.elvees.com/mcom03/docs/linux-sdk/latest/components/buildroot.html#buildroot
То есть, Вы берете архив с исходниками, распаковываете его, собираете. SBL собирается командами

make clean

make mcom03_defconfig FRAGMENTS=<your_fragment>, где <your_fragment> – файл вашей разработки в external-mcom03/fragments, в котором будут указаны специфичные для Вашего проекта пакеты и зависимости.

make mcom03-sbl

т.е., собираются не все сконфигурированные компоненты (make all), а только требуемые для SBL (make mcom03-sbl). Сборка занимает, ориентировочно, 20 минут (Если HOST-компоненты уже собраны).

В случае, если у Вас есть какие-то локальные изменения в репозитариях ddrinit/arm-trusted-firmware/u-boot, то Вы можете подключить их к системе сборки, см. 1.4.2

Возможен ли перенос существующей системы загрузки(SBL → DDRInit → SBL → TF-A → U-Boot → Linux) на вариант без использования QSPI0 памяти, используя загрузку с SDMMC0(eMMC)?

Да, загрузка с eMMC возможна. Для этой реализации необходимо выдержать задержку 500мс снятия RESET на процессоре после включения питания на микросхемах eMMC. Примечание: Загрузчика напрямую с eMMC у нас нет, т.к. ограниченные возможности тестирования.

U-boot не видит устройства USB3.0

Поддержки USB 3.0 в U-Boot нет, для работы требуется портировать драйвер dwc3-mcom03 из Linux. Обходной метод: Некоторые внешние USB-хабы могут переводить устройства в режим 2.0, в таком случае подключённое устройство будет определяться и работать на скоростях 2.0.

Что означает: SECURE ERR 3 - в терминале?

Это значит, что на выводах BOOT выставлено значение 1, 2, 4 или 5. При этом BootROM ожидает образ с заголовками (который не XIP). Но необходимые заголовки в прошитом образе не были найдены. Если вы используете обычный образ в SPI (sbl.bin), то надо подать на все три пина BOOT нули (режим XIP).