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

 
 
> AT91RM9200/linux, какое ядро/ОС вы используете?
yuriypro
сообщение Mar 17 2005, 11:51
Сообщение #1





Группа: Новичок
Сообщений: 10
Регистрация: 8-12-04
Пользователь №: 1 405



Я на самодельной плате завел линукс 2.4.27 с патчем от санпиплов. В принципе меня оно устраивает в том смысле что все работает. Единственное хочется полноценной поддержки USB 2.0, которая есть у 2.6. Есть ли у кого опыт с 2.6 на AT91RM9200?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
d__
сообщение Mar 21 2005, 12:10
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 26-08-04
Пользователь №: 548



Ну по каким адресам должен лежать кернель, по каким адресам должен лежать рамдиск, как происходит процесс раскрутки изапуска кернеля-- где-то это все описано но как это найти?
Go to the top of the page
 
+Quote Post
yuriypro
сообщение Mar 21 2005, 12:38
Сообщение #3





Группа: Новичок
Сообщений: 10
Регистрация: 8-12-04
Пользователь №: 1 405



Цитата(d__ @ Mar 21 2005, 15:10)
Ну по каким адресам должен лежать кернель, по каким адресам должен лежать рамдиск, как происходит процесс раскрутки изапуска кернеля-- где-то это все описано но как это найти?
*


Куда его класть не суть важно, этим занимается загрущик. Я использую U-Boot (http://u-boot.sourceforge.net/). Его же пользуют и атмеловцы. Есть и другие лоадеры, но мне и с этим нормально. Адрес рамдиска передается через параметр ядра. В У-Буте есть mkimage, который делает из имиджа ядра то, что потребно лоадеру.

По-поводу загрузки есть в кернеле: linux/Documentation/arm/Booting

Для рамдиска я заюзал cramfs, хотя это не принципиально, просто для него есть mkcramfs (http://developer.axis.com/), которая ест МЕТА файлы с описанием девайсовых нодов.

Может я чего не понимаю и в 2.6 все по другому?
Go to the top of the page
 
+Quote Post
vvj
сообщение Oct 25 2005, 17:32
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 46
Регистрация: 20-01-05
Пользователь №: 2 090



Цитата(yuriypro @ Mar 21 2005, 15:38)
В У-Буте есть mkimage, который делает из имиджа ядра то, что потребно лоадеру.
Интересная утилита этот mkimage - из 5ти вариантов сгенерированного им образа для uBoot'а, грузиться только один. Смотрю - а он к одному и тому же исходному zImage может добавить разные header'ы! При одинаковых параметрах и иходном зипованом бинарнике! Что он туда и время пишет? А большинство сгенерированных образов или виснут при их вызове (uBoot'ом) или перегружают проц (очевидно exeption). Повезло ещё что первые образы были удачные, ведь поначалу на подправленый мной kernel грешил.
Попробовал взять mkimage от версии (uBoot'а) 1.3 для linux'а, пока юзаю 1.1 для cygwin'а - таже фигня.
Может кто сталкивался?
Ещё интересная вещь - когда uBoot распаковывает образ, обращает на себя внимание сообщение насчёт Bad gzipped data:
Код
...
## Booting image at 20008000 ...
  Image Name:  
  Image Type:   ARM Linux Kernel Image (gzip compressed)
  Data Size:    810360 Bytes = 791.4 kB
  Load Address: 20008000
  Entry Point:  20008000
  Verifying Checksum ... OK
  Uncompressing Kernel Image ... Error: Bad gzipped data
GUNZIP ERROR - must RESET board to recover
OK
No initrd
## Transferring control to Linux (at address 20008000) ...

Starting kernel ...

Uncompressing Linux...................................................... done, booting the kernel.

Linux version 2.6.13.3 (root@linux) (gcc version 3.4.1) #1...

Это не смертельно? А то kernel вроде работоспособен smile3046.gif
Go to the top of the page
 
+Quote Post
Hercules
сообщение Oct 26 2005, 07:04
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 2-03-05
Пользователь №: 3 000



Цитата(vvj @ Oct 25 2005, 20:32)
Цитата(yuriypro @ Mar 21 2005, 15:38)
В У-Буте есть mkimage, который делает из имиджа ядра то, что потребно лоадеру.
Интересная утилита этот mkimage - из 5ти вариантов сгенерированного им образа для uBoot'а, грузиться только один. Смотрю - а он к одному и тому же исходному zImage может добавить разные header'ы! При одинаковых параметрах и иходном зипованом бинарнике! Что он туда и время пишет? А большинство сгенерированных образов или виснут при их вызове (uBoot'ом) или перегружают проц (очевидно exeption). Повезло ещё что первые образы были удачные, ведь поначалу на подправленый мной kernel грешил.
Попробовал взять mkimage от версии (uBoot'а) 1.3 для linux'а, пока юзаю 1.1 для cygwin'а - таже фигня.
Может кто сталкивался?
Ещё интересная вещь - когда uBoot распаковывает образ, обращает на себя внимание сообщение насчёт Bad gzipped data:
Код
...
## Booting image at 20008000 ...
  Image Name:  
  Image Type:   ARM Linux Kernel Image (gzip compressed)
  Data Size:    810360 Bytes = 791.4 kB
  Load Address: 20008000
  Entry Point:  20008000
  Verifying Checksum ... OK
  Uncompressing Kernel Image ... Error: Bad gzipped data
GUNZIP ERROR - must RESET board to recover
OK
No initrd
## Transferring control to Linux (at address 20008000) ...

Starting kernel ...

Uncompressing Linux...................................................... done, booting the kernel.

Linux version 2.6.13.3 (root@linux) (gcc version 3.4.1) #1...

Это не смертельно? А то kernel вроде работоспособен smile3046.gif
*


А почему у Вас сам скомпрессированный имидж лежит по тому же адресу, куда он должен грузиться?
Цитата
Код
## Booting image at 20008000 ...
  ...
  Load Address: 20008000
  ...

По идее, адрес, где скомпрессированный имидж лежит, и адрес куда он затем после распаковки грузится должны быть разные. А иначе Вы рискуете запортить свой скомпрессированный имидж.

Нормальная ситуация, когда скомпрессированный имидж лежит, например, во флешке, а u-Boot его затем из флешки распаковывает и грузит в SDRAM.

Hercules.


--------------------
Best regards,
Hercules
Go to the top of the page
 
+Quote Post
vvj
сообщение Oct 26 2005, 08:28
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 46
Регистрация: 20-01-05
Пользователь №: 2 090



Цитата(Hercules @ Oct 26 2005, 10:04)
А почему у Вас сам скомпрессированный имидж лежит по тому же адресу, куда он должен грузиться?Hercules.

Сам пока не задумывался - до размещения linux'а во Flash дело не дошло. Пользовался инструкциями из документа "AT91RM9200DK U-Boot Developper Manual" :
Код
($U-BOOT-PATH)/tools > ./mkimage -A arm -O linux -T kernel -C gzip -a
0x20008000 -e 0x20008000 -d linux.bin.gz uImage /tftpboot/
и
Код
Uboot> tftp 20008000 uImage
Uboot> tftp 21100000 ramdisk
Uboot> setenv bootargs root=/dev/ram rw initrd=0x21100000,
60000000 ramdisk_size=15360 console=ttyS0,115200 mem=32M
Uboot> saveenv
Uboot> bootm 20008000 21100000
Go to the top of the page
 
+Quote Post
Hercules
сообщение Oct 26 2005, 09:38
Сообщение #7


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 2-03-05
Пользователь №: 3 000



Цитата(vvj @ Oct 26 2005, 11:28)
Цитата(Hercules @ Oct 26 2005, 10:04)
А почему у Вас сам скомпрессированный имидж лежит по тому же адресу, куда он должен грузиться?Hercules.

Сам пока не задумывался - до размещения linux'а во Flash дело не дошло. Пользовался инструкциями из документа "AT91RM9200DK U-Boot Developper Manual" :
Код
($U-BOOT-PATH)/tools > ./mkimage -A arm -O linux -T kernel -C gzip -a
0x20008000 -e 0x20008000 -d linux.bin.gz uImage /tftpboot/
и
Код
Uboot> tftp 20008000 uImage
Uboot> tftp 21100000 ramdisk
Uboot> setenv bootargs root=/dev/ram rw initrd=0x21100000,
60000000 ramdisk_size=15360 console=ttyS0,115200 mem=32M
Uboot> saveenv
Uboot> bootm 20008000 21100000

*


Вы немного неправильно делаете (у Вас неправильно указан адрес, куда нужно грузить скомпрессированное ядро linux-а). Нужно где-то так:
Код
Uboot> tftp 21000000 uImage
Uboot> tftp 21100000 ramdisk
Uboot> setenv bootargs root=/dev/ram rw initrd=0x21100000,60000000 ramdisk_size=15360 console=ttyS0,115200 mem=32M
Uboot> saveenv
Uboot> bootm 21000000

т.е. мы грузим скомпрессированное ядро linux-а по адресу 0x21000000, а ramdisk по адресу 0x21100000. Затем распаковывается и запускается ядро linux-а (команда bootm). Причем ядро после распаковки будет лежать начиная с адреса 0x20008000 и туда же будет передано управление т.к. "Load Address" так же был установлен на 0x20008000 (судя по той информации, что Вы привели "($U-BOOT-PATH)/tools > ./mkimage ..."). Указывать в команде bootm еще и адрес, где у нас лежит ramdisk не нужно, так как его распаковывать будет ядро linux-а (ему будет передана информация о том где лежит ramdisk в аргументах (bootargs)).

Командой setenv вы устанавливаете переменную bootargs в нужное значение. А затем командой saveenv Вы сохраняете все свое окружение во флэшку. При последующей загрузки u-Boot-а все сохраненные переменные будут востановлены. Т.е. до тех пор пока Вы сами не удалите переменную bootargs (например, командой setenv bootargs без указания значения переменной или сотрете тот сектор флешки, где у Вас располагаются переменные окружения) все последующие запуски linux-а можно делать так:
Код
Uboot> tftp 21000000 uImage
Uboot> tftp 21100000 ramdisk
Uboot> bootm 21000000

т.е. уже не нужно вы полнять команды:
Код
Uboot> setenv bootargs root=/dev/ram rw initrd=0x21100000,60000000 ramdisk_size=15360 console=ttyS0,115200 mem=32M
Uboot> saveenv


Вот в кратце вроде все. Пробуйте.
Hercules

PS. Надеюсь у Вас на tftp сервере, с которого осуществляется загрузка, скомпрессированное ядро лежит именно под именем uImage, а RAM диск под именем ramdisk.


--------------------
Best regards,
Hercules
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- yuriypro   AT91RM9200/linux   Mar 17 2005, 11:51
- - yuriypro   неужели никто линукс не пользовал на атмеле?   Mar 18 2005, 13:15
- - d__   Ну я уже близок к тому, чтобы оживлять ядро 2.6.11...   Mar 21 2005, 08:23
|- - yuriypro   Цитата(d__ @ Mar 21 2005, 11:23)Ну я уже близ...   Mar 21 2005, 11:46
- - d__   За прошедшую неделю узнал очень много нового, наше...   Mar 27 2005, 20:36
|- - yuriypro   Цитата(d__ @ Mar 27 2005, 23:36)За прошедшую ...   Mar 28 2005, 13:14
|- - dch   Цитата(d__ @ Mar 27 2005, 23:36)в /dev директ...   Mar 31 2005, 01:28
- - d__   Ха! 30 секунд полет нормальный! Uncompress...   Apr 6 2005, 09:31
- - alexf   Я пытаюсь использовать 2.4.21rmk2 с платой от Kwik...   Apr 19 2005, 06:51
- - d__   Траблы с установкой MAC адреса: не удается с помощ...   Apr 27 2005, 06:24
|- - dch   Цитата(d__ @ Apr 27 2005, 09:24)Траблы там сд...   Apr 27 2005, 17:15
|- - alexf   Цитата(dch @ Apr 27 2005, 10:15)Цитата(d__ ...   Apr 28 2005, 06:15
- - d__   Да, очень хорошая подсказка, показала правильное н...   May 2 2005, 07:50
|- - alexf   Цитата(d__ @ May 2 2005, 00:50)Только надо не...   May 2 2005, 09:21
|- - Samum 095   Требуется плата - Контроллер AT91RM9200 (Atmel) -...   May 16 2005, 06:52
|- - dch   Цитата(Samum 095 @ May 16 2005, 09:52)Требует...   May 17 2005, 02:00
|- - dch   Поддержка AT91RM9200 для uClinux http://www.ucrou...   Jul 2 2005, 06:18
- - d__   А вот уважаемые коллеги подскажите что-нибудь про ...   May 2 2005, 10:46
- - klogg   Я QNX завёл. Правда USB не поднимал - мне нет необ...   Jul 2 2005, 10:05
|- - dch   Цитата(klogg @ Jul 2 2005, 13:05)Я QNX завёл ...   Jul 2 2005, 15:15
||- - klogg   Цитата(dch @ Jul 2 2005, 18:15)Цитата(klogg ...   Jul 5 2005, 06:59
|- - 7277   Цитата(klogg @ Jul 2 2005, 13:05)Я QNX завёл....   Sep 7 2005, 13:14
- - vzn   А не подскажет ли народ близкий к AT91RM9200 какой...   Jul 4 2005, 13:04
|- - dch   >open source/hardware(кроме atmel EK) http://ww...   Jul 4 2005, 16:10
||- - vzn   Цитата(dch @ Jul 4 2005, 19:10)>open sourc...   Jul 5 2005, 07:28
||- - dch   Цитата(vzn @ Jul 5 2005, 10:28)PCAD open sour...   Jul 5 2005, 10:45
|- - klogg   Цитата(vzn @ Jul 4 2005, 16:04)А не подскажет...   Jul 5 2005, 07:55
- - vvj   Благодарю за исчерпывающий ответ, извиняюсь за то,...   Oct 26 2005, 10:26
|- - RRRR   Цитата(vvj @ Oct 26 2005, 13:26)ЗЫ2: Товарищ ...   Oct 26 2005, 12:36
- - vvj   Убрал параметр -C gzip из mkimage, всё равно (uBoo...   Oct 26 2005, 13:31
|- - RRRR   Цитата(vvj @ Oct 26 2005, 16:31)Убрал парамет...   Oct 26 2005, 15:33
|- - vvj   Цитата(RRRR @ Oct 26 2005, 18:33)Попробуйте c...   Oct 26 2005, 18:48
|- - Hercules   А можно глупый вопрос? Судя по: Цитата(vvj @ ...   Oct 27 2005, 06:53
- - Hercules   Вот нашел у себя книжечку. Может пригодиться. Прав...   Oct 27 2005, 07:09
|- - vvj   Цитата(Hercules)Вот нашел у себя книжечку. Может п...   Oct 27 2005, 08:22
- - d__   Заговор имени компакт флеша на AT91RM9200DK. Вот у...   Nov 8 2005, 23:37
- - Dimchansky   Цитата(yuriypro @ Mar 21 2005, 14:38) Я и...   May 30 2006, 08:18


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

 


RSS Текстовая версия Сейчас: 25th July 2025 - 12:39
Рейтинг@Mail.ru


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