Проблемы при загрузке ядра 2.6 u-boot-ом
(Прошу прощения, если запостил не в тот раздел, но проблема не узконаправленная)
Есть evaluation board на однокристаллке micrel KSZ9692PB. В его nand уже прошит u-boot и рам-диск с ядром и файловой системой.
Сам по себе u-boot работает и по дефолту загружает уже прошитый туда линукс. С этим всё ок.
Однако, я решил сам взять предлагаемый micrel-ом линукс (можно скачать и линукс и весь инструментарий на сайте производителя) и научиться его компилить (никогда не делал этого) и загружать в память по tftp u-boot-ом и запускать.
Казалось бы всё просто: майкрел предоставляет ядро уже с патчами, мейкфайл с готовым конфигом под его eval-board.
Я компилю ядро, оно компилится успешно (в конце пишет Load Address 0x8000 — вот тут может беда), я беру получившийся zImage и с помощью mkimage делаю uImage, но уже указываю адреса 0x800000 в место 0x8000 (производитель рекомендует загружать с 0х800000, не знаю почему)
Аргументы mkimage выглядят у меня так: — A arm — O linux -T kernel -C none -a 0x800000 -e 0x800000 -n 'linux-2.6-atatat-edition' -d zImage uImage
Файловая система у меня отдельно на USB флэшечке, но до неё дело не доходит )) всё умирает гораздо раньше =\.
После этого получившийся образ засасываю через tftp u-bootom, коммандой tftp 0x800000 uImage, устанавливаю параметры консоли (setenv bootargs 'console=ttyAM0,115200 root=/dev/sda1') ...
и радостно пытаюсь сделать bootm 0x800000
На что u-boot мне сообщает:
## Booting image at 00800000 ... Image Name: linux-2.6-atatat-edition Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 4610920 Bytes = 4.4 MB Load Address: 00800000 Entry Point: 00800000 Verifying Checksum ... OK XIP Kernel Image ... OK
Starting kernel ...
data abort pc : [<0080000c>] lr : [<00f1abf0>]sp : 00ecfaf4 ip : 00f5cc00 fp : 00000002 r10 : 00000000 r9 : 00f5cc00 r8 : 00ecffdc r7 : 00000000 r6 : 00000000 r5 : 00000000 r4 : 00000000 r3 : 00800000 r2 : 00000100 r1 : 0000016b r0 : 00000160 Flags: nZCv IRQs off FIQs off Mode SVC_32 Resetting CPU...
и всё, ребут.
соответственно я в полном замешательстве т.к. знания линукса и АРМа у меня посредственные — ещё только начал изучать.
В чём может быть проблема?
(алсо почему-то форум мою няшную копипасту дампа превратил в какую-то кашу. ничего не могу поделать)