ЗАО «ЗЭО»

Техническая поддержка пользователей => ОС Linux, U-Boot => Тема начата: ParshikovAlexey от 27 Ноября, 2009, 05:16:44

Название: Переменные uboot из Linux
Отправлено: ParshikovAlexey от 27 Ноября, 2009, 05:16:44
Здравствуйте. У меня на tion pro v2 установлен Linux. После установки хочу изменить переменные uboot, а именно bootargs. Как это можно сделать после загрузки Linux. Читал в описании, что это можно сделать командой fw_printenv, но при вводе пишется, что нет такой команды. Да и /etc/fw_env.config не нашел.
Помогите решить проблему.
Название: Re: Переменные uboot из Linux
Отправлено: asv от 27 Ноября, 2009, 13:07:48

/etc/fw_env.config создать с указанным содержимым
http://www.zao-zeo.ru/dokuwiki/doku.php/u-boot#доступ_к_переменным_из_linux

> но при вводе пишется, что нет такой команды

Собрать, см. их. код U-Boot, каталог tools/env

> это можно сделать командой fw_printenv

fw_printenv переименовать в fw_setenv
Название: Re: Переменные uboot из Linux
Отправлено: speculzzz от 27 Ноября, 2009, 14:43:47

fw_printenv переименовать в fw_setenv


можно просто сделать символическую ссылку fw_setenv на fw_printenv
(если конечно нужны обе утилиты)
Название: Re: Переменные uboot из Linux
Отправлено: ParshikovAlexey от 02 Декабря, 2009, 07:34:03
Скажите еще пожалуйста, как очистить флеш-память?
Название: Re: Переменные uboot из Linux
Отправлено: asv от 02 Декабря, 2009, 12:18:06
> Скажите еще пожалуйста, как очистить флеш-память?

Какую и где?

В Linux стереть весь mtd раздел: flash_eraseall, также flash_erase
В U-Boot: erase
Название: Re: Переменные uboot из Linux
Отправлено: ParshikovAlexey от 03 Декабря, 2009, 05:45:24
Не могу решить проблему с переменными U-boot.
У меня установлен Linux, который после включения грузится. Я создал файл с содержимым, как указано выше, но как собрать их я не нашел, опишите пожалуйста этот процесс поподробнее. Еще такой вопрос: если у меня установлен Linux, могу ли я загрузить только U-boot и работать в нем, не загружая Linux, при том условии, что в переменных загрузки U-boot установлены параметры о загрузке Linux? Как это можно сделать?
Название: Re: Переменные uboot из Linux
Отправлено: asv от 03 Декабря, 2009, 13:00:36
> могу ли я загрузить только U-boot и работать в нем, не загружая Linux, при том условии, что в переменных загрузки U-boot установлены параметры о загрузке Linux? Как это можно сделать?

Измените в U-Boot переменную bootcmd
Название: Re: Переменные uboot из Linux
Отправлено: asv от 03 Декабря, 2009, 13:24:22
Не могу решить проблему с переменными U-boot.
У меня установлен Linux, который после включения грузится. Я создал файл с содержимым, как указано выше, но как собрать их я не нашел, опишите пожалуйста этот процесс поподробнее.

Если U-Boot уже сконфигурирован и собран, то перейдите в tools/env исх. кода U-Boot и выполните
arm-linux-uclibc-gcc -DUSE_HOSTCC -I../../include -Ilinux-src-dir/include/ *.c -o fw_printenv
где linux-src-dir -- каталог с исх. кодами Linux, например, /home/a/projects/ep93xx/linux-2.6.20.21_trunk


Учтите, что ядро сейчас собрано с режимом mtd0 только для чтения. См в исх. кодах ядра
arch/arm/mach-ep93xx/tion_a8.c
строка 50: mask_flags:     MTD_WRITEABLE

Название: Re: Переменные uboot из Linux
Отправлено: ParshikovAlexey от 07 Декабря, 2009, 06:13:20
Если U-Boot уже сконфигурирован и собран, то перейдите в tools/env исх. кода U-Boot и выполните
arm-linux-uclibc-gcc -DUSE_HOSTCC -I../../include -Ilinux-src-dir/include/ *.c -o fw_printenv
где linux-src-dir -- каталог с исх. кодами Linux, например, /home/a/projects/ep93xx/linux-2.6.20.21_trunk


Учтите, что ядро сейчас собрано с режимом mtd0 только для чтения. См в исх. кодах ядра
arch/arm/mach-ep93xx/tion_a8.c
строка 50: mask_flags:     MTD_WRITEABLE


Если я правильно понимаю, то мне нужно установить u-boot и исходники ядра для заливки на другой машине, а потом искать там /tools/env, в котором и нужно выполнить вышеуказанную команду. Так ли это?
Еще подскажите пожалуйста как решить следующую проблему.
Я настраиваю сеть в /etc/network/interfaces, но после перезагузки все настройки сбрасываются. Как в таком случае настроить сеть, чтобы не приходилось после каждой перезагрузки выставлять параметры заново.
Название: Re: Переменные uboot из Linux
Отправлено: ParshikovAlexey от 07 Декабря, 2009, 11:25:17
Еще хотел узнать вот что:
Поставили на хосте компилятор, скомпилировали простой HELLO WORLD, скопировали скомпилированный файл на тион, пытаемся запустить, но тион выдает сообщение Permision denied. Есть ли пример того, как можно перенести приложение на тион, чтобы оно заработало?
У нас стоит Тион ПроV2, все ПО для него ставилось по ссылкам в документации.
Название: Re: Переменные uboot из Linux
Отправлено: asv от 07 Декабря, 2009, 11:28:48
Цитировать
Если я правильно понимаю, то мне нужно установить u-boot и исходники ядра для заливки на другой машине, а потом искать там /tools/env, в котором и нужно выполнить вышеуказанную команду. Так ли это?

В общих чертах так.

Цитировать
Я настраиваю сеть в /etc/network/interfaces, но после перезагузки все настройки сбрасываются. Как в таком случае настроить сеть, чтобы не приходилось после каждой перезагрузки выставлять параметры заново.

Это потому, что КФС в ramdisk'е. Можно её сделать на разделе Flash.
См. http://www.zao-zeo.ru/dokuwiki/doku.php/linux#корневая_файловая_система

PS. Для вопросов не имеющих отношения к "Переменные U-Boot из Linux" создавайте отдельные темы.
Название: Re: Переменные uboot из Linux
Отправлено: asv от 07 Декабря, 2009, 11:32:24
Еще хотел узнать вот что:
Поставили на хосте компилятор, скомпилировали простой HELLO WORLD, скопировали скомпилированный файл на тион, пытаемся запустить, но тион выдает сообщение Permision denied. Есть ли пример того, как можно перенести приложение на тион, чтобы оно заработало?
У нас стоит Тион ПроV2, все ПО для него ставилось по ссылкам в документации.

Права на исполнение:
chmod a+x hello_world