1 Список используемых терминов, сокращений. 6
2 Используемый стиль 7
3 Список используемой литературы. 8
4 Описание процессора AT91RM9200 9
4.1 Микроконтроллер на основе процессора ARM920T ™ 9
4.2 Структурная схема микроконтроллера AT91RM9200: 12
4.3 Общее описание: 12
5 Структурная схема разрабатываемой аппаратной платформы 15
5.1 структурная схема. 15
6 Необходимый перечень ПО 16
6.1 Используемое ПО в процессе компиляции 16
6.1.1 Базовое ПО 16
6.1.2 Toolchain-1 16
6.1.3 Toolchain-2 16
6.1.4 Ядро (linux kernel): 16
6.2 Конфигурация ПО для AT91RM9200_SK 17
6.3 Установка и настройка tftpd 18
6.3.1 Сборка TFTP: 18
7 Настройка периферии 19
7.1 Тактовая частота процессора и памяти. 19
8 Romboot 23
8.1 Назначение 23
8.2 Выполняемые действия программой 23
8.3 Возможности 23
8.4 Подготовка к сборке Romboot 23
8.5 main.cpp: правка времени ожидания 24
8.6 Тактовая частота, SDRAM-память 24
8.6.1 main.h: правка тактовой частоты процессора 25
8.6.2 init.cpp: правка типа и тактовой частоты и частоты памяти 25
8.7 SPI DataFlash-память 28
8.7.1 dataflash.cpp: конфигурация количества микросхем Flash-памяти 28
8.7.2 dataflash.h: конфигурация количества микросхем Flash-памяти 28
8.7.3 dataflash.cpp: инициализация 29
8.7.4 at45.cpp - конфигурация количества микросхем Flash-памяти 29
8.8 Компиляция программы Romboot 31
8.9 Программирование SPI Dataflash. 31
9 U-boot 35
9.1 Назначение 35
9.2 Возможности 35
9.2.1 u‑boot‑1.1.1/board/RM9200/RM9200.c – номер архитектуры 35
9.3 u‑boot‑1.1.1/include/configs/RM9200.h – файл конфигурации платы 36
9.4 Дополнительная SPI DataFlash 48
9.4.1 u‑boot‑1.1.1/cpu/at91rm9200/at45.c – драйвер DataFlash памяти AT45DBxxx 48
9.5 Драйвер Ethernet - LXT972 49
9.5.1 u‑boot‑1.1.1/include/lxt971a.h 50
9.5.2 u‑boot‑1.1.1/include/at91rm9200_net.h – подключение header-драйвера 50
9.5.3 u‑boot‑1.1.1/board/RM9200/at91rm9200_ether.c (ET_ENABLE) 51
9.5.4 u‑boot‑1.1.1/board/RM9200/at91rm9200_ether.c – добавление драйвера LXT972 52
9.5.5 u‑boot‑1.1.1/include/configs/RM9200.h - набор сетевых команд 58
9.6 Компиляция u-boot-1.1.1 59
9.6.1 Перечень программ и утилит для сборки u-boot-1.1.1 59
9.6.2 Содержимое файла readme.u‑boot.patches 60
9.7 Вычисление смещения карты памяти. 62
9.8 Правка Makefile 63
9.9 Сборка u‑boot‑1.1.1 63
9.10 Запись u boot 1.1.1 в DataFlash из Romboot 64
9.11 Работа с u‑boot‑1.1.1 из DataFlash или RAM 64
10 Linux KERNEL – Ядро OS Linux 66
10.1 Переменные окружения для сборки ядра 66
10.2 Конфигурации ядра 67
10.3 Подготовка к компиляции 67
10.4 Конфигурация 70
10.5 Редактирование исходного текста 71
10.5.1 Подключение конструктивного исполнения контроллера 71
10.5.2 Подключение светодиода 72
10.5.3 Подключение Ethernet контроллера 73
10.5.4 Подключение Dataflash 74
10.6 Компиляция ядра 75
10.7 Конечная сборка ядра и инсталляция 76
10.8 Скрипт для сборки сжатых образов 77
10.9 Результат сборки образов из скрипта 78
11 Linux USB File System – USB Файловая система 79
12 Linux USB File System – MMC Файловая система 80
12.1 Создание файла устройства 80
13 Linux File System – Файловая система 81
13.1 Использование корректно пре-собранной файловой системы. 81
14 MTD Linux File System ‑ Файловая система на DataFlash 82
15 Linux Configuration – Конфигурация Дистрибутива 83
15.1 Установка и настройка платы AT91RM9200_SK 83
16 Linux Tune – Настройка под конечную цель 85
16.1 85