Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопросы по U-boot
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Linux
Viciouspriest
В данный момент осваиваю линукс на АРМе9 TI AM1705. У меня есть даже не знаю какой версии исходник убута, вродебы, он шел вместе с диском от терраэлектроники на отладку TE-AM1705v2. После компиляции он выдает несколько файлов, среди которых есть бинарник и файл без расширения u-boot, в свойствах которого написано, что он является исполняемым(даже иконка другая). Этот файл далее скармливается утилите AISGen от техасов и на выходе получаем готовый файл .ais для загрузки в память проца. Это было вступление, а теперь проблема.
Скачал исходники свежего убута, стал собирать из них убут под свою плату, на выходе получаю тоже несколько файлов, среди которых теже бинарник и и файл без расширения u-boot. Но! Этот убут аисген принимать не хочет, и в описании файла уже написано, что он не исполняемый, а разделяемая библиотека(без иконки)!!!
Подскажите, пожалуйста, что мне делать, где и что прописать, чтобы на выходе получать убут в нужном мне виде... От исходников убута у меня уже мозг кипит. Или можно получить выходной файл убута, готовый для загрузки в память безо всяких утилит?
Виктория
Viciouspriest, у Вас два пути
- почитать и все-таки самому разобраться с динамической загрузкой в Linux (например, тут можно)
- или гуглить по форуму, тема вроде многократно обсуждалась

Использовать первый способ для Вас гораздо предпочтительнее, имхо. Зачем ещё голову забивать чужими иллюстрациями?
DASM
Тут не с динамической загрузкой разбираться надо, а вобще с азами, тем более много времени это не займет и жутко интересно и полезно. Про какие иконки автор пишет я вообще не понял, откуда они в консоли ? А вообще у Техаса все идет с нормальными Makefile , так что стоит все же ридми.тхт прочесть. Ну и не под виндузом делать это конечно.
Hoodwin
1) u-boot без расширения - это собранный u-boot в формате ELF32. AISGen использует для вывода скрипта AIS утилиту ofd6x (object file display), которая должна поддерживать тот ABI формат (COFF, ELF32), в котором ей передается собранный исполняемый модуль.
2) в сборке u-boot есть штатный метод получения бинарного образа u-boot.bin из u-boot, который задействует утилиту objcopy из пакета binutils. u-boot.bin - это уже просто массив, который нужно положить в память, начиная с адреса CONFIG_SYS_TEXT_BASE, который задается при сборке u-boot.
3) В поставку u-boot входят вспомогательные утилиты, которые сами умеют делать разные образы, в том числе AIS image. утилита называется mkimage, исходник живет в каталоге <u-boot-root>/tools. Подробнее о том, как она работает, можно узнать, поизучав Makefile:
Код
$(obj)u-boot.ais:       $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin
        $(obj)tools/mkimage -s -n /dev/null -T aisimage \
            -e $(CONFIG_SPL_TEXT_BASE) \
            -d $(obj)spl/u-boot-spl.bin \
            $(obj)spl/u-boot-spl.ais
        $(OBJCOPY) ${OBJCFLAGS} -I binary \
            --pad-to=$(CONFIG_SPL_MAX_SIZE) -O binary \
            $(obj)spl/u-boot-spl.ais $(obj)spl/u-boot-spl-pad.ais
        cat $(obj)spl/u-boot-spl-pad.ais $(obj)u-boot.bin > \
            $(obj)u-boot.ais
        rm $(obj)spl/u-boot-spl{,-pad}.ais


Она делает готовый AIS image сама, причем намного быстрее, чем aisgen.
Viciouspriest
Всем спасибо большое за ответы, стал ковырять исходники и читать доки, более менее разобрался... Но уж очень мудреный загрузчик.
Про иконки я говорил, когда открываешь папку в линуксе(гуй гном), графическое отображение файлика.
DASM
Цитата(Viciouspriest @ Apr 5 2013, 16:07) *
Всем спасибо большое за ответы, стал ковырять исходники и читать доки, более менее разобрался... Но уж очень мудреный загрузчик.
Про иконки я говорил, когда открываешь папку в линуксе(гуй гном), графическое отображение файлика.

Про GUI в нашей направленности лучше забыть.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.