Ник:
Пароль:

Контакты

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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:6
Форум » starterkit.ru » Отладочные платы » SK-AT91SAM9XE512-SIMXXX
Не получается сохранить файл во Flash-памяти платы
Gregory
Добавлено 27.07.2010 14:33
0
Сообщение: 1
Gregory
0

Регистрация: 23.07.2010
Здрасвтуйте, Господа.

У нас возникла следующая проблема. Пытаемся настроить GPRS. В инете нашли инструкцию. В ней среди всего прочего написано: «Заходим в каталог /etc/ppp/peers/ и создаём там файл beeline следующего содержания...» Прекрасно, сперва создали две директории, затем создали файл, записали в него всё что нам нужно при помщи редактора vi, а затем отключили питание платы. Когда снова плата была включена мы не обнаружили ни файла, ни директорий ppp и peers. У нас возникло такое предположение, что сейчас во флеше лежит архив, состоящий из ядра линукс и коневой файловой системы. При включении питания Uboot распаковывыет в озу ядро, созадёт в озу виртуальный диск, и уже из озу запускает ядро. Соответственно любые изменения файловой системы происходят в озу и обратно не архивируются, и после перезапуска системы теряются. Подскажите, пожалуйста, как нам поступить в подобной ситуации?
Спуститься к концу Подняться к началу
Персональная информация
fsat
Добавлено 27.07.2010 22:54 Редактировалось 27.07.2010 23:07 Сообщение: 2
fsat
0

Регистрация: 13.07.2010
Загрузка системы происходит при помощи initramfs (если вы ничего не меняли), а в таком случае ВСЕ, что вы создаете или меняете находится ТОЛЬКО в оперативной памяти. Если вы посмотрите на вывод команды mount (без параметров) - вы увидите напрямую смонтированный раздел (что-то про mtd). Данные из этого раздела (может быть) не потеряются при выключении питания (а если перед выключением выполнить команду sync - точно не потеряются). Может быть вас спасет изменение конфигурации с указанием абсолютных путей на этот файл, находящийся на этом разделе. Либо пересоздание rootfs (что на форуме обсуждалось).
Сказать на 100% не могу, поскольку нет системы под рукой.
Может немного неясно выразился, но всегда готов ответить на вопросы.
Спуститься к концу Подняться к началу
Персональная информация
klon4uk
Добавлено 25.09.2012 10:58 Редактировалось 25.09.2012 11:01 Сообщение: 3
klon4uk
5

Пункты: 5960
Регистрация: 20.06.2012
есть плата сделанная на основе SK-MAT91SAM9XE512
раньше ей занимался не я, tootfs создаеться с ext2
вопрос можно ли этот файл монтировать и записывать на него, а не держать все в оперативке, если можно то как я понимаю нужно просто правильно подправить раздел загрузки в ядре
пока что не получаеться, пробовал что то типа этого :
mem=64M console= ttyS0,115200 root=/dev/mtdblock1 rootfstype=ext2 rw
так же буду рад ссылкам вроде как искал, но видимо запрос не правильно строю...
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 25.09.2012 13:47 Редактировалось 25.09.2012 13:52 Сообщение: 4
sasamy
4.70

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

вроде как искал, но видимо запрос не правильно строю...


ext2 - ФС для блочных устройств, /dev/mtdblock1 как видно из названия - устройство mtd, для них используются специальные ФС. Так что либо ext2 на блочном устройстве (например mmc/sd, usb flash) либо mtdblock (по видимому в вашем случае NAND) со сециальной ФС типа jffs, ubifs etc.
Спуститься к концу Подняться к началу
Персональная информация
klon4uk
Добавлено 25.09.2012 15:40 Редактировалось 25.09.2012 15:40 Сообщение: 5
klon4uk
5

Пункты: 5960
Регистрация: 20.06.2012
ну мне надо как раз на nand запустить...
странно не нашол где включать ubifs в ядре...
а при jffs2 выдает следующее


jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x007a0024: 0xcc33 instead
Further such events for this erase block will not be printed
Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes
empty_blocks 1983, bad_blocks 1, c->nr_blocks 2046
VFS: Cannot open root device "mtdblock1" or unknown-block(31,1)
Please append a correct "root=" boot option; here are the available partitions:
1f00 256 mtdblock0 (driver?)
1f01 261888 mtdblock1 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,1)
[<c002667c>] (unwind_backtrace+0x0/0xdc) from [<c025a300>] (panic+0x34/0x110)
[<c025a300>] (panic+0x34/0x110) from [<c0008e38>] (mount_block_root+0x25c/0x2b4)
[<c0008e38>] (mount_block_root+0x25c/0x2b4) from [<c0009054>] (prepare_namespace+0x158/0x1bc)
[<c0009054>] (prepare_namespace+0x158/0x1bc) from [<c0008404>] (kernel_init+0xb8/0xe8)
[<c0008404>] (kernel_init+0xb8/0xe8) from [<c0039644>] (do_exit+0x0/0x5a4)
[<c0039644>] (do_exit+0x0/0x5a4) from [<00000003>] (0x3)
до этого минуту где то сканил память

строка инита такая
mem=64M console= ttyS0,115200 root=/dev/mtdblock1 rootfstype=jffs2 rw
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 25.09.2012 21:44 Сообщение: 6
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
ну мне надо как раз на nand запустить...
странно не нашол где включать ubifs в ядре...

поддержка включается в двух местах:
- в драйверах->mtd devices
- в разделе файловых систем
надо включить в обоих местах..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
klon4uk
Добавлено 26.09.2012 12:24 Сообщение: 7
klon4uk
5

Пункты: 5960
Регистрация: 20.06.2012
на ubifs так же ругаеться ==
кстати то что я это гружу в оперу командами
tftp 23100000 rootfs.ubifs
tftp 20400000 uImage
bootm 20400000

вот лог ошибки

Цитата

ALSA device list:
No soundcards found.
TCP cubic registered
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
lib80211: common routines for IEEE802.11 drivers
rtc-at91sam9 at91_rtt.0: hctosys: unable to read the hardware clock
UBIFS error (pid 1): ubifs_get_sb: cannot open "/dev/root", error -22
List of all partitions:
1f00 256 mtdblock0 (driver?)
1f01 261888 mtdblock1 (driver?)
No filesystem could mount root, tried: ubifs
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,1)
[<c002667c>] (unwind_backtrace+0x0/0xdc) from [<c0285554>] (panic+0x34/0x110)
[<c0285554>] (panic+0x34/0x110) from [<c0008e38>] (mount_block_root+0x25c/0x2b4)
[<c0008e38>] (mount_block_root+0x25c/0x2b4) from [<c0009054>] (prepare_namespace+0x158/0x1bc)
[<c0009054>] (prepare_namespace+0x158/0x1bc) from [<c0008404>] (kernel_init+0xb8/0xe8)
[<c0008404>] (kernel_init+0xb8/0xe8) from [<c0039644>] (do_exit+0x0/0x5a4)
[<c0039644>] (do_exit+0x0/0x5a4) from [<00000003>] (0x3)


кроме ядра надо ещё какие то настройки менять в билдруте например ?
у ubi файловой системы какие должны быть параметры в билдруте ???
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 26.09.2012 15:33 Сообщение: 8
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
дак это.. так рутовая в ОЗУ , имхо, работать не будет.. ее надо прошить в нанд и объяснить ядру в файле платы разбивку нанда.. и вот тогда ядро при загрузке запустит поддержку ubifs, которая найдет разбиение нанда, отсчитает требуемый MTD и если он валиден, то смонтирует и тыпы..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
klon4uk
Добавлено 27.09.2012 08:31 Сообщение: 9
klon4uk
5

Пункты: 5960
Регистрация: 20.06.2012
блин я её хотел сначало как нить отладить что ли...
думал и из озу все прочитаеться xDDD
хотя сомнения были конечно же...
а как обьяснить ядру про разбивку нанда ???
где обьяснять я кажись понял...всмысле в каком файле....
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 27.09.2012 10:26 Сообщение: 10
Jury093
4.5

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

к плате кита обычно прилагается полный комплект исходников из которых генерится софт для платы.. в т.ч. исходники ядра.. настройки для платы смотрите в arch/arm/mach-at91/board-sam92-что-то там.c, рядом должен быть объектник с расширением *.o
в этом сишном файле есть структура разбивки нанда..

для отладки удобно мигрировать рутовую на внешний накопитель типа SD или USB-flash и исследовать работу с нандом и ubifs оттуда..
как - читайте форум..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » SK-AT91SAM9XE512-SIMXXX