|
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 12 2008, 10:36
|
Участник

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

|
Цитата(aaarrr @ Apr 12 2008, 12:53)  Вам придется изменить инициализацию SDRAM в RedBoot и добавить свою флеш в список. Где именно править, исходники или конфигурационные файлы? (просто только приступил к этому вопросу) Цитата(aaarrr @ Apr 12 2008, 12:53)  P.S. Что это всех так на самсунговские флеши потянуло, интересно? да они вроде не плохие уж совсем ... по описаниям
|
|
|
|
|
Apr 14 2008, 18:47
|
Участник

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

|
продолжаю:
Вопрос со SDRAM решился - оказалось достаточно было в файле edb93xx.patch, где задаются установки по умолчанию, прописать вместо SDCSn3 SDCSn0. И появилось долгожданное приглашение redboot. Кстати, вариант предлагаемый лимонниками - создать файл SDRAM.ecm, не знаю почему, но не прокатил. Спасибо aaarrr за совет- такое характерное мигание действительно указывает на проблемы с SDRAM
Новые грабли: Опять проблема с FLASH (мать ее) - redboot пишет : FLASH : Driver init error. Нутром чую, что опять дело в ID.
попутно вопросик: имеет ли значение (для redboot) тип флэши: top или botom ?
Сообщение отредактировал AlChi - Apr 14 2008, 18:51
|
|
|
|
|
Apr 14 2008, 18:55
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(AlChi @ Apr 14 2008, 22:47)  Новые грабли: Опять проблема с FLASH (мать ее) - redboot пишет : FLASH : Driver init error. Нутром чую, что опять дело в ID. Может быть, "FLASH: driver init failed"? Цитата(AlChi @ Apr 14 2008, 22:47)  попутно вопросик: имеет ли значение (для redboot) тип флэши: top или botom ? Имеет, конечно. У них же разная конфигурация секторов.
|
|
|
|
|
Apr 14 2008, 18:59
|
Участник

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

|
Цитата(aaarrr @ Apr 14 2008, 22:55)  Может быть, "FLASH: driver init failed"? да ok, попробую, отпишусь. Цитата(aaarrr @ Apr 14 2008, 22:55)  Имеет, конечно. У них же разная конфигурация секторов. Если у нас top не стоит, можем ли мы полноценно работать только с bottom?
|
|
|
|
Сообщений в этой теме
AlChi Cirrus + Flash + download + redboot Apr 12 2008, 07:39       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 aaarrr Как я понимаю, у Вас SDRAM висит на nSDCS3? Тогда ... Apr 17 2008, 19:12 AlChi Ну все, тему можно считать закрытой - linux пашет,... Apr 19 2008, 16:40  aaarrr Цитата(AlChi @ Apr 19 2008, 20:40) ...при... Apr 19 2008, 16:43 AlChi Огромное спасибо! Завтра займусь.
p.s. неболь... Apr 17 2008, 19:22
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|