Понятия не имел если честно - чего там намучено :) посмотрел - код инициализации для DDR есть, а вызова нет, соотвественно надо бинарь копировать чем-то после того как сделана иницализация, проще всего в убуте это сделать
на хост-системе:
cp getting-started-project-at91sam9m10-ekes-at91sam9m10-ddram.bin /tftpboot
на плате остановить загрузку u-boot любой клавишей и там в командной строке:
tftpboot 0x70000000 getting-started-project-at91sam9m10-ekes-at91sam9m10-ddram.bin
go 0x70000000
Если будете использовать бутсрап - у него надо будет править адрес загрузки куда будет загружаться бинарник, он там куда-то копирует в DDR u-boot, но точно не в начало DDR, у меня вот сюда
Copy 0x40000 bytes from 0x20000 to 0x73f00000
т.е. u-boot линукется на этот базовый адрес, вам это надо будет исправить на 0x70000000
вообще - вам бы это самому все надо разбираться, это же элементарные начала, если тут трудности то что дальше делать будете ?
В том то и дело что в ентих элементарных началах куча непоняток и возникла, пишете одно а смотрю там совсем другое я уже и в мейн вызовы прописывал и так и сяк но ничего не получается.
И к тому же получается что и sdram инициализировать тоже не нужно раз этот пример и без инициализации запускается. Из убута попробовать для интереса конечно можно но для моих целей убут не нужен, хотелось бы бутстрапом обойтись.
Вобщем рабочего примера ,бутстрап + стандалон я так и не нашол.
Был бы рабочий пример думаю вопросов бы намного стало меньше. А может и совсем отпали бы.
Щас попробую в бутстрапе поменять 0x73f00000 на 0x70000000 до этого пробовал в ddram.lds менять на 0x73f00000
Просто все обычно используют Linux, стандалоне ну какбы это сказать, для меня - пустая трата времени :) если вы собираетесь заниматься этим - не должно составить труда такие простые вещи разобрать, делать бутсрап специально для атмеловских примеров ? дык там одно число надо исправить - базовый адрес по которому линукется целевой проект и куда его загрузить.
NAND: Image: Copy 0x10000 bytes from 0x40000 to 0x70000000
NAND: Done to load image
Jump to 0x70000000
в 0х40000 лежит getting-started-project-at91sam9m10-ekes-at91sam9m10-ddram.bin.fixboot результат отрицательный
Что на счет линукса в свое время уже наигрался, мне нужен жосткий реал тайм, да можно взять готовую реал тайм да можно патч. но хочется самому понять что к чему, да и готовая реал тайм мне не нужна а если ее и брать то всеравно под свои нужды придется менять, поэтому и стэндалоне
проект который надо запустить должен лежать в нанд по адресу 0x20000
Собирать - ./build.sh, возможно вам надо будет исправить там
export PATH="/opt/CodeSourcery/Sourcery_G++_Lite/bin:$PATH"
на свой
вот лог getting-started...
пинами подрыгать ? для этого хватит 8 битника и дешевле на порядки
пинами подрыгать я бы пик взял ан нужна производительность)
за бутстрап спасибо завтра попробою)
попробовал, скачал, скомпилировал, не запускается у меня этот бутстрап, я раньше его тоже качал пробовал запустить не получалось, было бы здорово если бы скинули ваш рабочий бутстрап вместе с сорцами
может разделить числодробилку, ГУИ и реалтайм ногодрыг? вполне пойдет линух и ФПГА.
стандалоне удобно жытагом смотреть что и где в память легло и откуда выполняется.
примерно так и будет только в роли ГУИ как раз тоже реал тайм стандалоне т.к. ногодрыгами нужно будет управлять опять же жестким реал таймом а в роли ногодрыгов будут пики. Я вообще планировал SAM9G35 распоять и на нем конечный вариан делать но для обучения взял этот оем а на нем жытага нэт.
Незнаю с чем у меня проблемы но тот бутстрап 3.0 у меня уже давно не запускается почему я не понимаю, ваш что скинули тоже компилируется записываю в нанд и тишина. Может OEM разные у нас? У меня SK-9G45-OEM v1.E
Вот вариант с моим бутстрапом который с атмелевского сайта 3.5.1
в 0х40000 лежит убут пересобраный для адреса 0x70000000
NAND: ONFI not supported
NAND: Manufacturer ID: 0xec Chip ID: 0xda
NAND: Press the recovery button (BP4) to recovery
NAND: Image: Copy 0x80000 bytes from 0x40000 to 0x70000000
NAND: Done to load image
Jump to 0x70000000