Перейти к содержанию
    

Проблемы при загрузке ядра 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...

 

 

и всё, ребут.

 

соответственно я в полном замешательстве т.к. знания линукса и АРМа у меня посредственные — ещё только начал изучать.

 

В чём может быть проблема?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А память точно есть по этому адресу? data abort это обычно ошибка чтения или записи. Попробуй прочитать память после загрузки uImage, проверь, сходится ли с файлом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...