Логин root
, пароля нет или root
. Т.е. платы поставляются без пароля для учётной записи суперпользователя, не делайте так дома! Задайте пароль командой passwd
.
В консоли U-Boot и Linux по умолчанию используются следующие настройки последовательного порта:
Используйте загрузчик U-Boot.
Для того что бы запустить Linux вам необходимо иметь загрузчик записанный во Flash-память.
После включения системы с подключённым по последовательному порту терминалом (например, TerraTerm, HyperTerminal, Minicom, GtkTerm и т.д.) с соответствующими настройками. См. документацию на загрузчик Redboot.
fconfig -i
fis init -f
reset
Теперь можно загружать собранный образ Linux.
По умолчанию, адрес загрузки ядра — 0x80000
, ramdisk — 0x800000
.
Для загрузки по Ethernet на хосте должен быть запущен http-сервер:
ramdisk.gz
в память (IP-адрес хоста на котором находится http-сервер: 10.42.42.100, файл лежит в корне):load -r -v -b 0x800000 -m http -h 10.42.42.100 /ramdisk.gz
zImage
в память:load -r -v -b 0x80000 -m http -h 10.42.42.100 /zImage
<size_of_ramdisk.gz_in_bytes>
— размер ramdisk.gz
в байтах), с передачей параметров ядра:exec -r 0x800000 -s size_of_ramdisk.gz_in_bytes -c "root=/dev/ram console=ttyAM0"
Для загрузки по последовательному порту с использованием протокола ymodem
(показаны только пункты 1 и 2, 3-ий пункт такой же как и при загрузке по Ethernet):
ramdisk.gz
), где нужно выставить протокол ymodem
:load -r -v -b 0x800000 -m ymodem
zImage
):load -r -v -b 0x80000 -m ymodem
Для работы с новым ядром Linux необходимо обновить Redboot (http://groups.google.com/group/tion_sbc/web/new_redboot.tar.gz).
Процедура записи пригодна для одноплатных компьютеров на базе Cirrus Logic EP93xx. Для одноплатных компьютеров на базе Marvell PXA270 требуется JTAG, см. OpenOCD.
Для записи Flash по последовательному порту для EP93xx используется консольная утилита download
, см. download. Параметры утилиты download
можно посмотреть выполнив download -h
.
BOOT0
снятаdownload u-boot.bin
, где u-boot.bin
— файл записываемого загрузчика: Waiting for the board to wakeup...
Downloading first boot code...(100%) Program the nor FLASH. Flash Manufacture ID:001f, Device ID:01c8 Programming the FLASH...(100%) Successfully programmed 'u-boot.bin'.
BOOT0
См. также: CF-карта памяти как КФС.
Перенести содержимое ramdisk.gz
на CF-карту:
ramdisk.gz
:gunzip ramdisk.gz
mkdir my_ramdisk
mount -o loop ramdisk my_ramdisk
Если вы хотите изменить содержимое ramdisk, то после внесения изменений в директории my_ramdisk
:
umount my_ramdisk
gzip -9 ramdisk
Если вы хотите переместить КФС на CF-карту, то скопируйте содержимое директории my_ramdisk
на предварительно отформатированную (файловая система ext2 или ext3) CF-карту, например:
cp -a my_ramdisk/* /media/cf
, где /media/cf
— путь к примонтированной CF-карте.
Теперь можно установить CF-карту на одноплатный компьютер и запустить ядро Linux с командной строкой подобно этой:
"root=/dev/hda1"
,
где /dev/hda1
— ваше IDE-устройство. После загрузки ядра, оно будет использовать КФС на CF-карте (если не используется ramdisk).
Возможны следующие причины:
-static
)chmod a+x test
Написал пример:
#include <stdio.h> int main() { printf("Hello world\n"); return 0; }
Собрал:
arm-linux-gcc -Wall -O2 -o test main.c
Компилируется без ошибок и запускается на выполнение, но ничего не выводит.
Так как в системе уже есть программа с именем test
, она и запускается если
указан не абсолютный путь к программе (см. which test
).
Следует запускать программу по абсолютному пути или из текущей директории как ./test
.
Убедитесь в том, что при конфигурации загрузчика Redboot (команда fconfig -i
) вы правильно инициализировали
параметры сети.
Пример типичной конфигурации Redboot:
Run script at boot: false Use BOOTP for network configuration: false Gateway IP address: 10.42.42.1 Local IP address: 10.42.42.201 Local IP address mask: 255.255.255.0 Default server IP address: 10.42.42.1 Set eth0 network hardware address [MAC]: true eth0 network hardware address [MAC]: 0x0E:0x00:0x00:0xEA:0x18:0xF0 GDB connection port: 9000 Force console for special debug messages: false Network debug at boot time: false
После установки настроек необходимо произвести перезагрузку.
Используйте образы для EDB9312. EDB9315 подразумевает отладочную плату от Cirrus Logic. На ней стоит процессор EP9315, но есть отличия в схеме по сравнению с платами серии Тион.
Например, на платах серии Тион для сигнала CS SDRAM используется CS3, а на EDB9315 — CS0, следовательно при загрузке ядра Linux память будет сконфигурирована неверно. Это касается загрузчиков, Windows CE и т.д.
См. также cайт ЗАО "ЗЭО".