====== SODIMM процессорный модуль GEM45 ======
====== Программные средства: ======
==== SAM-BA ====
Для загрузки ПО и тестирования аппаратных средств используют Atmel ISP SAM-BA v1.13+патч\\
1) [[http://www.atmel.com/dyn/resources/prod_documents/Install%20AT91-ISP%20v1.13.exe|SAM-BA 1.13]]\\
2) Обязательно применить патч на SAM-BA 1.13 [[http://www.atmel.com/dyn/resources/prod_documents/isp_patch.zip|>>]]
==== Компилятор ====
3) Codesourcery arm-2008q1
====== Компиляция ПО ======
Все дальнейшие инструкции проверены в дистрибутиве Linux Fedora Core 11, запущенном в виртуальной машине VMware Workstation 7.0.0
===== Bootstrap =====
1) Скачивают [[http://www.atmel.com/dyn/resources/prod_documents/AT91Bootstrap1.15.zip|Bootstrap 1.15]]
2) Распаковывают архив\\
unzip AT91Bootstrap1.15.zip
3) Заходят в директорию для платформы AT91SAM9G45-EKES
cd board/at91sam9g45ekes/nandflash/
4) Запускают компиляцию
make CROSS_COMPILE=/opt/arm-2008q1/bin/arm-none-linux-gnueabi-
5) Полученный файл nandflash_at91sam9g45ekes.bin используют для загрузки в NAND память модуля\\
//процедуры загрузки ПО в память модуля описаны [[sam-ba|здесь]]//
===== u-boot 1.3.4 =====
===== Ядро Linux =====
//Компиляцию ядра можно выполнить с помощью автоматизированного скрипта, либо вручную. Далее описана процедура компиляции ядра вручную.//
1) Скачиваем исходное ядро Linux 2.6.30\\
[[http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.bz2|linux-2.6.30.tar.bz2]]
2) Скачиваем исправления AT91\\
[[http://maxim.org.za/AT91RM9200/2.6/2.6.30-at91.patch.gz|2.6.30-at91.patch.gz]]
3) Скачиваем экспериментальные исправления AT91\\
[[ftp://www.at91.com/pub/linux/2.6.30-at91/2.6.30-at91-exp.tar.gz|2.6.30-at91-exp.tar.gz]]
4) Скачиваем исправления МЕНТОР ЭЛЕКТРОНИКС
[[http://mentorel.com/downloads/2.6.30-at91-me.patch.gz|2.6.30-at91-me.patch.gz]]
5) Распаковываем ядро:\\
tar xvjf linux-2.6.30.tar.bz2
6) Заходим в папку linux-2.6.30 и применяем общие исправления AT91
cd linux-2.6.30
zcat ../2.6.30-at91.patch.gz | patch -p1
7) Распаковываем экспериментальные исправления AT91
tar xzf ../2.6.30-at91.patch.gz
8) Применяем экспериментальные исправления AT91 к ядру
for p in 2.6.xx-at91-exp/*; do patch -p1 < $p ; done
9) Применяем исправления МЕНТОР ЭЛЕКТРОНИКС
zcat ../2.6.30-at91-me.patch.gz | patch -p1
8) Скачиваем файл конфигурации для ядра
wget ftp://www.at91.com/pub/linux/2.6.30-at91/at91sam9g45ekes_defconfig
cp at91sam9g45ekes_defconfig .config
make ARCH=arm oldconfig
9) Если есть необходимость, то можно изменить конфигурацию
make ARCH=arm menuconfig
10) Компилируем ядро
make ARCH=arm CROSS_COMPILE=/opt/arm-2008q1/bin/arm-none-linux-gnueabi-
11) Создаем uImage для использования в u-boot
<путь к>mkimage -A arm -O linux -C none -T kernel -a 70008000 -e 70008000 -n linux-2.6 -d arch/arm/boot/zImage uImage