Tarbal 4 22 декабря, 2015 Опубликовано 22 декабря, 2015 · Жалоба UPD: Решил проблему компиляцией с сохранением переменных в NAND. Поднял tftp, закинул на сервер юбут. Затем run update_nand_full. Куда двигаться дальше? Device Tree? собирать линукс? Device Tree это составная часть сборки ядра. Надо поместить адро туда, откуда юбут берет ядро и загружает его, а еще надо создать партишн в оставшейся части диска, отформатировать ее и разместить там "корневую файлофую систему", которую ядро смонтирыет в корневую директорию. Можно собрать ядро и корневую файловую систему, а можно и взать где-нибудь готовые. Неужели никто еще не собирал подобную систему? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_3m 4 22 декабря, 2015 Опубликовано 22 декабря, 2015 · Жалоба Куда двигаться дальше? Device Tree? собирать линукс? Ваша версия uboot поддерживает device tree ? Прежде чем собирать ядро выясните: * наличие скомпилированного ядра линукс от производителя * конфиг под вашу плату от производителя * исходники ядра под вашу плату * зачем вам пересобирать ядро с неправильным конфигом ядро с 90% вероятностью не заработает Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vgovseychuk 0 23 декабря, 2015 Опубликовано 23 декабря, 2015 (изменено) · Жалоба Прежде чем собирать ядро выясните: * наличие скомпилированного ядра линукс от производителя * конфиг под вашу плату от производителя * исходники ядра под вашу плату * зачем вам пересобирать ядро Хочу сделать свою плату + Образовательные цели. Я как контроллерщик привык разбираться в работе систем почти до "бегающих в полупроводниках электронов". Конечно, писать все с нуля глупо, но подробно разобраться в механизмах встраиваемых систем на линуксе считаю для себя нужным. Адресация по шинам, мультиплексирование и подтяжка выводов, драйвера устройств, вот это всё. Device Tree это составная часть сборки ядра. Надо поместить адро туда, откуда юбут берет ядро и загружает его, а еще надо создать партишн в оставшейся части диска, отформатировать ее и разместить там "корневую файлофую систему", которую ядро смонтирыет в корневую директорию. В юбуте есть переменная окружения mtdparts=gpmi-nand:1664k(bootloader)ro,256k(environment),128k(fdt),5m(kernel),-(rootfs) Это оно? Как я понимаю, скомпилированный dtb надо аналогичным юбуту способом залить в nand на свое место? Изменено 23 декабря, 2015 пользователем vgovseychuk Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tarbal 4 23 декабря, 2015 Опубликовано 23 декабря, 2015 · Жалоба Я тоже начинал как контроллерщик :) А еще раньше как электронщик. Если и не оно то отношение имеет. Не понятно еще откуда берутся адреса. Если у вас юбут бежит, то остальное вы можете залить через него. Это как альтернатива. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FluktuacyaVaccuma 0 23 декабря, 2015 Опубликовано 23 декабря, 2015 · Жалоба Я тоже начинал как контроллерщик :) А еще раньше как электронщик. А кто Вы сейчас? Риелтор? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tarbal 4 23 декабря, 2015 Опубликовано 23 декабря, 2015 · Жалоба А кто Вы сейчас? Риелтор? Счетчик контроллеров на плате. Больше 99 поставить не могу. Фантазии не хватает. Кстати перечитал первый постинг топика. Я использовал LTIB. С него Фрискейл уже соскочил, но процессор не новый и может стоит попробовать? Он построит вам бутлоадер, ядро пропатчит и построит. Построит файловую систему. Он сам скачает правильные исходники и оставит на вашей рабочей машине, сконфигурирует кросскомпилятор. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vgovseychuk 0 24 декабря, 2015 Опубликовано 24 декабря, 2015 · Жалоба С бутлоадером более-менее разобрался, даже линукс завелся. Но у меня проблема с записью на NAND. В коде бутлоадера есть такая команда: "update_nand_full=" /* Update FCB, DBBT and FW */ \ "if tftp ${update_nand_full_filename} ; then " \ "run update_nand_get_fcb_size ; " \ "nand scrub -y 0x0 ${filesize} ; " \ "nand write.raw ${loadaddr} 0x0 ${fcb_sz} ; " \ "setexpr update_off ${loadaddr} + ${update_nand_fcb} ; " \ "setexpr update_sz ${filesize} - ${update_nand_fcb} ; " \ "nand write ${update_off} ${update_nand_fcb} ${update_sz} ; " \ "fi\0" Она сохраняет бутлоадер, но походу затирает партишн. И наоборот, когда записываю в nand по партишону rootfs, kernel и fdt, отказывается запускаться бутлоадер. Партишн такой: "mtdparts=mtdparts=gpmi-nand:" \ "3m(bootloader)ro," \ "256k(environment)," \ "128k(fdt)," \ "5m(kernel)," \ "-(rootfs)\0" \ Попытался переписать команду обновления и сохранения в память: "update_nand_bootandenv=" /* Update bootloader and environment VOVS*/ \ "if tftp ${update_nand_firmware_filename} ; then " \ "nand erase.part ${bootloader}; " \ "nand erase.part ${environment}; " \ "nand write ${loadaddr} ${bootloader} ${filesize} ; " \ "saveenv\0" \ Но она не заработала. Кто-нибудь сталкивался с этим? Кстати, странно, что нет команды write.part, хотя erase.part и scrub.part есть :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vgovseychuk 0 24 декабря, 2015 Опубликовано 24 декабря, 2015 (изменено) · Жалоба И в чем отличия u-boot.sb от u-boot.nand? Если я делаю run update_nand_full, то заливается u-boot.nand, который делает утилита mxsboot из u-boot.sb. Однако, его размер 3Мб, и при записи в NAND он затирает нужные разделы. Если я делаю run update_nand_firmware, то заливается u-boot.sb размером 532кб, но убут не стартует. UPD: Переразметил флешку с запасом. Все работает. Всем Спасибо. Изменено 25 декабря, 2015 пользователем vgovseychuk Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MIKS 0 25 декабря, 2015 Опубликовано 25 декабря, 2015 · Жалоба По работе с NAND мне помогли доки во вложении. MTD_dev.tar Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MIKS 0 28 декабря, 2015 Опубликовано 28 декабря, 2015 · Жалоба Получилось свежий uboot на 287 запустить? Сколько размер итогового файла? Если не сложно конфигом поделитесь? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться