U-boot. Поддержка сжатых Кернелов )
xaba
Пункты: 15268
Регистрация: 23.04.2012
Где включить поддержку загрузки сжатого ядра типа LZO GZIP?
Искал и не нашел(( видимо плохо искал.
Спасибо.
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
На любой вопрос есть любой ответ.
xaba
Пункты: 15268
Регистрация: 23.04.2012
Ну это самое простое, это я уже прошел))
Делаю так.
В ядре включено. Собираю, Вижу zImage.
Командую
./mkimage -A arm -O linux -T kernel -C GZIP -a 0x10008000 -e 0x10008000 -n 'Linux' -d arch/arm/boot/zImage zImage
Копирую на рутовую.
Лезу в u-boot меняю в файле include/configs/wandboard.h строчку "/boot/uImage;bootm\0"
на "/boot/zImage;bootm\0"
В итоге загрузка не происходит. Сам лог u-boot не могу посмотреть, только через ssh 192.168....
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
не очень понимаю, зачем всё это нужно..
попробовал загрузить просто zImage, юбут ругается:
Код => bootm 10008000
Wrong Image Format for bootm command
ERROR: can't get kernel image!
если же обернуть через mkimage, то:
Код => bootm 10008000
## Booting kernel from Legacy Image at 10008000 ...
Image Name: Linux
Image Type: ARM Linux Kernel Image (gzip compressed)
Data Size: 3911252 Bytes = 3.7 MiB
Load Address: 10008000
Entry Point: 10008000
Verifying Checksum ... OK
Uncompressing Kernel Image ... Error: Bad gzipped data
GUNZIP: uncompress, out-of-mem or overwrite error - must RESET board to recover
resetting ...
и уходит в ресет..
На любой вопрос есть любой ответ.
xaba
Пункты: 15268
Регистрация: 23.04.2012
Цитата не очень понимаю, зачем всё это нужно..
Из-за размера. Хочу монолитное ядро плюс рутовая в одном архиве. Делал так что у меня вся система в одном файле, ядро, рутовая и еще подсистема для сохранения конфигураций. Ради эксперимент хочу тут попробовать.
Те все в одно файле ))) Минус в том что ничего не добавишь и не убавишь)))
sasamy
Пункты: 83556
Регистрация: 14.08.2009
Цитата Собираю, Вижу zImage.
Его и надо загружать командой bootz, не надо там никакого mkimage и грузите его сразу по адресу в RAM 0x10008000.