|
Linux с голого железа, Hardware -> Bootlader -> Linux |
|
|
|
Dec 16 2015, 15:50
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
Добрый день!
Я новичок во встраиваемых системах с Linux, до этого работал с безосьными контроллерами. Мне в руки попала плата EV-iMX287-NANО. Стоит задача создать новую плату со своей распиновкой на базе камня i.MX287. Помогите, пожалуйста, разобраться с процессом создания устройства. Как я понял, при уже готовой плате все начинается с написания своего загрузчика. Везде рекомендуют U-Boot. Производители платы также EV-iMX287-NANО используют его. Но у них весь проект с бутлоадером уже готов и для его сборки достаточно запустить bash скрипт. На выходе получаем файл .sb , который заливаем на плату. Все грузится. Можно, конечно, воспользоваться методом научного тыка, найти файлы, в которых прописана распиновка и источник загрузки, переправить их и рано или поздно это заработает. Однако, такой подход не очень устраивает. Во-первых, не до конца понятна структура проекта бутлоадера, нет навигации по библиотекам, header-файлам и т.д. Во-вторых, непонятно, какая функция что делает(это можно найти каким-нибуть грепом, но жутко неудобно).
Сами фрискейлы пишут, что для сборки и навигации по проекту можно использовать настроенный специальным образом Eclipse. Но он с первого раза не заработал как надо, поэтому разбираюсь дальше. Плюс к тому в доках упоминается некий LTIB, ELF, консольная сборка перемежается с ide-шной. В общем, я порядком запутался.
Как резюме меня интересуют следующие вопросы: - Есть ли у кого-нибудь опыт создания своих плат на линуксе? - Есть ли у вас пояснения к процессу разработки данных устройств? - Какой загрузчик вы использовали? - Пользовались ли вы при этом IDE?
Буду рад любой информации.
|
|
|
|
|
 |
Ответов
(15 - 29)
|
Dec 18 2015, 12:47
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
Новая проблема. Как залить .sb файл из-под линукса?
|
|
|
|
|
Dec 18 2015, 13:43
|
Знающий
   
Группа: Свой
Сообщений: 526
Регистрация: 5-08-05
Пользователь №: 7 390

|
Цитата(vgovseychuk @ Dec 18 2015, 15:47)  Новая проблема. Как залить .sb файл из-под линукса? использовать kobs-ng? вообще, здесь http://otladka.com.ua/wiki/doku.php?id=ev-imx287-micro много про ваш процессор, при чем на русском.
|
|
|
|
|
Dec 18 2015, 14:11
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
Цитата(Tarbal @ Dec 18 2015, 16:53)  В качестве системного диска у вас карточка или флеш на плате? NAND флешка на плате, соответственно записать образ на SD - не выход Цитата(psL @ Dec 18 2015, 16:43)  вообще, здесь http://otladka.com.ua/wiki/doku.php?id=ev-imx287-micro много про ваш процессор, при чем на русском. Эти ребята собирают Ю-бут на виртуалке, а потом заливают с помощью MFG Tools с винды.
Сообщение отредактировал vgovseychuk - Dec 18 2015, 14:33
|
|
|
|
|
Dec 20 2015, 06:53
|
Знающий
   
Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960

|
Цитата(vgovseychuk @ Dec 18 2015, 17:11)  Эти ребята собирают Ю-бут на виртуалке, а потом заливают с помощью MFG Tools с винды. насколько мне известно MFG Tools под линукс не существует. Ищите винду. Или делайте загрузочную сд карту, запускайте линукс с сд и из него переливайте в нанд.
|
|
|
|
|
Dec 21 2015, 06:59
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
Цитата(_3m @ Dec 20 2015, 09:53)  насколько мне известно MFG Tools под линукс не существует. Ищите винду. Или делайте загрузочную сд карту, запускайте линукс с сд и из него переливайте в нанд. Нашел программу. http://git.denx.de/?p=mxsldr.git;a=summary Заработало.
|
|
|
|
|
Dec 21 2015, 10:35
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
Как теперь заставить u-boot сохраняться в NAND?
|
|
|
|
|
Dec 21 2015, 10:35
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
U-boot висит в оперативке. Видимо, где-то в коде есть настройка для сохранения в NAND. Это так или я не туда копаю?
Сообщение отредактировал vgovseychuk - Dec 21 2015, 10:48
|
|
|
|
|
Dec 21 2015, 12:35
|
Знающий
   
Группа: Свой
Сообщений: 526
Регистрация: 5-08-05
Пользователь №: 7 390

|
Цитата(vgovseychuk @ Dec 21 2015, 13:35)  U-boot висит в оперативке. Видимо, где-то в коде есть настройка для сохранения в NAND. Это так или я не туда копаю? u-boot нужно собрать с поддержкой nand, справка по командам u-boot для nand: help nand запись командой: nand write [addr_from] [addr_to] [length]
|
|
|
|
|
Dec 21 2015, 13:05
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
Цитата(psL @ Dec 21 2015, 15:35)  u-boot нужно собрать с поддержкой nand, справка по командам u-boot для nand: help nand запись командой: nand write [addr_from] [addr_to] [length] А как узнать эти адреса и размер?
|
|
|
|
|
Dec 21 2015, 14:20
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
Цитата(Tarbal @ Dec 21 2015, 17:10)  Вы с СД карточки можете загрузиться? Сделайте две. Одну через USB подключите после загрузки и с нее образ перепишите в NAND. К сожалению, не могу. только usb и ethernet
|
|
|
|
|
Dec 21 2015, 14:43
|
Профессионал
    
Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439

|
Цитата(vgovseychuk @ Dec 21 2015, 17:20)  К сожалению, не могу. только usb и ethernet Пощите на форумах по подобной системе адреса. Где-то в природе есть evaluation board на которой бежит Линукс? Желательно иметь под рукой для обкатки гипотез. Найдите как грузить систему через usb. Если не найдете то только через специальные средства вроде той апликации, что вы упоминали или JTAG. Способ, который а знаю через ethernet требует наличие бутлоадера. Кстати в некоторых системах бутлоадер не пишется на диск как бинарник, а как файл в директорию. В частности Beagle Board TI точно не помню название процессора, но очень близок к АМ3715 Диск разбивается на две партишн. Первая в несколько десятков мегабайт форматируется под FAT32, а вторая -- оставшееся пространство EXT3, EXT4. В первой находятся файлы начального загрузчика, бутлоадера, командной строки ядра и ядра. Имена изменять нельзя. Процессор при старте находит начальный загрузчик, а дальше по цепочке. В системе imx53 бутлоадер находится на диске со смещением 2 блока (512 байт), ядро 2048 блоков, а конфигурация бутлоадера со смещением 0х640 блоков смещение для ядра и конфигурации где-то в бутлоадере прописано.
|
|
|
|
|
Dec 22 2015, 10:34
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955

|
UPD:
Решил проблему компиляцией с сохранением переменных в NAND. Поднял tftp, закинул на сервер юбут. Затем run update_nand_full.
Куда двигаться дальше? Device Tree? собирать линукс?
Сообщение отредактировал vgovseychuk - Dec 22 2015, 11:55
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|