У меня, вероятно, проблема с цепочкой инструментов для руки, но, возможно, я делаю что-то еще не так. У меня китайская плата разработчика qq2440 с использованием Samsung s3c2440 ARM9 uC. Я использую Ubuntu x86 с собственным gcc (4.3.3) и кросс-компилируемой версией arm-unknown-linux-uclibc-gcc (crossstool-NG-1.3.2) 4.3.2
Я следовал руководствам из http://blog.leshak.ru/english/pages/how-to-install-u-boot-linux-2629-rootfsjffs2-busybox-1132-into-nand-qq2440/ и использовал патчи ядра Leshak для этой платы. Проблема в том, что его двоичные файлы работают отлично, а мои - нет ...
Я общаюсь со своей платой через RS232 (последовательный порт), и у меня есть последовательный терминал, настроенный на целевой Linux. Я использую образ uboot Лешака. Для настройки ядра я использую следующую командную строку:
qq2440> setenv bootargs 'noinitrd root=/dev/mtdblock2 rootfstype=jffs2 rw console=ttySAC0,115200'
В качестве целевой я использую исходные тексты ванильного Linux версии 2.6.29 с патчами, созданными Leshak. Честно говоря, я не верю, что это когда-либо будет официально поддерживаться Linux, поскольку это не основной продукт.
Мой образ ядра начинает загружаться, но он, вероятно, изменяет полосу пропускания (или частоту процессора) на какое-то нестандартное значение (уже перепробовал все стандартные). Вместо точек, указывающих на загрузку ядра в память, у меня только хлам. К сожалению, это, вероятно, не завершает процесс загрузки, так как сетевой интерфейс и файловая система не работают. Итак, я понял, что паника находится где-то посередине.
Есть идеи, что мне делать дальше?
С уважением,
Крис