Warning: touch() [function.touch]: Unable to create file /home/starterkit/starterkit.ru/html/error.log because Permission denied in /home/starterkit/starterkit.ru/html/errorhandler.php on line 51
initramfs, конфигурация - Embedded Linux - Форум - starterkit.ru
Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:3
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:7
Форум » starterkit.ru » Embedded Linux
initramfs, конфигурация
Franky
Добавлено 29.09.2014 11:44
0
Сообщение: 1
Franky
5

Пункты: 5030
Регистрация: 29.06.2010
прошу подсказать знающих людей, как настраивается initramfs?
Мне нужно сделать так, чтобы при начальной инициализации (до загрузки корневой ФС) создавалось устройство /dev/mmcblk0p1, чтобы запустить рутовую именно с mmc.
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 29.09.2014 11:48 Сообщение: 2
Pavel Ivanchenko
Admin
4.39

Пункты: 91311
Регистрация: 24.03.2009
Пол: Мужчина
В menuconfig ядра ставится галка initramfs и там же указывается путь до файлов корневой ФС, на этом все.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 29.09.2014 12:00 Редактировалось 29.09.2014 12:03 Сообщение: 3
sasamy
4.70

Пункты: 76182
Регистрация: 14.08.2009
Цитата

чтобы запустить рутовую именно с mmc


Только зачем для этого initramfs если модули слинкованы статически ? добавьте в параметрах передаваемых ядру rootwait - полагаю в этом проблема а не в создании файла /dev/mmcblk0p1
Спуститься к концу Подняться к началу
Персональная информация
Franky
Добавлено 29.09.2014 12:25 Сообщение: 4
Franky
5

Пункты: 5030
Регистрация: 29.06.2010
на моей плате сейчас рутовая пишется в виде бинарника на внутреннюю флешь. Файловая система только для чтения. Соответственно ноды устройств не создаются автоматически. Чтобы создать ноду необходимо писать файл руками, потом кодировать рутовую в bin и заливать на плату.
Соответственно, просто перенос файлов рутовой на mmc и строка "rootfs=/dev/mmcblk0p1" не работает.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 29.09.2014 13:16 Редактировалось 29.09.2014 13:21 Сообщение: 5
sasamy
4.70

Пункты: 76182
Регистрация: 14.08.2009
Не понял - причем тут рутовая во флешь и зачем что -то создавать . Передайте в параметрах ядра что корневая на mmc и что надо ожидать готовность

root=/dev/mmcblk0p1 rootwait rw

если ядро старое - создайте таблицу файлов устройств в /dev статически при сборке корневой, хотя строго говоря ядру эти файлы устройств для монтирования root не нужны - они нужны программам в юзерспейс.
Спуститься к концу Подняться к началу
Персональная информация
Franky
Добавлено 29.09.2014 13:39 Сообщение: 6
Franky
5

Пункты: 5030
Регистрация: 29.06.2010
к сожалению, при "root=/dev/mmcblk0p1 rootwait rw" система ожидает бесконечно.
стало быть, /dev/mmcblk0p1 не существует.

Если я размещаю рутовую на внутренней флеши, карта /dev/mmcblk0p1 появляется, так как в рутовой предварительно я создал файл соответствующий(без этого файла ничего не появляется)
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 29.09.2014 13:53 Сообщение: 7
sasamy
4.70

Пункты: 76182
Регистрация: 14.08.2009
Цитата

Если я размещаю рутовую на внутренней флеши, карта /dev/mmcblk0p1 появляется, так как в рутовой предварительно я создал файл соответствующий(без этого файла ничего не появляется)


с вами как с марсианином разговариваешь - не нужны ядру файлы устройств, от того что его создаешь вручную дайвер из космоса не возникнет сам. В дефолтном конфиге ядра вашего uclinux я не нашел драйвер хоста mmc, там даже spi нет.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 29.09.2014 14:10 Сообщение: 8
sasamy
4.70

Пункты: 76182
Регистрация: 14.08.2009
Похоже я все же не прав - там есть что-то про sd и spi только в директории arch/arm/mach-stm32 и сделано через задницу - особенность uclinux :) в любом случае как делают в нормальном Linux тут скорей всего работать не будет.
Спуститься к концу Подняться к началу
Персональная информация
Franky
Добавлено 30.09.2014 10:56 Сообщение: 9
Franky
5

Пункты: 5030
Регистрация: 29.06.2010
не смею больше занимать чужое время.
Последний вопрос:
у меня есть файл в корне ramfs.img
как он создаётся? мне необходимо добавить в конфиг создания этого файла строчки

nod /dev/mmcblk0 0666 0 0 b 179 0
nod /dev/mmcblk0p1 0666 0 0 b 179 1

не знаю куда писать
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 30.09.2014 11:58 Сообщение: 10
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
у меня есть файл в корне ramfs.img
как он создаётся? мне необходимо добавить в конфиг создания этого файла строчки

он создается из каталога с рутовой..
возьмите свой img, смонтируйте его куда угодно, поправьте в содержимом требуемое и закрутите обратно..
гуглить "mount img loop"
либо ищите куда билдрут складирует будущую рутовую и своим скриптом подливайте свое, потом билдрут все сам завернет в img

Цитата
не знаю куда писать

имхо, в разделе "О линуксе" создаете новую тему, чтобы потом не копаться в груде несозвучных по тематике..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux