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

 
 
> Embedded linux bootstraping, ликбез
3.14
сообщение Jul 16 2007, 10:20
Сообщение #1


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Начало обсуждения здесь: http://electronix.ru/forum/index.php?showtopic=33796
Т.е. на данный момент, моя железяка после загрузки ядра пытается смонтировать корневую через NFS (насколько я понимаю).
Начитавшись этого http://www.opennet.ru/base/sys/initrd_intro.txt.html я окончательно запутался.
Здесь инструкции по сборке и запуску линуха на колибри: http://www.vollmann.net/colibri/colibri-bs...ing-started.txt
Там ни слова не говорится о initrd файловой системе ...
Прокомментируйте плиз следующие инструкции по сборке ядра линуха:
Цитата
$ arm-linux-objcopy -O binary -R .note -R .comment -S vmlinux linux.bin
$ gzip -c -9 linux.bin > linux.bin.gz
$ $PROJECT/colibri-bsp-x.x/bin/mkimage -A arm -O linux -T kernel -C gzip \
-a 0xa0008000 -e 0xa0008000 -n "Linux Kernel Image" -d linux.bin.gz uImage


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
3.14
сообщение Jul 17 2007, 08:40
Сообщение #2


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Спасибо.
В общем, корневуху на NOR флешку я разместил и теперь линух нормально грузится ...
На данный момент имею следуюшие аргументы загрузки ядра: noinitrd root=/dev/mtdblock2 rootfstype=jffs2 ip=:::::eth0: console=ttyS0,115200n8
Но в последствии, на своей железяке, у меня будет маленькая NOR флешка (4Мбайт), соответственно развесистая корневуха не по силам (да и ни к чему, всего одно приложение крутится будет). Т.е. для моего случая идеальный вариант это небольшой виртуальный диск (initrd) на котором и будет корневуха с моим приложением. Отсюда вопрос, как это организовать?
Допустим я соберу образ этого виртуального диска по этим инструкциям http://www.opennet.ru/base/sys/initrd_intro.txt.html , но какие аргументы загрузки ядра тогда должны быть при этом?
Еще, откуда (на данный момент) ядро знает что устройство /dev/mdtblock находится по адресу 0x480000 (из BSP платы)?


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
3.14
сообщение Jul 17 2007, 11:19
Сообщение #3


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Собрал образ ramdisk, по следующему скрипту:
Код
#!/bin/sh
RDSIZE=4000
BLKSIZE=1024

dd if=/dev/zero of=./ramdisk.img bs=$BLKSIZE count=$RDSIZE

/sbin/mke2fs -F -m 0 -b $BLKSIZE ./ramdisk.img $RDSIZE

mount ./ramdisk.img ./mnt -t ext2 -o loop=/dev/loop0

mkdir ./mnt/bin
mkdir ./mnt/sys
mkdir ./mnt/dev
mkdir ./mnt/proc

cp ./busybox ./mnt/bin/busybox
pushd ./mnt/bin
ln -s busybox ash
ln -s busybox mount
ln -s busybox echo
ln -s busybox ls
ln -s busybox cat
ln -s busybox ps
ln -s busybox dmesg
ln -s busybox sysctl
popd

cp -a /dev/console ./mnt/dev
cp -a /dev/ramdisk ./mnt/dev
cp -a /dev/ram0 ./mnt/dev
cp -a /dev/null ./mnt/dev
cp -a /dev/tty1 ./mnt/dev
cp -a /dev/tty2 ./mnt/dev

pushd ./mnt
ln -s bin sbin
popd

cat >> ./mnt/linuxrc << EOF
#!/bin/ash
echo
echo "Simple initrd is active"
echo
mount -t proc /proc /proc
mount -t sysfs none /sys
/bin/ash --login
EOF

chmod +x ./mnt/linuxrc

umount ./mnt
#gzip -9 ./ramdisk.img

затем:
Код
#!/bin/sh
./mkimage -A arm -O linux -T ramdisk -C gzip -a 0xa1000000 -e 0xa1000000 -n "Initial RAM disk image" -d ramdisk.img.gz ramdisk
Аргументы запуска ядра:root=/dev/ram0 rw initrd=0xa1000000,0x400000 ramdisk_size=4000 console=ttyS0,115200n8 mem=16M

В итоге, ядро все равно в панике, не может смонтировать "ram0" or unknown-block(2,0).
Не понятно, u-boot-у нужно говорить что перед загрузкой ядра загрузить рамдиск?
В логах обычной загрузки про рамдиск ни слова ...
Я пробовал в ручную, после загрузки u-boot, принудительно загрузть образ рамдиск "bootm 48000" а после этого стартонуть ядро, ничего не меняется.


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 3.14   Embedded linux bootstraping, ликбез   Jul 16 2007, 10:20
- - amw   Цитата$ arm-linux-objcopy -O binary -R .note ...   Jul 17 2007, 08:33
||- - S_agent   Цитата(3.14 @ Jul 17 2007, 14:19) В итоге...   Jul 17 2007, 21:16
|- - S_agent   Цитата(3.14 @ Jul 17 2007, 11:40) Еще, от...   Jul 17 2007, 18:34
- - PsM   Если используешь ядро 2.6 я бы посоветовал использ...   Jul 18 2007, 04:56
- - 3.14   2 S_agent. В том то и дело, что никаких сообщений ...   Jul 18 2007, 05:51
|- - S_agent   3.14, почитайте вот это, там все необходимые дейст...   Jul 18 2007, 08:15
|- - amw   Цитата(3.14 @ Jul 18 2007, 08:51) 2 S_age...   Jul 19 2007, 15:12
- - 3.14   Итак, начал ковыряться с самодельной железякой на ...   Aug 31 2007, 08:48
- - amw   Цитатаu-boot$ boot ## Booting image at 000600...   Sep 1 2007, 10:10
- - 3.14   ЦитатаА рамдиск где грузится в память? Перед запус...   Sep 1 2007, 11:42
|- - amw   Цитата(3.14 @ Sep 1 2007, 14:42) Перед за...   Sep 3 2007, 07:10
- - 3.14   Странно, если образ рамдиска не GZIP-ить, тогда яд...   Sep 3 2007, 07:50
|- - amw   Цитата(3.14 @ Sep 3 2007, 10:19) Странно,...   Sep 3 2007, 07:51
- - 3.14   Спасибо, нашел причину ошибочной загрузки образа, ...   Sep 3 2007, 07:54
- - amw   К стати не понял что за второй параметр у initrd=0...   Sep 3 2007, 07:59
- - 3.14   Сам пока не понял Чего то еще не то ... ядро упор...   Sep 3 2007, 08:21
- - 3.14   Уперся ... В качестве init (linuxrc) у меня ash ск...   Sep 3 2007, 11:08
- - 3.14   Еще, если попробовать залить не GZIP-нутый образ р...   Sep 3 2007, 12:29
- - amw   Чтобы не заморачиватся с либами на этапе загрузки ...   Sep 3 2007, 19:13
- - amw   В дополнение, Поскольку ldd не работает в кросс-ва...   Sep 4 2007, 08:16
- - 3.14   Итак ... взял образ рамдиска отсюда http://heavy-o...   Sep 4 2007, 13:02
|- - amw   Цитата(3.14 @ Sep 4 2007, 16:02) Итак ......   Sep 4 2007, 14:33
|- - v_shamaev   Цитата(3.14 @ Sep 4 2007, 17:02) Итак ......   Sep 5 2007, 07:18
- - 3.14   Итак, с налету uClib не собирается (под ARM), ошиб...   Sep 5 2007, 08:15
|- - v_shamaev   Цитата(3.14 @ Sep 5 2007, 12:15) Итак, с ...   Sep 5 2007, 08:47
- - 3.14   А разве для glib и uClib разные тулчейны нужны?   Sep 5 2007, 08:56
|- - Idle   Цитата(3.14 @ Sep 5 2007, 12:56) А разве ...   Sep 5 2007, 09:08
- - amw   Вообще-то glib и glibc - разные вещи. Судя по имен...   Sep 5 2007, 10:13
- - 3.14   А что в скрипте all.sh должно быть? Попробовал со...   Sep 5 2007, 12:17
|- - amw   Цитата(3.14 @ Sep 5 2007, 15:17) А что в ...   Sep 5 2007, 13:24
|- - v_shamaev   Цитата(amw @ Sep 5 2007, 17:24) Если пере...   Sep 5 2007, 14:11
- - 3.14   В продолжение сборки buildroot, сегодня, видимо из...   Sep 6 2007, 06:40
|- - amw   Цитата(3.14 @ Sep 6 2007, 09:40) В продол...   Sep 6 2007, 07:49
|- - vanokuten   Цитата(3.14 @ Sep 6 2007, 09:40) В продол...   Oct 11 2007, 18:02
- - 3.14   Чего то я не пойму ... buildroot сам качает ядро, ...   Sep 6 2007, 08:11
|- - v_shamaev   Цитата(3.14 @ Sep 6 2007, 12:11) Чего то ...   Sep 6 2007, 08:22
|- - amw   Цитата(3.14 @ Sep 6 2007, 11:11) Чего то ...   Sep 6 2007, 09:33
- - 3.14   В /usr/local/arm-linux/arm-linux/lib лежит одна ли...   Sep 6 2007, 10:27
|- - amw   Цитата(3.14 @ Sep 6 2007, 13:27) В /usr/l...   Sep 6 2007, 11:18
- - 3.14   Спасибо, уже лучше, по крайней мере собраный бузиб...   Sep 7 2007, 08:08
|- - amw   Цитата(3.14 @ Sep 7 2007, 11:08) Спасибо,...   Sep 7 2007, 08:52
- - 3.14   собрал новое ядро, дык оно упорно не хочет распако...   Oct 3 2007, 11:31
- - amw   CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_COUNT=4 CO...   Oct 5 2007, 13:28
- - 3.14   Это все в ядро включено ... Ядро 2.6.14-intcl (ин...   Oct 11 2007, 10:26
|- - amw   Цитата(3.14 @ Oct 11 2007, 13:26) Это все...   Oct 11 2007, 14:49
- - 3.14   Насчет 0x500000, я так понимаю, это область памяти...   Oct 11 2007, 16:24
|- - amw   Цитата(3.14 @ Oct 11 2007, 19:24) Насчет ...   Oct 12 2007, 09:42
- - 3.14   Ладно, с корневухой разобрался, был клубок нюансов...   Oct 15 2007, 10:10
|- - S_agent   Цитата(3.14 @ Oct 15 2007, 12:10) ..Созда...   Oct 16 2007, 14:29
- - amw   Запустить busybox на консоль, сгенерить пароль, со...   Oct 16 2007, 11:43
- - Frox_SzC   А какая нибудь литература есть по этому вопросу???   Aug 10 2009, 07:06
- - Idle   Цитата(Frox_SzC @ Aug 10 2009, 11:06) А к...   Aug 11 2009, 18:41


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

 


RSS Текстовая версия Сейчас: 21st June 2025 - 05:25
Рейтинг@Mail.ru


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