Skip to content

Latest commit

 

History

History
131 lines (115 loc) · 6.26 KB

Bootstrap.wiki

File metadata and controls

131 lines (115 loc) · 6.26 KB

  1. summary Сборка bootstrap для плат на базе at91sam9g45

Table of Contents

Введение

Начальный загрузчик atmel bootstrap позволяет загружать ядро Linux напрямую (в последних версиях появилась поддержка Device tree), а также standalone код (включая u-boot) с различных внешних накопителей - SD, NAND (DataFlash на платах starterkit с процессором at91sam9g45 не используется).

AT91Bootstrap v3.0

Описания для версии 3.5.2, оригинал. Скачиваем оригинал (продублирован на googlecode.com)

Добавляем starterkit-специфичный патч - исправляет геометрию внешней памяти DDR2 и сброс аудиокодека AC97

На данный момент конфигурация SDR не добавлена - bootsrap может быть использован с любым из вариантов плат на базе at91sam9g45.

Конфигурация

В составе boostrap есть предопределенные конфиги, которые находятся в директории

Перед конфигурацией и сборкой нужно указать КК через переменную окружения CROSS_COMPILE, например для [CrosstoolNg] который вы собрали сами

Перед сборкой рекомендуется очистить дерево исходников от результатов предыдущей сборки

  • Для загрузки ядра Linux с SD* напрямую (без u-boot)
После дефолтного конфига конфигурацию можно скорректировать под свои нужды

Например изменить название имиджа ядра и параметры загрузки

  • Для загрузки u-boot из NAND*
Раскладка NAND на платах starterkit незначительно отличается от оригинальной atmel, нужно скорректировать адрес куда записан u-boot и размер раздела (имиджа)

По умолчанию сторожевой таймер отключен, чтобы включить - снимите звёздочку в строке меню

Сборка

Непосредственно сборка выполняется командой make

После сборки бинарниый файл загрузчика находится в директории at91bootstrap-3-3.5.2/binaries и имеет расширение .bin, например bootstrap для загрузки u-boot из NAND - at91sam9m10g45ek-nandflashboot-uboot-3.5.2.bin

Копирование на носитель

  • SD*
Загрузчик должен находиться на первом разделе с файловой системой FAT и иметь название BOOT.BIN (обратите внимание - заглавные буквы). Например для SD, которая на хост-системе определилась как sdb

  • NAND*
Atmel SAM-BA In-system Programmer. Позволяет восстановить загрузчик "с нуля". На сайте atmel для скачивания требуется регистрация, без регистрации :) можно взять локальную копию

Чтобы активировать встроенный загрузчик SAM-BA

 * Отключите БП  
 * Разомкните перемычку NAND_CS
 * Извлеките SD из кардридера платы 
 * Соедините USB-DEVICE порт платы с USB-HOST PC с Linux (хост-система)
 * Убедитесь что процессор перешел в режим загрузки по USB

 * Запустите программатор SAM-BA

 * Выбеите порт и плату
 * Нажмите Connect

http://wiki.starterkit-org.googlecode.com/git/images/samba1.png

 * Замкните перемычку NAND_CS
 * Перейдите на вкладку DDRAM и выполните инициализацию внешней памяти (

http://wiki.starterkit-org.googlecode.com/git/images/samba2.png

 * Перейдите на вкладку NandFlash и выполните инициализацию NAND

http://wiki.starterkit-org.googlecode.com/git/images/samba3.png

 * Выберите бинарный файл загрузчика и нажмите Send File

http://wiki.starterkit-org.googlecode.com/git/images/samba4.png

 * Выйдите из программатора SAM-BA и отключите кабель USB