Kolya87 0 19 августа, 2014 Опубликовано 19 августа, 2014 · Жалоба Я новичок во встраиваемых системах. Имею отладочный комплект EV-iMX287-Micro. На нем по умолчанию установлен Linux. Кто что посоветует, с чего начать. Для начала просто Hello world, помигать светодиодом. Соответственно как, с помощью каких средств настраивать аппаратную часть платы? Приложения предполагаю писать на Qt. По поводу виртуальной машины. С сайта http://otladka.com.ua/wiki/doku.php образ виртуальной машины скачать не получается, выдает ошибку сети. Но как я понимаю, можно создать свою виртуальную машину, поставить на нее действующую версию Ubuntu или Debian, поставить необходимые средства разработки приложений и отлаживать уже на ней. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sadmix 0 20 августа, 2014 Опубликовано 20 августа, 2014 (изменено) · Жалоба Для начала все же нужно скачать образ виртуальной машины с http://otladka.com.ua - это на порядок ускорит процесс познания (у меня, например, все отлично скачивается). Скачать, развернуть, а дальше читать http://otladka.com.ua/wiki/doku.php?id=ev-imx287-micro и параллельно пробовать. В этом описании для сборки ядра, загрузчика и файловой системы используется система сборки LTIB, кажется Qt там входит в состав сборки. Если же нет, то ядро можно собирать LTIB'ом, а файловую систему - системой сборки Buildroot - там Qt точно входит в состав. Можно Qt собрать и отдельно, но это заметно сложнее. У freescale неплохой форум Изменено 20 августа, 2014 пользователем samike Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kolya87 0 21 августа, 2014 Опубликовано 21 августа, 2014 · Жалоба Сейчас читаю сайт starterkit-org раздел wiki. На данный момент застрял на сборке кросскомпилятора с помощью crosstool-ng. Дошел до ct-ng build. Выдает ошибки: [iNFO ] Performing some trivial sanity checks [iNFO ] Build started 20140821.000748 [iNFO ] Building environment variables [ERROR] Missing: 'x86_64-unknown-linux-gnu-gcj' or 'x86_64-unknown-linux-gnu-gcj' or 'gcj' : either needed! [ERROR] [ERROR] >> [ERROR] >> Build failed in step '(top-level)' [ERROR] >> [ERROR] >> Error happened in: CT_Abort[scripts/functions@331] [ERROR] >> called from: CT_TestAndAbort[scripts/functions@351] [ERROR] >> called from: main[scripts/crosstool-NG.sh@452] [ERROR] >> [ERROR] >> For more info on this error, look at the file: 'build.log' [ERROR] >> There is a list of known issues, some with workarounds, in: [ERROR] >> '/usr/local/share/doc/crosstool-ng/ct-ng.1.19.0/B - Known issues.txt' [ERROR] [ERROR] (elapsed: 0:00.55) [00:01] / make: *** [build] Error 1 Пока непонятно что делать. Вообще возникает вопрос, нужно ли собирать свой кросскомпилятор, или LTIB и BUILDROOT вставляют какой-то стандартный? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sadmix 0 21 августа, 2014 Опубликовано 21 августа, 2014 · Жалоба Вообще возникает вопрос, нужно ли собирать свой кросскомпилятор, или LTIB и BUILDROOT вставляют какой-то стандартный? В подавляющем большинстве случаев собирать свой кросскомпилятор не нужно, в LTIB и BUILDROOT уже имеются компиляторы. Вот полная документация по Linux для imx28 от Freescale: i.MX28 Linux Documentation Bundle, вот еще ссылка. Требуется регистрация на сайте freescale. Что там есть: MX28_EVK_Linux_Reference_Manual.pdf MX28_EVK_Linux_Release_Notes.pdf MX28_EVK_Linux_User_Guide.pdf Setting_Up_LTIB_Host_on_Ubuntu_9_04.pdf uboot_mx28.pdf imx28-kernel-warnings.txt Т.е. все, что нужно для разработки, рекомендую. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kolya87 0 21 августа, 2014 Опубликовано 21 августа, 2014 · Жалоба Спасибо за ссылки. Буду изучать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alx2 0 26 августа, 2014 Опубликовано 26 августа, 2014 · Жалоба [ERROR] Missing: 'x86_64-unknown-linux-gnu-gcj' or 'x86_64-unknown-linux-gnu-gcj' or 'gcj' : either needed! Пока непонятно что делать. Очевидным решением мне кажется установить gcj... Или тут кроется какой-то подвох? :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kolya87 0 27 августа, 2014 Опубликовано 27 августа, 2014 · Жалоба Поставил LTIB, поставляемый в пакете BSP от Freescale, на Debian. Собрал Linux kernel, rootfs. Пробую загрузить в NAND flash через MFGTool. Не получается, выдает ошибку Updater Error 0xffffffea (-22) - Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sadmix 0 27 августа, 2014 Опубликовано 27 августа, 2014 · Жалоба Пробую загрузить в NAND flash через MFGTool. Не получается, выдает ошибку Updater Error 0xffffffea (-22) - А на Вашей плате u-boot есть (или все стерто)? Можно все записать в NAND из под u-boot. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kolya87 0 28 августа, 2014 Опубликовано 28 августа, 2014 · Жалоба Пока с платы ничего не стирал, т.е. в плате зашита изначально OS, которая еще была при покупке. По поводу зашитого u-boot ответить затрудняюсь. Сейчас буду пробовать др. способы записи образов. Похоже никакого u-boot там не зашито. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sadmix 0 28 августа, 2014 Опубликовано 28 августа, 2014 · Жалоба Похоже никакого u-boot там не зашито. U-Boot - это первоначальный загрузчик, он инициализирует плату, загружает ядро и передает ему управление. U-Boot должен быть. Если не ошибаюсь, ваша плата имеет возможность загрузки с SD карты. Попробуйте пока поиграться с SD карточкой. Почитайте wiki, раздел Создание загрузочной SD карты Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kolya87 0 2 сентября, 2014 Опубликовано 2 сентября, 2014 · Жалоба Создал загрузочную SD карту. Записал на нее ядро и rootfs. Загрузка системы происходит успешно. Пробовал загрузку по tftp. Загружаю u-boot 2013.04 с SD или по usb, и качаю ядро с tftp - сервера (файлы uImage и imx28-evk.dtb) с помощью программы Tftpd32. Затем командой bootm загружаю их. Как только начинает загружаться ядро ( Uncompressing Linux... done, booting the kernel), проц перезагружается. К tftp-серверу запущенному на linux почему то не конектится. Запускал на готовой виртуальной машине, на которой сказано что tftp-сервер установлен. Пока не разбирался в данном вопросе. Пробую опять загрузить в Nand flash через MfgTool. Указанную выше ошибку преодолел заменой файлов update.sb update_ivt.sb, собранных ltib (при запуске команды ./ltib --selectype и выборе в меню «mfg firmware profile» ). Процесс застрял на следующем во время загрузки ядра: 1 - Panel A Start processing Singlechip NAND <LIST/>. 1 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware.". 1 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware." SUCCESS code=0. 1 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware.". 1 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware." SUCCESS code=0. 1 - Panel A Start <CMD/> type="find" body="Updater" file="" timeout="180" onError="" text="". 1 - Panel A Finished <CMD/> type="find" body="Updater" file="" timeout="180" onError="" text="" SUCCESS code=0. 1 - Panel A Start <CMD/> type="push" body="mknod class/mtd,mtd0,/dev/mtd0" file="" timeout="10" onError="" text="". Panel A: Operation stopped by user. ucl.xml файл пока не менял. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sadmix 0 2 сентября, 2014 Опубликовано 2 сентября, 2014 · Жалоба Вот хорошая статья про tftp-сервер на linux: Setting Up a TFTP Server Если я правильно понял, задача в том, чтобы залить загрузчик в SPI Flash, а ядро и rootfs в NAND и вы пытаетесь сделать это с помощью MfgTool? При этом, ядро записанное на SD-карту, грузится нормально, а то же самое ядро, загружаемое ручками из консоли, перезагружает проц? Попробуйте залить в SPI Flash с помощью MfgTool загрузчик (в wiki это пункт 4: SPI-Write uboot - запишет в микросхему SPI Flash только загрузчик imx28_ivt_uboot.sb (том /dev/mtd2)). А уже потом, из под загрузчика, с помощью команд tftpboot, nand erase и nand write, запишите в NAND ядро и rootfs. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kolya87 0 5 сентября, 2014 Опубликовано 5 сентября, 2014 · Жалоба Наконецто удалось зашить образы в NAND. Сделал следующим образом: загрузил ядро Linux с SD, примонтировал flash-ку с необходимыми образами ядра и rootfs, и дальше выполнил последовательность действий, указанных вот по этой ссылке https://community.freescale.com/thread/276571. Т.к. под linux ни разу не прогал, то сейчас стоит вопрос, как писать программы? Какую IDE использовать. В Windows часто приходилось пользоваться Eclipse и Qt. Под linux тоже они есть, либо же лучше использовать обычный текстовый редактор и потом просто компилить проект. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sadmix 0 5 сентября, 2014 Опубликовано 5 сентября, 2014 · Жалоба Я использую Geany - простое, но очень функциональное мини-IDE. Но я не применяю в своих приложениях графику. Вы же вроде планировали использовать Qt, тогда Qt Creator и т.п.... Путь примерно такой: - собираете Qt под свою железку (информации в сети - море, рекомендую тот же community.freescale.com), - заливаете собранные библиотеки на железку, запускаете демки - настраиваете Qt Creator для сборки приложений под железку (это не делал, опыта нет). На мой взгляд, Qt проще всего собрать, используя Buildroot, собирал так qt 4.8.5, но в последних релизах Buildroot есть Qt 5.x.x (погуглите Buildroot + Qt5). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kolya87 0 9 сентября, 2014 Опубликовано 9 сентября, 2014 · Жалоба Возникла проблема. Во время сборки rootfs с помощью LTIB указываю toolchain gcc-4.4.4-.... Но после записи образа на плату и при попытки компиляции какого нибудь исходного файла выдает ошибку gcc: not found Пробовал задать во время сборки rootfs др. toolchain, от freescale (arm-fsl-linux-gnueabi-gcc). Но его тоже почему то нету в rootfs. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться