Вот обратил внимание на такую особенность....
Конфигурационная строка загрузки выбирается при помощи MAGIC_KEY ... у Павла на схеме LRADC0 висит на разъеме....по сути в воздухе....может из-за этого выбирается неверная стока загрузки в linux_prep и ядро распаковывается, но дальше не грузится?
У Павла все предусмотрено :) исходники поправлены - но это все равно не влияет на то что ядро не стартует - тут либо mach_id неправильный передается либо разведено все настолько глючно, что наиболее вероятно.
Проверить не сложно - memtester на свободный объем памяти (успешно проходящий сутки-двое) уже скажет с вероятностью 0,95 в этом причина или нет.
Может что то и не учтено, только кроме вас, вряд ли кто это выяснит.
Из своих наблюдений, iMX233 самый своенравный процессор и даже спустя относительно внушительное количество выпущенных изделий получаю платы "головоломки", например, нетак давно пришлось заменить DDR чип на новой плате, что говорит в пользу того, что тайминги нужно-можно еще крутить (40 регистров ;)), постоянно приходится подбирать кварц чтобы амплитуда генератора была не менее 250мВ ...
В следующей ревизии, как говорится "от греха подальше" питание периферии 3,3В обязательно перенесу на внешний стабилизатор.
Это я понимаю, поэтому и прошу помочь диагностировать проблему т.к. сам еще многого не знаю, а вы, как человек опытный, вероятно можете мне чем-нибудь помочь.
Получается мне надо boot_prep крутить в регистрах настройки DDR, пока тест памяти не начнет проходить?
P.S. Сори за оффтоп...Павел, а почему вы больше не делаете платы на freescale? Ведь это одна из ведущих фирм-производителей, на нее многие ровняются.
Существует ли вообще пример правильной трассировки этой DDR , чтоб я мог сравнить со своей ПП? А то к хорошему осциллу у меня доступ ограниченный, чтоб тайминги по ДШ сравнить. Я порылся в и-нете и ничего подобного не подвернулось....
Значит, что получилось ... отписываюсь чисто из приличия...
В bootlets включил циклицескую запись и считывание DDR .... с адреса 0x40000000 аж по самое нихочу 0x5fffffff. Погорнял минут 10 .... error-ов не выявлено было ни одного!
Нашел утилиту sbtool ,которая разбирает sb на составные части...если надо, могу исходники скинуть...взял оттуда boot_prep , все остальное подкинул свое, а именно linux_prep... power_prep выбросил вообще...подцепил ядро 2.6.31от sasamy с ftp .... бо че-то 2.6.35 не пошел =((
в итоге имею лог загрузки =
И так же
Тоесть дело было в boot_prep ... что именно - это еще предстоит узнать...
Не понятно про BogoMIPS....он пишет, что 231.44 ...Это 231 МГц или 454 МГц....как вообще они пересчитываются? я так понимаю формула пересчета для frescale уникальная...Ибо по определению это кол-во операций простоя проца в секунду. Если я не прав - поправте меня...
Возможно там другие настройки пинов EMI - voltage and drive strength, это кстати иногда помогает "сгладить" помехи.
запустите memtester, он есть в buildroot - там настоящий тест, тогда будет уверенность что дело не в памяти, ибо вот это
говорит что что-то все же не так (вам видней что именно, но оно работает - у меня несколько плат работали с этим ядром в режиме 24х7)
Для armv5 богомипсы - это ~частота ядра пополам, тоесть 231.44 богомипсов соответствует частоте ядра ~450 МГц, для armv7 - один к одному. Где-то видел таблицув Инете для Linux, там про это написано.