Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Запуск Linux на плате RainBow v1.1
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Отладочные платы > Rainbow
Страницы: 1, 2, 3
COMA
Здравствуйте!

Все таки запустил Linux на плату RainBow v1.1, как и обещал.

Точнее сказать, почти запустил smile.gif, с ошибками. Главное система работает, консоль отвечает smile.gif
Тепрь осталось довести систему до ума. Буду рад любым советам.
Если кому интересно, прикладываю лог.

Большое спасибо Алексею Преснякову за оказанную помощь, а также за руководство "Сброка toolchain для ARM и запуск Linux на AT91RM9200."

Оригинал находится тут: http://heavy-online.ru/arm-linux/
Evgeny_CD
Цитата(COMA @ Jun 17 2006, 01:34) *
Все таки запустил Linux на плату RainBow v1.1, как и обещал.
a14.gif Ну что же, с великим почином всех нас! С одной стороны, вроде как ничего особенного. С другой стороны - RainBow Board - один из первых "общественных" проектов на нашем сайте.

И не ногодрыгстово какое-нибудь, а вполне нормальный, взрослый проект.

После того как "олинуховывание" этой платы будет сведено в простой и понятный мануал - вообще будет супер.
COMA
Evgeny_CD, обязательно. Как только доведу плату до ума, пока есть проблемы с USB и LAN, так сразу напишу мануал.
AndyBig
Йееее! Поздравляю от всей души! smile.gif
Сам я так и не сподвигся в сторону линуха, все как-то страшно браться за это совершенно незнакомое дело smile.gif
Да и времени, как обычно, стало катострофически не хватать на свои интересы...
Поздравляю еще раз! smile.gif

C USB я не начинал работать, но свой исходник по LAN выкладываю. Заранее прошу прощения за бардачность в нем - он собирался кусками из различных исходников, плюс мои собственные изменения/дополнения, плюс зачатки приспособляемости под RTOS, плюс закладки на будущее и т.п. smile.gif.
В соседней теме я уже ответил, что перемычки по умолчанию все открыты.
Вот архив исходника: http://mc.neora.ru/rm9200/net.rar
COMA
[b]AndyBig[\b], ничего сложного в Linux-e нет smile.gif Спасибо, за помощь, буду разбираться дальше smile.gif
alcosar
"C USB я не начинал работать, но свой исходник по LAN выкладываю. Заранее прошу прощения за бардачность в нем - он собирался кусками из различных исходников, плюс мои собственные изменения/дополнения, плюс зачатки приспособляемости под RTOS, плюс закладки на будущее и т.п. smile.gif.
В соседней теме я уже ответил, что перемычки по умолчанию все открыты.
Вот архив исходника: http://mc.neora.ru/rm9200/net.rar"

По ссылке скачивается битый файл sad.gif
AndyBig
Цитата
По ссылке скачивается битый файл

Прошу прощения, поправил.
COMA
Добрый день!

Нужна помощь - никак не могу запустить Ethernet.
Что самое интересное, в u-boot все работает прекрсано. Ethernet работает, по tftp удается качать файлы, все ОК. Но в Linux Ethernet не работает.
В кернеле Linux - ID чипа PHY по всем 32 адресам читается 0xFFFF.
Что делать - не знаю... sad.gif
3.14
А PHY точно тот на который драйвер расчитан?
Может "ток" по проводочкам управления PHY не течет, надо полагать сообщение загрузчика "PHY not connected!!" не спроста.
Настройки по умолчанию самого PHY скорее всего самодостаточны, а вот как себя линуховый драйвер поведет если при инициализации не найдет PHY ...

Цитата
Configuring eth0: 192.168.2.77...
SIOCSIFADDR: No such device
SIOCGIFFLAGS: No such device
Чего ifconfig говорит? По моему, драйвер не хочет работать.
А вообще как впечатления, сколько BogoMips показывает, PPP не пробовали устанавливать какая при этом реация HTTP сервера получается?
COMA
Ругается, потому что в u-boot нет поддержки KS8721BL - не прописанны ID микросхемы.
u-boot конечно ругается - "PHY not connected!!" , но Ethernet работает.
u-boot по tftp скачивает кернел и образ файловой системы, запускает кернел. Это уже говорит о том, что сеть работает исправно.

A Linux не может найти PHY, хотя в кернеле есть поддержка этой микросхемы (KS8721BL )...
"at91_ether: probe of at91_ether failed with error -1" - это кернел не может прочитать ID чипа PHY - по всем 32 адресам читается 0xFFFF.

ifconfig говрит что нет у меня ничего кроме loopback sad.gif
BogoMips - ~90.

