я пробую eclipse....есть под винду есть под линукс....компилятор arm-none-linux-gnueabi (Sourcery G++ Lite for ARM GNU Linux) туда прикручивается и даже что то работает нажелезке!!! А вот пробовал yagarto...ничего не вышло (ну может потому что я чайник)..даже "hello word!" не смог на железке запустить.
Кварц работает при OSCSEL=1 ( 1.8V).
Linux 2.6.24. Чип AT91SAM9260 rev A :-(
Конфигурация linux на прикрепленной картинке
В драйвере написано /* NOTE: sam9260 rev A silicon has a ROM bug which resets the
* RTT on at least some reboots. If you have that chip, you must
* initialize the time from some external source like a GPS, wall
* clock, discrete RTC, etc
*/
if (gpbr_readl(rtc) == 0)
dev_warn(&pdev->dev, "%s: SET TIME!
",
rtc->rtcdev->dev.bus_id);
Это объясняет проблему, почему надо переустанавливать часы.
Но почему rtc-at91sam9 at91_rtt.0: hctosys: unable to read the hardware ?
Похоже, что эту проблему можно решмть только с помощью REV B при отсутствии параллельной Flash. У меня плата всегда стартует с ROM BOOT.
Both the "SET TIME!" and "unable to read hardware clock" messages are
displayed because the time has not been set since power was applied to
VDDBU. The first message is displayed in at91_rtc_probe() if
gpbr_readl(rtc) returns 0 and the second message is displayed by
rtc_hctosys() when at91_rtc_readtime() returns -EILSEQ for the same
reason:
/* read current time offset */
offset = gpbr_readl(rtc);
if (offset == 0)
return -EILSEQ;
As stated in the RTC driver comments, the SAM9260 Rev A boot ROM will
set the RTT value to zero clearing out any elapsed time since the clock
was last set. Workarounds for this are to not use the boot ROM by
booting from an external parallel flash device or get the time from an
external device such as a DS1302, GPS or a network time server.
Попробуйте понять какая именно инструкция скрипта вызывает ошибку...
Единственное, что по моему мнению может быть - это попытка размонтировать занятую каким-либо процессом ФС... хотя, в таком случае, у меня системой выдается вполне вменяемое объяснение происходящего с отказом.
Собственно никакие скрипты не нужны... одна строчка...
Монтирование файла с образом файловой системы:
mount -o loop rootfs /mnt
Демонтирование:
umount /mnt
p.s. если /mnt при демонтировании чем-либо используется - umount не произойдет с диагнозом resource busy. Обычно для монтирования/размонтирования требуются привилегии root, если явно не дана такая привилегия рутом юзеру.
см. также:
man mount
man umount
p.s. в buildroot нет необходимости что-то монтировать, используется FakeRoot, процесс несколько сложнее, но не требует исключительных прав и полностью автоматизирован....
Вопрос по размеру проги. Выполнил все шаги со страницы 1 (спасибо ув.SimpleSoft), в результате получил прогу размером 450 кб. Это нормально для "Hello word"или я опцию какую забыл поставить? Все библиотеки отключил, кроме Stdio.