Пытаюсь заново прошить Bootstrap. Содержимое dataflash удалил через SAM-BA опцию "Erase All". Раньше был заводской Bootstrap, потом я его менял, и он работал. Потом я переставил систему и заново собрал компилятор, для проверки работоспособности компилятора решил собрать заново Bootstrap и заново его зашить в dataflash. В итоге, я не могу ничего зашить в DF (ну или я думаю что ничего не могу зашить). Скрипты для SAM-BA брал с диска, SAM-BA версии 2.8, ее взял с at91.com.
Плата в системе замечательно видится
Нужное устройство в системе появляется.
При попытке запустить SAM-BA выводиться такое сообщение
Далее в SAM-BA выбираю пункт инициализации DF и затем записи загрузочной области, вот что пишется лог
Т.е. судя по логу все нормально, где проблема и почему оно не работает, я не знаю. Но после аппаратного сброса (или сброса по питанию) опять загружается sam-ba и в терминале выводиться строка RomBOOT с запросом на ввод.
Может кто-то сталкивался с подобной проблемой или знает пути ее решения?
Судя по всему речь идет о системе linux - была абсолютно похожая ситуация, не смог записать хотя примерно год назад все работало :) разбираться не стал - судя по всему проблема на свежих ядрах, записал под windows. Тут кто-то утверждал что у него все работает и на свежих ядрах, так что это все только мои предположения, возможно связано с конкретным чипсетом, если что у меня такой
На 99,9 % дело в свежих ядрах для интеловских чипсетов :) не припомню чтобы я что-то менял для tcl/tk, а там собственно больше ничего нет - загружается предкомпилированные бинарники на целевую платформу которые все и выполняет а они 100% не изменялись.
На http://www.at91.com драйвер usbserial ковыряют что похоже на правильный путь, я например на новых ядрах наблюдал проблемы в своем переделанном bootstrap(mbs) при загрузке бинарников по x-modem, чего раньше никогда не было (у меня компорт на usb-serial pl2303).
Попробовал на работе под окнами это сделать, результат тот-же, так что видимо у меня все-таки немного другая ситуация.
Я помню в первый раз когда я хотел прошить загрузчик, то у меня тоже долго что-то не получалось, а потом как-то внезапно все вдруг стало получаться.
Спасибо за быструю реакцию, буду дальше что-то думать, может на самом деле мне нужно просто внимательнее прочитать документацию))
пардон что влезаю в тему :)
имеет смысл, при наличие осциллографа или хотя бы тестера или светодиода+резистор сделать следующее
найти в сорцах Bootstrap место где происходит запуск Uboot и там вывести "1" на любой свободный пин ну и вечный цикл
- если единичка не видна - искать ошибку на стадии Bootstrap
- если единичка видна, то где-то неправильно прописаны параметры вызова Uboot (адрес, размер etc)
я не могу загрузить сам Bootstrap в dataflash, т.е. я его пишу, SAM-BA говорит что все хорошо, но при загрузке, в консоль вываливается надпись RomBOOT. Т.е. если бы был "плохой" Bootstrap. то оно бы все-равно хоть как-то но грузилось, т.к. верификация проходит по соержимому первых 7 (вроде) слов памяти, причем 6-е должно быть размером прошивки. Я смотрел hex редактором, значения там нормальные. Размер прошивки по идее должен определятся скриптом tcl. Так же я пробовал ручками туда требуемый адрес записывать. Все-равно все плохо...
но идея в принципе хорошая, нужно будет осциллографом потыцать, посмотреть идет ли в dataflash вообще запись...