Что успел протестировать:
- Картридер с CompactFlash нашелся и определился правильно.
- ИК USB dongle определился правильно.
3.14
В общем, надо разбираться почему конфигурация PHY не работатет.
Ну а для теста сетевых возможностей линуха можно драйвер кастрировать, скорее всего он при инициализации не находя PHY вылетает, или где-нибудь в IOCTL.

USB host в проц встроен или отдельным чипом стоит?
COMA
Есть идея для начала руками вписать правильный ID микросхемы. Для теста.

USB host встроен в проц.
d__
На линии MDIO отсутствует pullup-ный резистор. С пожеланиями успехов...
psL
А какой получается размер образа? В мегабайтную флеш поместится?
COMA
d__, так и есть на самом деле (см. файл, 6-я страница). Спасибо !
http://www.micrel.com/_PDF/Ethernet/app-notes/an-133.pdf

psL, чуть больше 1 Мб.
COMA
sad.gif( pull-up резистор не помог. Так же читает 0xFFFF. Может дело в другом? Конфигурация линии MDC и т.п. ? Кто сопрягал KS8721 и Linux, отзвитесь!
d__
Ндя-я-я... Гламурненько... Пришлось повторно с неоры скачивать схемы и повторно их анализировать... У вас господа на PHY чип reset заведен инверсно.. Другой бы по современной привычке посмеялся, но я сочувствую...
COMA
В доке:
"Chip reset. Active low, minimum of 50 uS pulse is required."

В схеме притянут через 10к к питанию. По движению ноги PB26 CPU через резистор 100 Ом и транзистор, притягивается к земле, на время. Вроде так?
psL
Цитата(COMA @ Jul 4 2006, 23:05) *
В доке:
"Chip reset. Active low, minimum of 50 uS pulse is required."

В схеме притянут через 10к к питанию. По движению ноги PB26 CPU через резистор 100 Ом и транзистор, притягивается к земле, на время. Вроде так?


Когда база в землю - ~RESET33 неактивный.
А зачем вообще этот транзистор? Просто на порт повесить нельзя?
И почему нельзя сбрасывать от MCPшки?
COMA
Цитата(psL @ Jul 5 2006, 09:12) *
Когда база в землю - ~RESET33 неактивный.
А зачем вообще этот транзистор? Просто на порт повесить нельзя?
И почему нельзя сбрасывать от MCPшки?

С этим понятно.

Прибется либо плату перепаивать, либо кернел патчить. sad.gif
COMA
Когда стартует u-boot на выводе ресета PHY имеем "1". Сеть работает. Как только стартует кернел - имеем "0" - ресет по полной. Планирую вывод напрямую подключить к выходу MCP
d__
Туда ему и дорога...
COMA
Выпаял R9. Запаял перемычку между J13-1 (MCU_RESET) и R8 (RESET33).
Сеть работает Host и target пингуют друг друга. smile.gif

Большое спасибо d__ за помощь. a14.gif
Evgeny_CD
Цитата(COMA @ Jul 6 2006, 22:26) *
Выпаял R9. Запаял перемычку между J13-1 (MCU_RESET) и R8 (RESET33).
Сеть работает Host и target пингуют друг друга. smile.gif
Ну вот, слава богу, что новую версию платы еще не заказали.

Теперь осталось SD прикрутить - вдруг там на ровном месте какой таракан вылезет? blink.gif

Кстати, IRQ с PHY куда сейчас заведено?
AndyBig
По поводу резета - учтется. Сделаю напрямую от МК. Почему не от MCPшки - потому, что MCPшку не всегда можно купить, да и сбросить периферию программно иногда полезно.
Evgeny_CD
Цитата(AndyBig @ Jul 6 2006, 23:32) *
По поводу резета - учтется. Сделаю напрямую от МК. Почему не от MCPшки - потому, что MCPшку не всегда можно купить, да и сбросить периферию программно иногда полезно.
Просьба согласовать с COMA - "как бы чего не вышло" biggrin.gif
COMA
Можно сделать два варианта.
от MCP и от процессора. Выбирать перемычкой.

IRQ от PHY заведено на процессор. Вот только не помню на какую ногу. sad.gif Дома уточню.

SD карта.
Почему-то разъем который у меня есть, никак не хочет ложиться точно по площадкам. Да еще на ней одна нога лишняя smile.gif Две ноги вместо одной WP. Вторая вроде определяет присутствие карты памяти в разъеме. Может разъем у меня такой хитрый? smile.gif

Планы по плате следующие:
- Разобраться с SD/MMC картой.
- Запустить NFS.
- Поставить Gentoo Linux smile.gif

P.S. Вчера подключил USB картридер со вставленной Compact Flash. Плата определила все правильно.
Создал раздел, отформатировал, записал/считал файл. Все работало отлично.
COMA
Цитата
IRQ от PHY заведено на процессор. Вот только не помню на какую ногу. Дома уточню.

Вспомнил - PA17. Можно другую свободную.
dch
Цитата(AndyBig @ Jul 6 2006, 23:32) *
По поводу резета - учтется. Сделаю напрямую от МК. Почему не от MCPшки - потому, что MCPшку не всегда можно купить, да и сбросить периферию программно иногда полезно.

и patch можно сделать и PHY програмно ресетнуть.

...то есть состояла из нескольких элементов ...
AndyBig
Цитата
Можно сделать два варианта.
от MCP и от процессора. Выбирать перемычкой.

Договорились smile.gif.

Цитата
Вспомнил - PA17. Можно другую свободную.

Ок. Так и попробую сделать.
COMA
Запустил SD/MMC карту под Linux. Не обошлось без доработок smile.gif

Не подпаивал ногу WP разъема, т.к. на этой линии висит дебажный компорт.
Подпаял линию CD(Card detect) к P7-22 (PORTA_26). Подтянул к питанию через резистор 10К.

Работоспособность проверял картой Kingston SD 512Mb.
Создал раздел, отформатировал, записал/считал файл. Все работало отлично.
AlexMad
Снова я, снова с дурными вопросами smile.gif Кто нибудь пробовал собрать линух, как это описано тут:http://heavy-online.ru/arm-linux/, НО в кигвине? У меня собирается binutils,
Цитата
Делаем конфиг для требуемой платформы. У меня это так:make at91rm9200dk_defconfig
make include/linux/version.h

На ошибки внимания не обращаем.

здесь у меня действительно есть ошибки, если автор говорит, что внимания обращать не надо, я не обращаю
Цитата
Собираем и инсталируем GCC:make 2>&1 | tee make.out
make install 2>&1 | tee -a make.out

первая строка проходит на ура, правда, с первого раза тоже вылетела куча ошибок, но, вроде заработало... make install уже выкатывает
Цитата
initialization, retry 0, exit code 0x100, errno 11
make[1]: vfork: Resource temporarily unavailable
make[1]: Leaving directory `/usr/local/arm/src/BUILD/gcc-3.4.6-stage1/gcc'
make: *** [install-gcc] Error 2

мне интересно, я что-то не так делаю или в кигвине это и не должно собираться?
COMA
Под cygwin не собирал.
AlexMad
А нельзяли выложить загрузчик и хоть какой-нибудь образ, гарантированно работающий на этой плате, а то я думал, у меня проблемы с железом, пока разобрался, вроде прогнал тест SDRAM, даже протестировал случайными числами DataFlash, а roomboot при загрузке и верификации говорит Verify DataFlash: Failed sad.gif
COMA
Разумная мысль.
Постараюсь на днях выложить файлы.
COMA
Выложил файлы сюда - upload/MCs/ARM/rainbow/

romboot
u-boot.bin
uImage
fsImage

Желательно почитать "запуск Linux на AT91RM9200"
http://www.heavy-online.ru/arm-linux/
AlexMad
Простите за назойливость, под какую кофигурацию эти файлы? Имеется ввиду клоки СДРАМ, размер датафлешь и частота кварца? Просто первичный загрузчик в упор не видит датафлешь, а у-бут, загруженный моим загрузчиком, виснет намертво sad.gif
Rst7
Цитата(COMA @ Feb 21 2007, 18:20) *
Выложил файлы сюда - upload/MCs/ARM/rainbow/

romboot
u-boot.bin
uImage
fsImage


Полезно. Спасибо!

Цитата
Желательно почитать "запуск Linux на AT91RM9200"
http://www.heavy-online.ru/arm-linux/


Добрый текст, конечно. Правда фразы "на ошибки не обращаем внимание" не очень радуют. И кстати, может заодно положить на фтп исходники с тулчейном, потому как человек с heavy-online просит с него не тянуть (а просьбы надо уважать), а собирать по всему инету просто удручает.

И на последок ламерский вопрос. Как бы это дело научиться собирать под Виндой?
COMA
Цитата(AlexMad @ Feb 22 2007, 00:48) *
Простите за назойливость, под какую кофигурацию эти файлы? Имеется ввиду клоки СДРАМ, размер датафлешь и частота кварца? Просто первичный загрузчик в упор не видит датафлешь, а у-бут, загруженный моим загрузчиком, виснет намертво sad.gif


RAM 128Mb - K4S511632B-TC75 x 2
Flash - AT45DB642D TU 9544
Quartz - 16MHz
COMA
Цитата(Rst7 @ Feb 22 2007, 09:11) *
Добрый текст, конечно. Правда фразы "на ошибки не обращаем внимание" не очень радуют. И кстати, может заодно положить на фтп исходники с тулчейном, потому как человек с heavy-online просит с него не тянуть (а просьбы надо уважать), а собирать по всему инету просто удручает.

И на последок ламерский вопрос. Как бы это дело научиться собирать под Виндой?


Мне этот текст очень помог smile.gif тулчейны выложит не могу, т.к. их у меня нет. Я их собирал в Linux Gentoo используюя системные утилиты. Под виндой не собирал.
Хомяк
Цитата(COMA @ Feb 22 2007, 10:34) *
Цитата(Rst7 @ Feb 22 2007, 09:11) *

Добрый текст, конечно. Правда фразы "на ошибки не обращаем внимание" не очень радуют. И кстати, может заодно положить на фтп исходники с тулчейном, потому как человек с heavy-online просит с него не тянуть (а просьбы надо уважать), а собирать по всему инету просто удручает.

И на последок ламерский вопрос. Как бы это дело научиться собирать под Виндой?


Мне этот текст очень помог smile.gif тулчейны выложит не могу, т.к. их у меня нет. Я их собирал в Linux Gentoo используюя системные утилиты. Под виндой не собирал.


тулчейны есть.
готов поделится но пака не имею доступа к фтп
AlexMad
Цитата(Хомяк @ Feb 22 2007, 12:19) *
тулчейны есть.
готов поделится но пака не имею доступа к фтп

можешь прислать мне, я залью alex_safronoff<@>mail.ru
Хомяк
Цитата(AlexMad @ Feb 22 2007, 13:39) *
Цитата(Хомяк @ Feb 22 2007, 12:19) *

тулчейны есть.
готов поделится но пака не имею доступа к фтп

можешь прислать мне, я залью alex_safronoff<@>mail.ru


Хорошо через полчаса начну слать.
Хомяк
Цитата(Хомяк @ Feb 26 2007, 06:33) *
Цитата(AlexMad @ Feb 22 2007, 13:39) *

Цитата(Хомяк @ Feb 22 2007, 12:19) *

тулчейны есть.
готов поделится но пака не имею доступа к фтп

можешь прислать мне, я залью alex_safronoff<@>mail.ru


Хорошо через полчаса начну слать.



Собрал все/ под Debianom
при первой попытке скомпилировать первичный загрузчик заругалась
сижу разбираюсь
Хомяк
Прошу прошение за долгле молчание и за то что не выслал пакеты
Какнал связи не позволил
И начальство тоже
Выкладываю здесь потом напишу как ставил сам
Хомяк
Цитата(Хомяк @ Mar 4 2007, 08:06) *
Прошу прошение за долгле молчание и за то что не выслал пакеты
Какнал связи не позволил
И начальство тоже
Выкладываю здесь потом напишу как ставил сам



выложил патчи
Dron_Gus
Где и в каком пункте (по мануалу с heavy-online) должны быть прописаны UNAME_SYSNAME, UNAME_RELEASE, UNAME_VERSION и UNAME_MACHINE? А главное где?.. Это при сборке glibc ругается...

З.Ы. Уже за**ся.
Старый Бабай
Внесу свои пять копеек.
Со сборкой мучился долго но так и не смог полностью собрать. Постоянно выскакивали ошибки. Потом плюнулю Скачал собраный разархивировал. И вуаля заработал.
Сегодня попробую собрать под Слакой из других исходников
Playnet
Цитата(Старый Бабай @ Mar 9 2007, 07:25) *
Внесу свои пять копеек.
Со сборкой мучился долго но так и не смог полностью собрать. Постоянно выскакивали ошибки. Потом плюнулю Скачал собраный разархивировал. И вуаля заработал.
Сегодня попробую собрать под Слакой из других исходников

Собираю по докам с оф. канала ирки. Сак кросскомпилер есть, убут собирал уже. Но ядро не собрать, лезут странные ошибки, в частности, с bash. Пока не до компилера, но на след неделе надеюсь вылечить. Потом инструкции дам.
В частности, в генту есть все нужное для кросскомпилера, но много нюансов, например, нужно брать linux-headers не 2.6.20 (я 2.6.17 взял), гцц 3.4.6... 4.х -- есть тонкости сборки, пока не мучил его.
Мне вот что непонятно... Там так строится имя кросскомпилера - arm-softfloat-linux-uclibc
Понятно только с архитектурой, а вот дальше.. Почему именно softfloat, есть всякие gentoo, pc, unknown
Вместо линуха можно elf, linux, uclinux
либы -- gnu, uclibc
Делал по доке...
COMA
Playnet,
все просто и понятно.
Почитайте доку - http://www.gentoo.org/proj/en/base/embedde...development.xml
я собирал arm-rainbow-linux-uclibc.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2022 Invision Power Services, Inc.