Jump to content
    

Imx6 без линухи

Приветствую.

Есть такое дело - нужно поднять какой-нить хотябы очень простой пример под данный проц на ИАРе,

типа "hello world". Описание проца есть, отладочная плата тоже.

 

Проблема вот в чем - как залить и запустить созданный ИАРом бинарь в проц?

 

Есть варианты - 1) mfg_tools - проблема - она работает только с хитрыми бинарями *.imx

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

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

 

2) есть прога cfimager которая создает сд-карту с этим бинарем - проблема - в ее описании не сказано, что она может работать с imx6, только до 5й версии (может это и неважно, но хотелось бы точно знать)

 

И третье - просьба если нечего сказать по теме, не тыкать, что дурак потому что не прграммишь на линухе :laughing:

 

PS. Если то, что я прошу в принципе невозможно - то придется продать плату кому-нить другому и оставаться на х86, но хотелось бы лучшее B)

Edited by mantech

Share this post


Link to post
Share on other sites

Приветствую.

Есть такое дело - нужно поднять какой-нить хотябы очень простой пример под данный проц на ИАРе,

типа "hello world".

IAR - не подскажу ничего. Насколько я помню из своего опыта, общая методика такова: компилируем с помощью CodeSourcery из командной строки (последний запускаем на виртуальной машине, я использовал VmWare из-под Windows XP, а в нем разворачивал Ubuntu), полученный файл заливаем по TFTP на плату из U-Boot (Linux не грузим, только U-Boot) и потом запускаем ...

 

P.S. Без U-Boot сложнее. Есть опыт решения вашей задачи для платы на AM1707. Пришлось глубоко изучить документацию на сам МП и на плату, после чего написать в IAR соотв. программу (Keil этот МП не поддерживал), откомпилировать ее, загрузить по JTAG в ОЗУ платы и оттуда запускать ...

Share this post


Link to post
Share on other sites

IAR - не подскажу ничего. Насколько я помню из своего опыта, общая методика такова: компилируем с помощью CodeSourcery из командной строки (последний запускаем на виртуальной машине, я использовал VmWare из-под Windows XP, а в нем разворачивал Ubuntu), полученный файл заливаем по TFTP на плату из U-Boot (Linux не грузим, только U-Boot) и потом запускаем ...

 

Ясно, но очень неудобно, что-нить бы под виндой хотя бы :rolleyes:

Share this post


Link to post
Share on other sites

Насколько помню, в документации описан протокол общения загрузчика, вшитого в ПЗУ i.MX6, с внешним миром в лице ПК. Соответственно, можно внимательно его изучить и написать свою программу-загружалку, которая будет пользоваться услугами уже имеющегося в i.MX6 загрузчика (не U-Boot, который не имеет отношения к процессору, а является сторонней программой, расположенной во внешней памяти -- соответственно, его может попросту не быть).

Share this post


Link to post
Share on other sites

...нужно поднять какой-нить хотябы очень простой пример под данный проц на ИАРе,...как залить и запустить созданный ИАРом бинарь в проц?...

 

 

 

У Вас какая-то каша в голове. Или что то не договариваете.

1) определяете интерфейс программирования камня(что такой есть и что он реально вам подходит. т.е. в данном случае будет программировать камень)

например JTAG

2) находите(читай покупаете) конкретный программатор под данный камень. У данного программатора должны быть

а) примеры б) описалово в) _стандартный_ входной интерфейс заливаемого файла. например hex

3) находите компилятор позволяющий компилировать с необходимого языка(читай которым владеете). Например IAR

4) покупаете демо борду с данным камнем, если хотите быстро и практически без-гиморно. на каком нить ебэе.

5) компиляете свой пример. скармливаете загрузчику. получаете профит.

 

при чём тут люниксы, оси, левые загрузчики и форматы - не вкуриваю....наверное Вы ведаете тайными знаниями - хз...

 

ЗЫ

все примеры даны гипотетически. Вам самому надо это проверить. Но что то мне подсказывает, что я не совсем далёк от истины в конкретном случае.

 

Share this post


Link to post
Share on other sites

кроме тех случаев когда процы плохо документированы ибо изначально сделаны для работы под юниксом или что-то типа того.

 

К примеру попробуйте по вашему пути запустить 86 проц... демо бор в вашем компьютере стоит:)...

Share this post


Link to post
Share on other sites

К примеру попробуйте по вашему пути запустить 86 проц... демо бор в вашем компьютере стоит:)...

Можно, например, опереться на BIOS, вызывая функции BIOS через int13h, int16h и т.п. Запустить хоть как-то "голую" мамку будет, ИМХО, архисложно, ведь для этого потребуется писать свой BIOS, пусть и урезанный.

