|
Cirrus + Flash + download + redboot, грабли |
|
|
|
Apr 12 2008, 07:39
|
Участник

Группа: Участник
Сообщений: 40
Регистрация: 23-03-08
Пользователь №: 36 156

|
Решили замутить тут систему на Cirrus (Arm9, 9301) и Flash(Samsung). Делюсь опытом. Пройденные грабли: 1) Утилита download (версия 2007года) грузит по com порту 2048 байт стартового загрузчика в ethernet буфер arma и передает ему управление. Этот стартовый загрузчик грузит оставшуюся часть в ОЗУ. Следовательно, если дошли до этого этапа - с ОЗУ все тип-топ. После загрузки передает управление загруженной части в ОЗУ. Она проверяет наличие флэш. Появляется сообщение Program the nor FLASH. В нашем случае на этом жизнь останавливалась. Анализ исходников download выявяил следующее: какой-то циррусовский ламерюга в этом месте передергивает com порт на скорость 115200. Поэтому лезем в main.c и в main() и в самом начале функции коментим функцию SetBaud() и заодно enable_debugtimer(). 2) Но жизнь все не налаживалась... Анализ исходников показал, что download заточена только под intel и AMD флэшки, никакого самсунга там не преполагалось. Так как голос разума подсказывает, что наша флэшка совместима с amd, делаем следующее: в файле amd.с меняем 3 на 4 в #define MAX_AMD_compatible, и в структуре под этим определением добавляем строчку {0x00EC,"samsung"}, где число носит смысл ManufactureID. После этого появился долгожданный процентный бегунок записи во флэш redboot.bin 3) Заметили неустойчивость в работе download - либо шьет как положено, либо вешается на Program the nor FLASH. повторный анализ исходников показал, что все тот же цируссовский ламерюга в download.c употребил такую конструкцию while((cChar=getChar(10))!=0){}. Смысл "10" тут наверно всем ясен (время ожидания), поэтому изменение его на "100" решает проблему.
Не пройденные грабли (это вопросы к участникам форума): 1) После прошивки redboot в флэш и старта - двойное мигание LED с интервалом около 2 сек. Игры с разными компиляциями redboot могут давать еще один случай, когда LED горит на постоянку, но при этом reset блокируется (т.е. спасает только передергивание питания). По com порту всегда тишина. Что за симптомы?
|
|
|
|
|
 |
Ответов
|
Apr 19 2008, 16:40
|
Участник

Группа: Участник
Сообщений: 40
Регистрация: 23-03-08
Пользователь №: 36 156

|
Ну все, тему можно считать закрытой - linux пашет, все довольны и счастливы. Дело оказалось в том, что при редактировании патча от лимонников, текстовый редактор сохранял бэкап файлик (название отличалось только тильдой), а при сборке  этот бэкапчик подцеплялся и что происходило дальше, думаю, всем понятно. Спасибо aaarrr за участие, всем удачи.
|
|
|
|
Сообщений в этой теме
AlChi Cirrus + Flash + download + redboot Apr 12 2008, 07:39 aaarrr Цитата(AlChi @ Apr 12 2008, 11:39) Не про... Apr 12 2008, 08:53 AlChi Цитата(aaarrr @ Apr 12 2008, 12:53) Вам п... Apr 12 2008, 10:36  aaarrr Цитата(AlChi @ Apr 12 2008, 14:36) Где им... Apr 12 2008, 13:11   AlChi продолжаю:
Вопрос со SDRAM решился - оказалось до... Apr 14 2008, 18:47    aaarrr Цитата(AlChi @ Apr 14 2008, 22:47) Новые ... Apr 14 2008, 18:55     AlChi Цитата(aaarrr @ Apr 14 2008, 22:55) Может... Apr 14 2008, 18:59      aaarrr Цитата(AlChi @ Apr 14 2008, 22:59) Если у... Apr 14 2008, 19:02       AlChi продолжим. Есть такой файл: flash_am29xxxxx.inl В ... Apr 15 2008, 18:05 aaarrr RedBoot какой версии? Какой PHY, как сконфигуриров... Apr 15 2008, 19:20 AlChi Цитата(aaarrr @ Apr 15 2008, 23:20) RedBo... Apr 17 2008, 18:13  aaarrr Цитата(AlChi @ Apr 17 2008, 22:13) 1) суд... Apr 17 2008, 18:33   AlChi Цитата(aaarrr @ Apr 17 2008, 22:33) Это у... Apr 17 2008, 18:39 AlChi Огромное спасибо! Завтра займусь.
p.s. неболь... Apr 17 2008, 19:22
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|