Jorj |
|
|
|
|
|
|
|
|
Регистрация: 17.09.2009 |
|
|
|
Интуиция подсказывает мне, что /dev/mtdblock1 - не соответствует записанной по адресу 0x400000 rootfs.jffs2 |
|
|
|
|
|
Jury093 |
|
|
|
|
|
|
|
Пункты: 54233 |
Регистрация: 25.05.2009 |
Пол: Мужчина |
Из: Санкт-Петербург |
|
Kernel command line: console=ttyS0 rootfstype=jffs2 root=/dev/mtdblock1
а попробовать добавить в команду загрузки ядра rootwait и пересобрать
надеюсь флешка отформатирована с файловой системой и поддержка в ядре включена (не модулем)..
зы. э-э-э.. проглядел, что хочется работать с NAND, я как обычно свернул к CF ;)
настоятельно рекомендую посетить дружественный форум, там Уважаемый Александр (sasami) очень доходчиво расписал все необходимые телодвижения:
http://electronix.ru/forum/index.php?showtopic=66883
зы2. впрочем в 5 минут перестроил загрузку рутфс с CF, в плату воткнут старинный USB ридер CF+MMS+SD+x3, в него воткнута CF 4GB побита на два раздела на первый налита рутфс
в конфиге ядра:
Kernel command line: mem=32M rw console=ttyS0,115200 root=/dev/uba1 rootwait
:) |
На любой вопрос есть любой ответ. |
|
|
|
|
Jorj |
|
|
|
|
|
|
|
|
Регистрация: 17.09.2009 |
|
|
|
Что ж, сделан ещё один шаг.
Ядро находит корневую систему.
Для загрузки из nand мои параметры выглядят так:
Запись по адресу 0x400000
bootargs=console=ttyS0,115200 root=/dev/mtdblock0 mtdparts=at91_nand:-(root) rw rootfstype=jffs2
bootcmd=nboot 0x22200000 0x0 0x40000;bootm 0x22200000
Для загрузки из SD или MMC вставленной в USB ридер:
bootcmd=nboot 0x22200000 0x0 0x40000;bootm 0x22200000
bootargs=mem=64M console=ttyS0,115200 root=/dev/sda1 rootfstype=ext2 rootwait
Остаётся самая малость, запуститься.
Чего я только не пробовал, но нормально запуститься не получилось. Лежащие в сети бинарники - не подходят, потому как скомпилированы на другую частоту кварца.
То, что я компилю сам, выдаёт сообщения типа:
Oops[807] ...Unable to handle null pointer... attempted to kill init.
Из всего, что я про это нашёл есть такие выводы:
Одни говорят, что ядро не находит какого-то модуля (хотя я при компиляции запретил использование модулей, и указал на использование статических библиотек) и при обращении к нему попадает на нулевой указатель.
Другие говорят, что ядро скомпилировано без поддержки EABI (хотя я компилил и с EABI и с OABI).
Ещё, возможно, не все патчи применились так, как им положено.
Уважаемый Юрий 093, раз уж мы с вами в этой ветке единственные, как думаете, что это такое? |
|
|
|
|
|
Jury093 |
|
|
|
|
|
|
|
Пункты: 54233 |
Регистрация: 25.05.2009 |
Пол: Мужчина |
Из: Санкт-Петербург |
|
лирика: ну так уж одни, сюда регулярно заглядывает создатель SK..
по делу: чтобы более предметно понять кусочки лога выложите - строчку параметров загрузки ядра и несколько строк перед
Oops[807] ...Unable to handle null pointer... attempted to kill init.
иначе не понять хотя бы область падения
как вариант: отключить все ненужное в ядре, остальное включить на постоянку (не модулями) - грузить и смотреть
надеюсь процесс отладки ядра идет по сетке, а не с перешивкой флешек и карточек? |
На любой вопрос есть любой ответ. |
|
|
|
|
Jorj |
|
|
|
|
|
|
|
|
Регистрация: 17.09.2009 |
|
|
|
И наконец-то, всё, пусть и прихрамывая, забегало. Всем спасибо.
После перебора kernel'ов разных версий, встала и забегала без всяких патчей версия 2.6.29.1
Для работы rootfs - пришлось ставить buildroot. Busybox, взятый отдельно и скомпилённый тулчейном - работать отказался.
Buildroot, конечно, то же не подарок. Ставится 2 часа, и не может в конце создать jffs2 образ корневой, только ext2.
И ядро и buildroot - сскачиваются и ставятся как написано в wiki.starterkit.ru - проверено. Только файлик board-sam9260ek.c не забываем править.
Может подскажет кто, как конвертонуть rootfs.ext2 в rootfs.jffs2? |
|
|
|
|
|
|