Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:2
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:6
Форум » starterkit.ru » Отладочные платы » Hola(Duo)-PC
imx6 создание загружаемого образа
mantech
Добавлено 31.03.2014 15:46
0
Сообщение: 1
mantech
0

Пункты: 2042
Регистрация: 08.03.2014
Вот что удалось выведать

Цитата
8.6 Program image
This section describes the data structures that are required to be included in a user's program image.

mkimage убутовский можно использовать с любым бинарником - не обязательно убут. В дереве исходников собранного убута вам надо
1) mkimage, находится тут:
tools/mkimage

2) скрипт настройки DDR:
board/boundary/nitrogen6x/nitrogen6s.cfg.cfgtmp

3) бинарный файл, например program.bin, с известным адресом точки входа, например 0x10008000 (это в DDR со смещением 0x8000 от начала DDR)

создание образа для загрузки тогда будет выглядеть так

Цитата

$ cd path_to_u_boot_src
$ tools/mkimage -n board/boundary/nitrogen6x/nitrogen6s.cfg.cfgtmp -T imximage -e 0x10008000 -d program.bin image.imx


image.imx - готовый имидж который можно загружать из mfgtools через USB или записать на SD

sudo dd if=image.imx of=/dev/mmcblk0 bs=512 seek=2; sync

и загружаться с SD


Вопрос - этот файл, по созданию образа можно где-нить найти под винду?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 31.03.2014 16:00 Редактировалось 31.03.2014 16:16 Сообщение: 2
sasamy
4.71

Пункты: 83556
Регистрация: 14.08.2009
Цитата

где-нить найти под винду?


за деньги - все можно :) шутка - поищите, меня например винда не интересует наверно уже лет 5.
Спуститься к концу Подняться к началу
Персональная информация
mantech
Добавлено 31.03.2014 16:04 Сообщение: 3
mantech
0

Пункты: 2042
Регистрация: 08.03.2014
Цитата
Цитата

где-нить найти под винду?


за деньги - все можно :)

Да я знаю, простовсегда удивляет такое поведение производителя чипов - уж если вы сподобились на создание какого-либо специфического формата файла, который не поддерживается больше никем - дак сподобтесь и на конвертер в него из нормальных бинарников, и желательно не только под одну ось...Чтоб потребитель потом не ломал мозги и не пришлось сейчас писать этот конвертер самому...
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 31.03.2014 16:19 Редактировалось 31.03.2014 16:48 Сообщение: 4
sasamy
4.71

Пункты: 83556
Регистрация: 14.08.2009
Цитата

Чтоб потребитель потом не ломал мозги и не пришлось сейчас писать этот конвертер самому...


Вы посмотрите гуглы по поводу cygwin - это нмного проще чем переписывать, тем более если SDK потыкать все же соберетесь - пригодится

http://lists.denx.de/pipermail/u-boot/2012-September/134692.html
Спуститься к концу Подняться к началу
Персональная информация
mantech
Добавлено 01.04.2014 00:42 Сообщение: 5
mantech
0

Пункты: 2042
Регистрация: 08.03.2014
Цитата


Вы посмотрите гуглы по поводу cygwin - это нмного проще чем переписывать, тем более если SDK потыкать все же соберетесь - пригодится

http://lists.denx.de/pipermail/u-boot/2012-September/134692.html


Да все поятно, просто я линухой уже давно не занимался, да и когда это было, она меня интересовала только как серверная ось, и уж точно не как среда разработки, ибо для меня нет ничего удобнее иара под виндой

И для меня нет трудностей скомпилить примеры Platform_SDK
под иаром - трудность "первого шага" - правильно загрузить бинарь в проц и стартануть...

Вобщем походу конвертера под винду не существует, придется кодить...
Спуститься к концу Подняться к началу
Персональная информация
mantech
Добавлено 01.04.2014 12:43 Редактировалось 01.04.2014 12:51 Сообщение: 6
mantech
0

Пункты: 2042
Регистрация: 08.03.2014
Вопрос на засыпку - откуда взять данные для первичной инициализации? Посмотрел бинарь убута, там их на целых 780 байт! Идет запись в регистры EIM и еще малость куда-то.
Может их из исходников убута брать, буду признателен если ткнете пальцем

Все, нашел!
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 01.04.2014 13:13 Сообщение: 7
Jury093
4.5

Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Вопрос на засыпку - откуда взять данные для первичной инициализации?

такое впечатление, что вы не смотрели ни User Guide на АРМ, ни в SDK не заглядывали..

Цитата
под иаром - трудность "первого шага" - правильно загрузить бинарь в проц и стартануть...

дарю как идею - компилируете свое приложение в ИАРе для архитектуры IMX для адреса 0х10800000 (адрес надо уточнить в переменных юбута)
далее включаете плату, останавливаете юбут, по сетке грузите свой бинарь
Код
tftpboot 10800000 mymegabinarnik.bin

потом его запускаете
Код
go 10800000


это ваш первый шаг.. при этом вы отвязанны от линукса

не нравится по сетке - складываете бинарник на uSD и по той же траектории с отличиями:
Код
mmc rescan 0
fatload mmc 0 10800000 mymegabinarnik.bin
go 10800000

убедились, что ваш бинарник исполняется и работает в настроенной системе, далее реализуете плат "восход солнца вручную":
смотрите в том же юбуте содержимое регистров АРМа, далее сверяетесь в даташитом и прописываете их инит в своей софтине, т.о. когда-нить наступит момент, что юбут будет не нужен и все его функции будет выполнять ваш mymegabinarnik.bin
формально вам надо написать аналог юбута со своим функционалом..

далее второй шаг "к восходу" - отработать технологию загрузки.. но это уже другая история..
профит..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
mantech
Добавлено 01.04.2014 13:37 Редактировалось 02.04.2014 09:32 Сообщение: 8
mantech
0

Пункты: 2042
Регистрация: 08.03.2014
Цитата
далее второй шаг "к восходу" - отработать технологию загрузки.. н


Вот ее я и хочу отработать, чтобы пропустить первый шаг

Если в курсе, может проконсультируете про адресацию?

я вот про что - в заголовке имх-файла есть такие поля:
абсолютный адрес первой инструкции - 0x00008017
абсолютный адрес DCD - 0x2CF47F17
абсолютный адрес Boot Data - 0x20F47F17
абсолютный адрес IVT - 0x00400400 (так понял, что его менять не надо)

Можете объяснить, почему адрес первой инструкции 32791, хотя заголовок всего килобайт?

Все понятно - просто неправильный был порядок байт, чтоб их...
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » Hola(Duo)-PC