А при работе с указанной ТС платой можно опираться на загрузчик (почти наверняка это U-Boot) ...

Share this post


Link to post
Share on other sites

У Вас какая-то каша в голове. Или что то не договариваете.

 

 

Что недоговариваю?

Плата - Hola-PC от стартеркита - разработчики не предусмотрели jtag- видать все заточено только под линуху.

 

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

 

mfg_tolls умеет работать только с файлами *.imx, которые иар делать не умеет, т.е. нужно писать конвертер самому, а это жесть, если не сказать более...

 

Что еще тут можно сказать?

Share this post


Link to post
Share on other sites

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

Есть посадочное место, но не впаян разъем, или вообще нет даже контактных площадок (или дырочек) на плате ? Во втором случае (совершенно невероятном) грузите ваши программки по TFTP из U-Boot ...

 

Share this post


Link to post
Share on other sites

или вообще нет даже контактных площадок

 

Именно - к шарам нет дорожек.

 

Но это не самое страшное - они сделали удобную прогу mfg_tools, которая может даже автоматом заливать бинарь при простом подключении по усб, но формат специальный, писал выше, вот в чем проблема, и пендостанский мастадонт мог бы уж сподвигнуться на конвертер для нескольких осей...

 

Во втором случае (совершенно невероятном) грузите ваши программки по TFTP из U-Boot ...

 

Это опять из вопроса про "измерение внутриглазного давления через задний проход"...

 

Хотелось бы загружать чистый бинарь, без "посредников".

Share this post


Link to post
Share on other sites

http://www.starterkit.ru/html/doc/Hola-PC_V1A.pdf

 

по схеме DD4, весь JTAG не подключен, кроме двух заземленных контактов.

Эта плата изначально сделана под юникс, и под загрузчик, как PC мозерборд под биос, не надо идти против природы....

 

Хотелось бы загружать чистый бинарь, без "посредников".

тогда вы выбрали неправильную плату....

 

кстати тут недавно кто-то мучил IMX6, и тоже хотел работать без ОС, если это не вы, поищите тема не далека....

Share this post


Link to post
Share on other sites

http://www.starterkit.ru/html/doc/Hola-PC_V1A.pdf

 

по схеме DD4, весь JTAG не подключен, кроме двух заземленных контактов.

Эта плата изначально сделана под юникс, и под загрузчик, как PC мозерборд под биос, не надо идти против природы....

 

 

кстати тут недавно кто-то мучил IMX6, и тоже хотел работать без ОС, если это не вы, поищите тема не далека....

 

Да, это я и был :biggrin:

А причем тут природа - сделать нормальный и безглючный гуй под линуху - считаете это очень просто??

 

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

Share this post


Link to post
Share on other sites

нужно просто сделать конвертер в тот формат, который понимает встроенный загрузчик...

А задать соотв. вопрос о конвертере техподдержке фирмы, выпустившей плату, вы не пробовали ?

 

Share this post


Link to post
Share on other sites

А задать соотв. вопрос о конвертере техподдержке фирмы, выпустившей плату, вы не пробовали ?

 

Можно конечно задать там вопрос и подождать недельку-другую, что они скажут то-же самое, типа пишите под линуху или сделайте кучу всяких виртуалок, запускацте на них линуху с конвертером, убутами и пр...

я за это время сам его сделаю, ибо так будет проще и быстрее...

Share this post


Link to post
Share on other sites

Но это не самое страшное - они сделали удобную прогу mfg_tools, которая может даже автоматом заливать бинарь при простом подключении по усб, но формат специальный, писал выше, вот в чем проблема, и пендостанский мастадонт мог бы уж сподвигнуться на конвертер для нескольких осей...

 

Не совсем так...

MfgTools никак не привязан к какой либо ОС

"пендостанский мастадонт" сделал универсальную и очень гибкую систему для программирования

 

Это своеобразный инструмент-"транспорт" из персоналки в процессор

Нужно самостоятельно написать свой профайл для этой утилиты

 

Он в себе будет включать XML скрипт с прописанными задачами и firmware.

Изначально утилита забрасывает firmware в память процессора

После этого firmware несет полную ответственность каким образом и на какой носитель будет выполняться программирование

 

Для программирования Linux, фрискейловцы создали firmware на базе того же Linux

Для программирования WinCE соответственно создали firmware на базе WinCE Core

Ну а Вам придется писать собственный firmware который подхватит интерфейс MfgTools

 

Перечитайте документацию в "MfgTools\Documrntation"

Думаю там найдете все необходимое

 

А для безосевого программирования под Windows пробуйте Yagarto + Eclipse

 

Если будет прогресс - дайте знать

Очень интерестно

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...