реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> zImage и uImage
pernatui
сообщение Oct 26 2008, 13:45
Сообщение #1





Группа: Участник
Сообщений: 14
Регистрация: 26-10-08
Пользователь №: 41 197



Сконвертировал ядро zImage в uImage c помощью mkimage
./mkimage -C none -A arm -O linux -T kernel -a 80008000 -e 80008000 -n imageName -d zImage uImage
В результате в u-boot загрузка дальше Uncompressing Linux...........................................................................
......................................... done, booting the ke.

не проходит. В чем может быть проблема? Пересобрать полностью ядро под uImage могу, и поставить redboot тоже. Вопрос спортивного интереса smile.gif Интересны советы как диагностировать ошибку.

Заранее спасибо
Go to the top of the page
 
+Quote Post
Harbour
сообщение Oct 27 2008, 08:06
Сообщение #2


Местами Гуру
*****

Группа: Validating
Сообщений: 1 103
Регистрация: 5-12-04
Пользователь №: 1 323



"uncompressing done" говорит что uncompressed crc совпала, дальше нужно разбираться с ядром - можно gdb'ой его, можно каким-то jtag отладчиком. это все конечно при условии, что железо ведет себя адекватно. обычно, в случае custom SBC, путают с ld скриптами и/или memory regions
Go to the top of the page
 
+Quote Post
S_agent
сообщение Oct 28 2008, 08:28
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 208
Регистрация: 6-10-05
Из: Ukraine, Kiev
Пользователь №: 9 300



Цитата(pernatui @ Oct 26 2008, 16:45) *
Сконвертировал ядро zImage в uImage c помощью mkimage
./mkimage -C none -A arm -O linux -T kernel -a 80008000 -e 80008000 -n imageName -d zImage uImage
В результате в u-boot загрузка дальше Uncompressing Linux...........................................................................
......................................... done, booting the ke.

не проходит. В чем может быть проблема? Пересобрать полностью ядро под uImage могу, и поставить redboot тоже. Вопрос спортивного интереса smile.gif Интересны советы как диагностировать ошибку.

Заранее спасибо

Укажите в параметрах коммандной строки установку консоли аля console=ttyS0,115200
Go to the top of the page
 
+Quote Post
dch
сообщение Oct 28 2008, 11:10
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1 179
Регистрация: 15-09-04
Из: 141070 г. Королев МО, улица Горького 39-121
Пользователь №: 661



разве у него есть uncompressed crc - вроде есть crc заголовка и crc данных, он просто проверяет образ нормальный в источнике а потом разворачивает его.
Go to the top of the page
 
+Quote Post
Harbour
сообщение Oct 29 2008, 10:58
Сообщение #5


Местами Гуру
*****

Группа: Validating
Сообщений: 1 103
Регистрация: 5-12-04
Пользователь №: 1 323



раворачивает сам и по результату возвращенному собственным inflate() запускает ядро или пишет "GUNZIP ERROR". Контрольная сумма - adler32, проверяется при распаковке всех полученных данных.
Go to the top of the page
 
+Quote Post
pernatui
сообщение Nov 6 2008, 12:20
Сообщение #6





Группа: Участник
Сообщений: 14
Регистрация: 26-10-08
Пользователь №: 41 197



параметры консоли были конечно выставлены. Забавно но вопрос так и не решился-) Повторю вопрос чистого интереса как это можно отладить
Go to the top of the page
 
+Quote Post
yaghtn
сообщение Nov 21 2008, 07:09
Сообщение #7


Участник
*

Группа: Свой
Сообщений: 52
Регистрация: 7-11-05
Из: Чебоксары
Пользователь №: 10 546



Цитата(pernatui @ Nov 6 2008, 15:20) *
Повторю вопрос чистого интереса как это можно отладить


Собираете ядро с включенными опциями отладки и дебаг инфо.
Запускаете gdb, собранный для используемой платформы,
коннект к таргету, запуск бутлоадера и ядра.
Таргет молчит, в gdb шлёте Ctrl+c, указываете "file vmlinux" - ELF-файл ядра

У меня, например, было так:
Код
Reading symbols from /home/user/src/linux-2.6.25/vmlinux...done.
Current language:  auto; currently asm
(gdb) f
#0  __delay () at arch/arm/lib/delay.S:61
(gdb) disas
Dump of assembler code for function __delay:
0xc010ea7c <__delay+0>: subs    r0, r0, #1    ; 0x1
0xc010ea80 <__delay+4>: bhi     0xc010ea7c <__delay>
0xc010ea84 <__delay+8>: mov     pc, lr
End of assembler dump.
(gdb) set $pc=0xc010ea84
(gdb) s
panic (fmt=0xc024c3ac "VFS: Unable to mount root fs on %s") at kernel/panic.c:138
Current language:  auto; currently c
(gdb)

Уже намного понятнее, чем просто молчание.
Go to the top of the page
 
+Quote Post
AVR
сообщение Dec 15 2008, 19:21
Сообщение #8


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Может параметры неправильные у mkimage?
Если указать в PATH путь до каталога с mkimage, то можно собирать ядро Linux коммандой make uImage и оно создаст этот образ, и параметры правильные запишет самостоятельно, исключая возможность ошибки... Таким методом - проблем еще не встречал. Может поможет... smile.gif


--------------------
Go to the top of the page
 
+Quote Post
cyberr_bob
сообщение Jun 27 2010, 09:24
Сообщение #9





Группа: Новичок
Сообщений: 3
Регистрация: 29-07-08
Из: Кишинев
Пользователь №: 39 267



У меня была такая же фигня недавно с ядром 2.6.34, мудохался долго - так и не выяснил в чем дело. Но при переходе на ядро 2.6.27 ядро начало загружаться. Новое ядро пока было отложено в сторонку, где будет дожидаться судного дня.
Go to the top of the page
 
+Quote Post
Arischenko Ivan
сообщение Aug 24 2010, 16:37
Сообщение #10


Частый гость
**

Группа: Участник
Сообщений: 112
Регистрация: 29-10-06
Пользователь №: 21 768



У меня такое было при неправильном конфигурировании ядра : патчи были наложены, а .config был старый.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th June 2025 - 01:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.0146 секунд с 7
ELECTRONIX ©2004-2016